vendor: 16,723 bytes, lines 1-204
1! function(global, factory) { "use strict"; "object" == typeof module && "object" == typeof module.exports ? module.exports = global.document ? factory(global, !0) : function(w) { if (!w.document) throw new Error("jQuery requires a window with a document"); return factory(w) } : factory(global) }("undefined" != typeof window ? window : this, function(window, noGlobal) { 2 "use strict"; 3 4 function DOMEval(code, doc) { 5 doc = doc || document; 6 var script = doc.createElement("script"); 7 script.text = code, doc.head.appendChild(script).parentNode.removeChild(script) 8 } 9 10 function isArrayLike(obj) { 11 var length = !!obj && "length" in obj && obj.length, 12 type = jQuery.type(obj); 13 return "function" !== type && !jQuery.isWindow(obj) && ("array" === type || 0 === length || "number" == typeof length && length > 0 && length - 1 in obj) 14 } 15 16 function winnow(elements, qualifier, not) { return jQuery.isFunction(qualifier) ? jQuery.grep(elements, function(elem, i) { return !!qualifier.call(elem, i, elem) !== not }) : qualifier.nodeType ? jQuery.grep(elements, function(elem) { return elem === qualifier !== not }) : "string" != typeof qualifier ? jQuery.grep(elements, function(elem) { return indexOf.call(qualifier, elem) > -1 !== not }) : risSimple.test(qualifier) ? jQuery.filter(qualifier, elements, not) : (qualifier = jQuery.filter(qualifier, elements), jQuery.grep(elements, function(elem) { return indexOf.call(qualifier, elem) > -1 !== not && 1 === elem.nodeType })) } 17 18 function sibling(cur, dir) { 19 for (; 20 (cur = cur[dir]) && 1 !== cur.nodeType;); 21 return cur 22 } 23 24 function createOptions(options) { var object = {}; return jQuery.each(options.match(rnothtmlwhite) || [], function(_, flag) { object[flag] = !0 }), object } 25 26 function Identity(v) { return v } 27 28 function Thrower(ex) { throw ex } 29 30 function adoptValue(value, resolve, reject) { var method; try { value && jQuery.isFunction(method = value.promise) ? method.call(value).done(resolve).fail(reject) : value && jQuery.isFunction(method = value.then) ? method.call(value, resolve, reject) : resolve.call(void 0, value) } catch (value) { reject.call(void 0, value) } } 31 32 function completed() { document.removeEventListener("DOMContentLoaded", completed), window.removeEventListener("load", completed), jQuery.ready() } 33 34 function Data() { this.expando = jQuery.expando + Data.uid++ } 35 36 function getData(data) { return "true" === data || "false" !== data && ("null" === data ? null : data === +data + "" ? +data : rbrace.test(data) ? JSON.parse(data) : data) } 37 38 function dataAttr(elem, key, data) { 39 var name; 40 if (void 0 === data && 1 === elem.nodeType) 41 if (name = "data-" + key.replace(rmultiDash, "-$&").toLowerCase(), data = elem.getAttribute(name), "string" == typeof data) { 42 try { data = getData(data) } catch (e) {} 43 dataUser.set(elem, key, data) 44 } else data = void 0; 45 return data 46 } 47 48 function adjustCSS(elem, prop, valueParts, tween) { 49 var adjusted, scale = 1, 50 maxIterations = 20, 51 currentValue = tween ? function() { return tween.cur() } : function() { return jQuery.css(elem, prop, "") }, 52 initial = currentValue(), 53 unit = valueParts && valueParts[3] || (jQuery.cssNumber[prop] ? "" : "px"), 54 initialInUnit = (jQuery.cssNumber[prop] || "px" !== unit && +initial) && rcssNum.exec(jQuery.css(elem, prop)); 55 if (initialInUnit && initialInUnit[3] !== unit) { 56 unit = unit || initialInUnit[3], valueParts = valueParts || [], initialInUnit = +initial || 1; 57 do scale = scale || ".5", initialInUnit /= scale, jQuery.style(elem, prop, initialInUnit + unit); while (scale !== (scale = currentValue() / initial) && 1 !== scale && --maxIterations) 58 } 59 return valueParts && (initialInUnit = +initialInUnit || +initial || 0, adjusted = valueParts[1] ? initialInUnit + (valueParts[1] + 1) * valueParts[2] : +valueParts[2], tween && (tween.unit = unit, tween.start = initialInUnit, tween.end = adjusted)), adjusted 60 } 61 62 function getDefaultDisplay(elem) { 63 var temp, doc = elem.ownerDocument, 64 nodeName = elem.nodeName, 65 display = defaultDisplayMap[nodeName]; 66 return display ? display : (temp = doc.body.appendChild(doc.createElement(nodeName)), display = jQuery.css(temp, "display"), temp.parentNode.removeChild(temp), "none" === display && (display = "block"), defaultDisplayMap[nodeName] = display, display) 67 } 68 69 function showHide(elements, show) { for (var display, elem, values = [], index = 0, length = elements.length; index < length; index++) elem = elements[index], elem.style && (display = elem.style.display, show ? ("none" === display && (values[index] = dataPriv.get(elem, "display") || null, values[index] || (elem.style.display = "")), "" === elem.style.display && isHiddenWithinTree(elem) && (values[index] = getDefaultDisplay(elem))) : "none" !== display && (values[index] = "none", dataPriv.set(elem, "display", display))); for (index = 0; index < length; index++) null != values[index] && (elements[index].style.display = values[index]); return elements } 70 71 function getAll(context, tag) { var ret; return ret = "undefined" != typeof context.getElementsByTagName ? context.getElementsByTagName(tag || "*") : "undefined" != typeof context.querySelectorAll ? context.querySelectorAll(tag || "*") : [], void 0 === tag || tag && jQuery.nodeName(context, tag) ? jQuery.merge([context], ret) : ret } 72 73 function setGlobalEval(elems, refElements) { for (var i = 0, l = elems.length; i < l; i++) dataPriv.set(elems[i], "globalEval", !refElements || dataPriv.get(refElements[i], "globalEval")) } 74 75 function buildFragment(elems, context, scripts, selection, ignored) { 76 for (var elem, tmp, tag, wrap, contains, j, fragment = context.createDocumentFragment(), nodes = [], i = 0, l = elems.length; i < l; i++) 77 if (elem = elems[i], elem || 0 === elem) 78 if ("object" === jQuery.type(elem)) jQuery.merge(nodes, elem.nodeType ? [elem] : elem); 79 else if (rhtml.test(elem)) { 80 for (tmp = tmp || fragment.appendChild(context.createElement("div")), tag = (rtagName.exec(elem) || ["", ""])[1].toLowerCase(), wrap = wrapMap[tag] || wrapMap._default, tmp.innerHTML = wrap[1] + jQuery.htmlPrefilter(elem) + wrap[2], j = wrap[0]; j--;) tmp = tmp.lastChild; 81 jQuery.merge(nodes, tmp.childNodes), tmp = fragment.firstChild, tmp.textContent = "" 82 } else nodes.push(context.createTextNode(elem)); 83 for (fragment.textContent = "", i = 0; elem = nodes[i++];) 84 if (selection && jQuery.inArray(elem, selection) > -1) ignored && ignored.push(elem); 85 else if (contains = jQuery.contains(elem.ownerDocument, elem), tmp = getAll(fragment.appendChild(elem), "script"), contains && setGlobalEval(tmp), scripts) 86 for (j = 0; elem = tmp[j++];) rscriptType.test(elem.type || "") && scripts.push(elem); 87 return fragment 88 } 89 90 function returnTrue() { return !0 } 91 92 function returnFalse() { return !1 } 93 94 function safeActiveElement() { try { return document.activeElement } catch (err) {} } 95 96 function on(elem, types, selector, data, fn, one) { 97 var origFn, type; 98 if ("object" == typeof types) { "string" != typeof selector && (data = data || selector, selector = void 0); for (type in types) on(elem, type, selector, data, types[type], one); return elem } 99 if (null == data && null == fn ? (fn = selector, data = selector = void 0) : null == fn && ("string" == typeof selector ? (fn = data, data = void 0) : (fn = data, data = selector, selector = void 0)), fn === !1) fn = returnFalse; 100 else if (!fn) return elem; 101 return 1 === one && (origFn = fn, fn = function(event) { return jQuery().off(event), origFn.apply(this, arguments) }, fn.guid = origFn.guid || (origFn.guid = jQuery.guid++)), elem.each(function() { jQuery.event.add(this, types, fn, data, selector) }) 102 } 103 104 function manipulationTarget(elem, content) { return jQuery.nodeName(elem, "table") && jQuery.nodeName(11 !== content.nodeType ? content : content.firstChild, "tr") ? elem.getElementsByTagName("tbody")[0] || elem : elem } 105 106 function disableScript(elem) { return elem.type = (null !== elem.getAttribute("type")) + "/" + elem.type, elem } 107 108 function restoreScript(elem) { var match = rscriptTypeMasked.exec(elem.type); return match ? elem.type = match[1] : elem.removeAttribute("type"), elem } 109 110 function cloneCopyEvent(src, dest) { 111 var i, l, type, pdataOld, pdataCur, udataOld, udataCur, events; 112 if (1 === dest.nodeType) { 113 if (dataPriv.hasData(src) && (pdataOld = dataPriv.access(src), pdataCur = dataPriv.set(dest, pdataOld), events = pdataOld.events)) { 114 delete pdataCur.handle, pdataCur.events = {}; 115 for (type in events) 116 for (i = 0, l = events[type].length; i < l; i++) jQuery.event.add(dest, type, events[type][i]) 117 } 118 dataUser.hasData(src) && (udataOld = dataUser.access(src), udataCur = jQuery.extend({}, udataOld), dataUser.set(dest, udataCur)) 119 } 120 } 121 122 function fixInput(src, dest) { var nodeName = dest.nodeName.toLowerCase(); "input" === nodeName && rcheckableType.test(src.type) ? dest.checked = src.checked : "input" !== nodeName && "textarea" !== nodeName || (dest.defaultValue = src.defaultValue) } 123 124 function domManip(collection, args, callback, ignored) { 125 args = concat.apply([], args); 126 var fragment, first, scripts, hasScripts, node, doc, i = 0, 127 l = collection.length, 128 iNoClone = l - 1, 129 value = args[0], 130 isFunction = jQuery.isFunction(value); 131 if (isFunction || l > 1 && "string" == typeof value && !support.checkClone && rchecked.test(value)) return collection.each(function(index) { 132 var self = collection.eq(index); 133 isFunction && (args[0] = value.call(this, index, self.html())), domManip(self, args, callback, ignored) 134 }); 135 if (l && (fragment = buildFragment(args, collection[0].ownerDocument, !1, collection, ignored), first = fragment.firstChild, 1 === fragment.childNodes.length && (fragment = first), first || ignored)) { 136 for (scripts = jQuery.map(getAll(fragment, "script"), disableScript), hasScripts = scripts.length; i < l; i++) node = fragment, i !== iNoClone && (node = jQuery.clone(node, !0, !0), hasScripts && jQuery.merge(scripts, getAll(node, "script"))), callback.call(collection[i], node, i); 137 if (hasScripts) 138 for (doc = scripts[scripts.length - 1].ownerDocument, jQuery.map(scripts, restoreScript), i = 0; i < hasScripts; i++) node = scripts[i], rscriptType.test(node.type || "") && !dataPriv.access(node, "globalEval") && jQuery.contains(doc, node) && (node.src ? jQuery._evalUrl && jQuery._evalUrl(node.src) : DOMEval(node.textContent.replace(rcleanScript, ""), doc)) 139 } 140 return collection 141 } 142 143 function remove(elem, selector, keepData) { for (var node, nodes = selector ? jQuery.filter(selector, elem) : elem, i = 0; null != (node = nodes[i]); i++) keepData || 1 !== node.nodeType || jQuery.cleanData(getAll(node)), node.parentNode && (keepData && jQuery.contains(node.ownerDocument, node) && setGlobalEval(getAll(node, "script")), node.parentNode.removeChild(node)); return elem } 144 145 function curCSS(elem, name, computed) { var width, minWidth, maxWidth, ret, style = elem.style; return computed = computed || getStyles(elem), computed && (ret = computed.getPropertyValue(name) || computed[name], "" !== ret || jQuery.contains(elem.ownerDocument, elem) || (ret = jQuery.style(elem, name)), !support.pixelMarginRight() && rnumnonpx.test(ret) && rmargin.test(name) && (width = style.width, minWidth = style.minWidth, maxWidth = style.maxWidth, style.minWidth = style.maxWidth = style.width = ret, ret = computed.width, style.width = width, style.minWidth = minWidth, style.maxWidth = maxWidth)), void 0 !== ret ? ret + "" : ret } 146 147 function addGetHookIf(conditionFn, hookFn) { return { get: function() { return conditionFn() ? void delete this.get : (this.get = hookFn).apply(this, arguments) } } } 148 149 function vendorPropName(name) { 150 if (name in emptyStyle) return name; 151 for (var capName = name[0].toUpperCase() + name.slice(1), i = cssPrefixes.length; i--;) 152 if (name = cssPrefixes[i] + capName, name in emptyStyle) return name 153 } 154 155 function setPositiveNumber(elem, value, subtract) { var matches = rcssNum.exec(value); return matches ? Math.max(0, matches[2] - (subtract || 0)) + (matches[3] || "px") : value } 156 157 function augmentWidthOrHeight(elem, name, extra, isBorderBox, styles) { var i, val = 0; for (i = extra === (isBorderBox ? "border" : "content") ? 4 : "width" === name ? 1 : 0; i < 4; i += 2) "margin" === extra && (val += jQuery.css(elem, extra + cssExpand[i], !0, styles)), isBorderBox ? ("content" === extra && (val -= jQuery.css(elem, "padding" + cssExpand[i], !0, styles)), "margin" !== extra && (val -= jQuery.css(elem, "border" + cssExpand[i] + "Width", !0, styles))) : (val += jQuery.css(elem, "padding" + cssExpand[i], !0, styles), "padding" !== extra && (val += jQuery.css(elem, "border" + cssExpand[i] + "Width", !0, styles))); return val } 158 159 function getWidthOrHeight(elem, name, extra) { 160 var val, valueIsBorderBox = !0, 161 styles = getStyles(elem), 162 isBorderBox = "border-box" === jQuery.css(elem, "boxSizing", !1, styles); 163 if (elem.getClientRects().length && (val = elem.getBoundingClientRect()[name]), val <= 0 || null == val) { 164 if (val = curCSS(elem, name, styles), (val < 0 || null == val) && (val = elem.style[name]), rnumnonpx.test(val)) return val; 165 valueIsBorderBox = isBorderBox && (support.boxSizingReliable() || val === elem.style[name]), val = parseFloat(val) || 0 166 } 167 return val + augmentWidthOrHeight(elem, name, extra || (isBorderBox ? "border" : "content"), valueIsBorderBox, styles) + "px" 168 } 169 170 function Tween(elem, options, prop, end, easing) { return new Tween.prototype.init(elem, options, prop, end, easing) } 171 172 function raf() { timerId && (window.requestAnimationFrame(raf), jQuery.fx.tick()) } 173 174 function createFxNow() { return window.setTimeout(function() { fxNow = void 0 }), fxNow = jQuery.now() } 175 176 function genFx(type, includeWidth) { 177 var which, i = 0, 178 attrs = { height: type }; 179 for (includeWidth = includeWidth ? 1 : 0; i < 4; i += 2 - includeWidth) which = cssExpand[i], attrs["margin" + which] = attrs["padding" + which] = type; 180 return includeWidth && (attrs.opacity = attrs.width = type), attrs 181 } 182 183 function createTween(value, prop, animation) { 184 for (var tween, collection = (Animation.tweeners[prop] || []).concat(Animation.tweeners["*"]), index = 0, length = collection.length; index < length; index++) 185 if (tween = collection[index].call(animation, prop, value)) return tween 186 } 187 188 function defaultPrefilter(elem, props, opts) { 189 var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display, isBox = "width" in props || "height" in props, 190 anim = this, 191 orig = {}, 192 style = elem.style, 193 hidden = elem.nodeType && isHiddenWithinTree(elem), 194 dataShow = dataPriv.get(elem, "fxshow"); 195 opts.queue || (hooks = jQuery._queueHooks(elem, "fx"), null == hooks.unqueued && (hooks.unqueued = 0, oldfire = hooks.empty.fire, hooks.empty.fire = function() { hooks.unqueued || oldfire() }), hooks.unqueued++, anim.always(function() { anim.always(function() { hooks.unqueued--, jQuery.queue(elem, "fx").length || hooks.empty.fire() }) })); 196 for (prop in props) 197 if (value = props[prop], rfxtypes.test(value)) { 198 if (delete props[prop], toggle = toggle || "toggle" === value, value === (hidden ? "hide" : "show")) { 199 if ("show" !== value || !dataShow || void 0 === dataShow[prop]) continue; 200 hidden = !0 201 } 202 orig[prop] = dataShow && dataShow[prop] || jQuery.style(elem, prop) 203 } 204 if (propTween = !jQuery.isEmptyObject(props), propTween || !jQuery.isEmptyObject(orig)) { isBox && 1 === elem.nodeType && (opts.overflow = [style.overflow, style.overflowX, style.overflowY], restoreDisplay = dataShow && dataShow.display, null == restoreDisplay && (restoreDisplay = dataPriv.get(elem, "dis
204play")), display = jQuery.css(elem, "display"), "none" === display && (restoreDisplay ? display = restoreDisplay : (showHide([elem], !0), restoreDisplay = elem.style.display || restoreDisplay, display = jQuery.css(elem, "display"), showHide([elem]))), ("inline" === display || "inline-block" === display && null != restoreDisplay) && "none" === jQuery.css(elem, "float") && (propTween || (anim.done(function() { style.display = restoreDisplay }), null == restoreDisplay && (display = style.display, restoreDisplay = "none" === display ? "" : display)), style.display = "inline-block")), opts.overflow && (style.overflow = "hidden", anim.always(function() { style.overflow = opts.overflow[0], style.overflowX = opts.overflow[1], style.overflowY = opts.overflow[2] })), propTween = !1; for (prop in orig) propTween || (dataShow ? "hidden" in dataShow && (hidden = dataShow.hidden) : dataShow = dataPriv.access(elem, "fxshow", { display: restoreDisplay }), toggle && (dataShow.hidden = !hidden), hidden && showHide([elem], !0), anim.done(function() { hidden || showHide([elem]), dataPriv.remove(elem, "fxshow"); for (prop in orig) jQuery.style(elem, prop, orig[prop]) })), propTween = createTween(hidden ? dataShow[prop] : 0, prop, anim), prop in dataShow || (dataShow[prop] = propTween.start, hidden && (propTween.end = propTween.start, propTween.start = 0)) } 205 } 206 207 function propFilter(props, specialEasing) { 208 var index, name, easing, value, hooks; 209 for (index in props) 210 if (name = jQuery.camelCase(index), easing = specialEasing[n
vendor: 9,068 bytes, lines 210-335
210ame], value = props[index], jQuery.isArray(value) && (easing = value[1], value = props[index] = value[0]), index !== name && (props[name] = value, delete props[index]), hooks = jQuery.cssHooks[name], hooks && "expand" in hooks) { value = hooks.expand(value), delete props[name]; for (index in value) index in props || (props[index] = value[index], specialEasing[index] = easing) } else specialEasing[name] = easing 211 } 212 213 function Animation(elem, properties, options) { 214 var result, stopped, index = 0, 215 length = Animation.prefilters.length, 216 deferred = jQuery.Deferred().always(function() { delete tick.elem }), 217 tick = function() { if (stopped) return !1; for (var currentTime = fxNow || createFxNow(), remaining = Math.max(0, animation.startTime + animation.duration - currentTime), temp = remaining / animation.duration || 0, percent = 1 - temp, index = 0, length = animation.tweens.length; index < length; index++) animation.tweens[index].run(percent); return deferred.notifyWith(elem, [animation, percent, remaining]), percent < 1 && length ? remaining : (deferred.resolveWith(elem, [animation]), !1) }, 218 animation = deferred.promise({ 219 elem: elem, 220 props: jQuery.extend({}, properties), 221 opts: jQuery.extend(!0, { specialEasing: {}, easing: jQuery.easing._default }, options), 222 originalProperties: properties, 223 originalOptions: options, 224 startTime: fxNow || createFxNow(), 225 duration: options.duration, 226 tweens: [], 227 createTween: function(prop, end) { var tween = jQuery.Tween(elem, animation.opts, prop, end, animation.opts.specialEasing[prop] || animation.opts.easing); return animation.tweens.push(tween), tween }, 228 stop: function(gotoEnd) { 229 var index = 0, 230 length = gotoEnd ? animation.tweens.length : 0; 231 if (stopped) return this; 232 for (stopped = !0; index < length; index++) animation.tweens[index].run(1); 233 return gotoEnd ? (deferred.notifyWith(elem, [animation, 1, 0]), deferred.resolveWith(elem, [animation, gotoEnd])) : deferred.rejectWith(elem, [animation, gotoEnd]), this 234 } 235 }), 236 props = animation.props; 237 for (propFilter(props, animation.opts.specialEasing); index < length; index++) 238 if (result = Animation.prefilters[index].call(animation, elem, props, animation.opts)) return jQuery.isFunction(result.stop) && (jQuery._queueHooks(animation.elem, animation.opts.queue).stop = jQuery.proxy(result.stop, result)), result; 239 return jQuery.map(props, createTween, animation), jQuery.isFunction(animation.opts.start) && animation.opts.start.call(elem, animation), jQuery.fx.timer(jQuery.extend(tick, { elem: elem, anim: animation, queue: animation.opts.queue })), animation.progress(animation.opts.progress).done(animation.opts.done, animation.opts.complete).fail(animation.opts.fail).always(animation.opts.always) 240 } 241 242 function stripAndCollapse(value) { var tokens = value.match(rnothtmlwhite) || []; return tokens.join(" ") } 243 244 function getClass(elem) { return elem.getAttribute && elem.getAttribute("class") || "" } 245 246 function buildParams(prefix, obj, traditional, add) { 247 var name; 248 if (jQuery.isArray(obj)) jQuery.each(obj, function(i, v) { traditional || rbracket.test(prefix) ? add(prefix, v) : buildParams(prefix + "[" + ("object" == typeof v && null != v ? i : "") + "]", v, traditional, add) }); 249 else if (traditional || "object" !== jQuery.type(obj)) add(prefix, obj); 250 else 251 for (name in obj) buildParams(prefix + "[" + name + "]", obj[name], traditional, add) 252 } 253 254 function addToPrefiltersOrTransports(structure) { 255 return function(dataTypeExpression, func) { 256 "string" != typeof dataTypeExpression && (func = dataTypeExpression, dataTypeExpression = "*"); 257 var dataType, i = 0, 258 dataTypes = dataTypeExpression.toLowerCase().match(rnothtmlwhite) || []; 259 if (jQuery.isFunction(func)) 260 for (; dataType = dataTypes[i++];) "+" === dataType[0] ? (dataType = dataType.slice(1) || "*", (structure[dataType] = structure[dataType] || []).unshift(func)) : (structure[dataType] = structure[dataType] || []).push(func) 261 } 262 } 263 264 function inspectPrefiltersOrTransports(structure, options, originalOptions, jqXHR) { 265 function inspect(dataType) { var selected; return inspected[dataType] = !0, jQuery.each(structure[dataType] || [], function(_, prefilterOrFactory) { var dataTypeOrTransport = prefilterOrFactory(options, originalOptions, jqXHR); return "string" != typeof dataTypeOrTransport || seekingTransport || inspected[dataTypeOrTransport] ? seekingTransport ? !(selected = dataTypeOrTransport) : void 0 : (options.dataTypes.unshift(dataTypeOrTransport), inspect(dataTypeOrTransport), !1) }), selected } 266 var inspected = {}, 267 seekingTransport = structure === transports; 268 return inspect(options.dataTypes[0]) || !inspected["*"] && inspect("*") 269 } 270 271 function ajaxExtend(target, src) { var key, deep, flatOptions = jQuery.ajaxSettings.flatOptions || {}; for (key in src) void 0 !== src[key] && ((flatOptions[key] ? target : deep || (deep = {}))[key] = src[key]); return deep && jQuery.extend(!0, target, deep), target } 272 273 function ajaxHandleResponses(s, jqXHR, responses) { 274 for (var ct, type, finalDataType, firstDataType, contents = s.contents, dataTypes = s.dataTypes; 275 "*" === dataTypes[0];) dataTypes.shift(), void 0 === ct && (ct = s.mimeType || jqXHR.getResponseHeader("Content-Type")); 276 if (ct) 277 for (type in contents) 278 if (contents[type] && contents[type].test(ct)) { dataTypes.unshift(type); break } 279 if (dataTypes[0] in responses) finalDataType = dataTypes[0]; 280 else { 281 for (type in responses) { 282 if (!dataTypes[0] || s.converters[type + " " + dataTypes[0]]) { finalDataType = type; break } 283 firstDataType || (firstDataType = type) 284 } 285 finalDataType = finalDataType || firstDataType 286 } 287 if (finalDataType) return finalDataType !== dataTypes[0] && dataTypes.unshift(finalDataType), responses[finalDataType] 288 } 289 290 function ajaxConvert(s, response, jqXHR, isSuccess) { 291 var conv2, current, conv, tmp, prev, converters = {}, 292 dataTypes = s.dataTypes.slice(); 293 if (dataTypes[1]) 294 for (conv in s.converters) converters[conv.toLowerCase()] = s.converters[conv]; 295 for (current = dataTypes.shift(); current;) 296 if (s.responseFields[current] && (jqXHR[s.responseFields[current]] = response), !prev && isSuccess && s.dataFilter && (response = s.dataFilter(response, s.dataType)), prev = current, current = dataTypes.shift()) 297 if ("*" === current) current = prev; 298 else if ("*" !== prev && prev !== current) { 299 if (conv = converters[prev + " " + current] || converters["* " + current], !conv) 300 for (conv2 in converters) 301 if (tmp = conv2.split(" "), tmp[1] === current && (conv = converters[prev + " " + tmp[0]] || converters["* " + tmp[0]])) { conv === !0 ? conv = converters[conv2] : converters[conv2] !== !0 && (current = tmp[0], dataTypes.unshift(tmp[1])); break } 302 if (conv !== !0) 303 if (conv && s.throws) response = conv(response); 304 else try { response = conv(response) } catch (e) { return { state: "parsererror", error: conv ? e : "No conversion from " + prev + " to " + current } } 305 } 306 return { state: "success", data: response } 307 } 308 309 function getWindow(elem) { return jQuery.isWindow(elem) ? elem : 9 === elem.nodeType && elem.defaultView } 310 var arr = [], 311 document = window.document, 312 getProto = Object.getPrototypeOf, 313 slice = arr.slice, 314 concat = arr.concat, 315 push = arr.push, 316 indexOf = arr.indexOf, 317 class2type = {}, 318 toString = class2type.toString, 319 hasOwn = class2type.hasOwnProperty, 320 fnToString = hasOwn.toString, 321 ObjectFunctionString = fnToString.call(Object), 322 support = {}, 323 version = "3.1.1", 324 jQuery = function(selector, context) { return new jQuery.fn.init(selector, context) }, 325 rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, 326 rmsPrefix = /^-ms-/, 327 rdashAlpha = /-([a-z])/g, 328 fcamelCase = function(all, letter) { return letter.toUpperCase() }; 329 jQuery.fn = jQuery.prototype = { 330 jquery: version, 331 constructor: jQuery, 332 length: 0, 333 toArray: function() { return slice.call(this) }, 334 get: function(num) { return null == num ? slice.call(this) : num < 0 ? this[num + this.length] : this[num] }, 335 pushStack: function(elems) { var ret = jQuery.merge(this.constructor(), elems);
vendor: 4,274 bytes, lines 335-386
335 return ret.prevObject = this, ret }, 336 each: function(callback) { return jQuery.each(this, callback) }, 337 map: function(callback) { return this.pushStack(jQuery.map(this, function(elem, i) { return callback.call(elem, i, elem) })) }, 338 slice: function() { return this.pushStack(slice.apply(this, arguments)) }, 339 first: function() { return this.eq(0) }, 340 last: function() { return this.eq(-1) }, 341 eq: function(i) { 342 var len = this.length, 343 j = +i + (i < 0 ? len : 0); 344 return this.pushStack(j >= 0 && j < len ? [this[j]] : []) 345 }, 346 end: function() { return this.prevObject || this.constructor() }, 347 push: push, 348 sort: arr.sort, 349 splice: arr.splice 350 }, jQuery.extend = jQuery.fn.extend = function() { 351 var options, name, src, copy, copyIsArray, clone, target = arguments[0] || {}, 352 i = 1, 353 length = arguments.length, 354 deep = !1; 355 for ("boolean" == typeof target && (deep = target, target = arguments[i] || {}, i++), "object" == typeof target || jQuery.isFunction(target) || (target = {}), i === length && (target = this, i--); i < length; i++) 356 if (null != (options = arguments[i])) 357 for (name in options) src = target[name], copy = options[name], target !== copy && (deep && copy && (jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy))) ? (copyIsArray ? (copyIsArray = !1, clone = src && jQuery.isArray(src) ? src : []) : clone = src && jQuery.isPlainObject(src) ? src : {}, target[name] = jQuery.extend(deep, clone, copy)) : void 0 !== copy && (target[name] = copy)); 358 return target 359 }, jQuery.extend({ 360 expando: "jQuery" + (version + Math.random()).replace(/\D/g, ""), 361 isReady: !0, 362 error: function(msg) { throw new Error(msg) }, 363 noop: function() {}, 364 isFunction: function(obj) { return "function" === jQuery.type(obj) }, 365 isArray: Array.isArray, 366 isWindow: function(obj) { return null != obj && obj === obj.window }, 367 isNumeric: function(obj) { var type = jQuery.type(obj); return ("number" === type || "string" === type) && !isNaN(obj - parseFloat(obj)) }, 368 isPlainObject: function(obj) { var proto, Ctor; return !(!obj || "[object Object]" !== toString.call(obj)) && (!(proto = getProto(obj)) || (Ctor = hasOwn.call(proto, "constructor") && proto.constructor, "function" == typeof Ctor && fnToString.call(Ctor) === ObjectFunctionString)) }, 369 isEmptyObject: function(obj) { var name; for (name in obj) return !1; return !0 }, 370 type: function(obj) { return null == obj ? obj + "" : "object" == typeof obj || "function" == typeof obj ? class2type[toString.call(obj)] || "object" : typeof obj }, 371 globalEval: function(code) { DOMEval(code) }, 372 camelCase: function(string) { return string.replace(rmsPrefix, "ms-").replace(rdashAlpha, fcamelCase) }, 373 nodeName: function(elem, name) { return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase() }, 374 each: function(obj, callback) { 375 var length, i = 0; 376 if (isArrayLike(obj)) 377 for (length = obj.length; i < length && callback.call(obj[i], i, obj[i]) !== !1; i++); 378 else 379 for (i in obj) 380 if (callback.call(obj[i], i, obj[i]) === !1) break; return obj 381 }, 382 trim: function(text) { return null == text ? "" : (text + "").replace(rtrim, "") }, 383 makeArray: function(arr, results) { var ret = results || []; return null != arr && (isArrayLike(Object(arr)) ? jQuery.merge(ret, "string" == typeof arr ? [arr] : arr) : push.call(ret, arr)), ret }, 384 inArray: function(elem, arr, i) { return null == arr ? -1 : indexOf.call(arr, elem, i) }, 385 merge: function(first, second) { for (var len = +second.length, j = 0, i = first.length; j < len; j++) first[i++] = second[j]; return first.length = i, first }, 386 grep: function(elems, callback, invert) { for (var callbackInverse, matches = [], i = 0, length = elems.length, callbackExpect = !invert; i < length; i++) callbackInverse = !callback(elems[i], i), callbackInverse !== callbackExpect && matches.push(elems[i]); return matches },
vendor: 14,344 bytes, lines 387-564
387 map: function(elems, callback, arg) { 388 var length, value, i = 0, 389 ret = []; 390 if (isArrayLike(elems)) 391 for (length = elems.length; i < length; i++) value = callback(elems[i], i, arg), null != value && ret.push(value); 392 else 393 for (i in elems) value = callback(elems[i], i, arg), null != value && ret.push(value); 394 return concat.apply([], ret) 395 }, 396 guid: 1, 397 proxy: function(fn, context) { var tmp, args, proxy; if ("string" == typeof context && (tmp = fn[context], context = fn, fn = tmp), jQuery.isFunction(fn)) return args = slice.call(arguments, 2), proxy = function() { return fn.apply(context || this, args.concat(slice.call(arguments))) }, proxy.guid = fn.guid = fn.guid || jQuery.guid++, proxy }, 398 now: Date.now, 399 support: support 400 }), "function" == typeof Symbol && (jQuery.fn[Symbol.iterator] = arr[Symbol.iterator]), jQuery.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function(i, name) { class2type["[object " + name + "]"] = name.toLowerCase() }); 401 var Sizzle = function(window) { 402 function Sizzle(selector, context, results, seed) { 403 var m, i, elem, nid, match, groups, newSelector, newContext = context && context.ownerDocument, 404 nodeType = context ? context.nodeType : 9; 405 if (results = results || [], "string" != typeof selector || !selector || 1 !== nodeType && 9 !== nodeType && 11 !== nodeType) return results; 406 if (!seed && ((context ? context.ownerDocument || context : preferredDoc) !== document && setDocument(context), context = context || document, documentIsHTML)) { 407 if (11 !== nodeType && (match = rquickExpr.exec(selector))) 408 if (m = match[1]) { if (9 === nodeType) { if (!(elem = context.getElementById(m))) return results; if (elem.id === m) return results.push(elem), results } else if (newContext && (elem = newContext.getElementById(m)) && contains(context, elem) && elem.id === m) return results.push(elem), results } else { if (match[2]) return push.apply(results, context.getElementsByTagName(selector)), results; if ((m = match[3]) && support.getElementsByClassName && context.getElementsByClassName) return push.apply(results, context.getElementsByClassName(m)), results } 409 if (support.qsa && !compilerCache[selector + " "] && (!rbuggyQSA || !rbuggyQSA.test(selector))) { 410 if (1 !== nodeType) newContext = context, newSelector = selector; 411 else if ("object" !== context.nodeName.toLowerCase()) { 412 for ((nid = context.getAttribute("id")) ? nid = nid.replace(rcssescape, fcssescape) : context.setAttribute("id", nid = expando), groups = tokenize(selector), i = groups.length; i--;) groups[i] = "#" + nid + " " + toSelector(groups[i]); 413 newSelector = groups.join(","), newContext = rsibling.test(selector) && testContext(context.parentNode) || context 414 } 415 if (newSelector) try { return push.apply(results, newContext.querySelectorAll(newSelector)), results } catch (qsaError) {} finally { nid === expando && context.removeAttribute("id") } 416 } 417 } 418 return select(selector.replace(rtrim, "$1"), context, results, seed) 419 } 420 421 function createCache() { 422 function cache(key, value) { return keys.push(key + " ") > Expr.cacheLength && delete cache[keys.shift()], cache[key + " "] = value } 423 var keys = []; 424 return cache 425 } 426 427 function markFunction(fn) { return fn[expando] = !0, fn } 428 429 function assert(fn) { var el = document.createElement("fieldset"); try { return !!fn(el) } catch (e) { return !1 } finally { el.parentNode && el.parentNode.removeChild(el), el = null } } 430 431 function addHandle(attrs, handler) { for (var arr = attrs.split("|"), i = arr.length; i--;) Expr.attrHandle[arr[i]] = handler } 432 433 function siblingCheck(a, b) { 434 var cur = b && a, 435 diff = cur && 1 === a.nodeType && 1 === b.nodeType && a.sourceIndex - b.sourceIndex; 436 if (diff) return diff; 437 if (cur) 438 for (; cur = cur.nextSibling;) 439 if (cur === b) return -1; 440 return a ? 1 : -1 441 } 442 443 function createInputPseudo(type) { return function(elem) { var name = elem.nodeName.toLowerCase(); return "input" === name && elem.type === type } } 444 445 function createButtonPseudo(type) { return function(elem) { var name = elem.nodeName.toLowerCase(); return ("input" === name || "button" === name) && elem.type === type } } 446 447 function createDisabledPseudo(disabled) { return function(elem) { return "form" in elem ? elem.parentNode && elem.disabled === !1 ? "label" in elem ? "label" in elem.parentNode ? elem.parentNode.disabled === disabled : elem.disabled === disabled : elem.isDisabled === disabled || elem.isDisabled !== !disabled && disabledAncestor(elem) === disabled : elem.disabled === disabled : "label" in elem && elem.disabled === disabled } } 448 449 function createPositionalPseudo(fn) { return markFunction(function(argument) { return argument = +argument, markFunction(function(seed, matches) { for (var j, matchIndexes = fn([], seed.length, argument), i = matchIndexes.length; i--;) seed[j = matchIndexes[i]] && (seed[j] = !(matches[j] = seed[j])) }) }) } 450 451 function testContext(context) { return context && "undefined" != typeof context.getElementsByTagName && context } 452 453 function setFilters() {} 454 455 function toSelector(tokens) { for (var i = 0, len = tokens.length, selector = ""; i < len; i++) selector += tokens[i].value; return selector } 456 457 function addCombinator(matcher, combinator, base) { 458 var dir = combinator.dir, 459 skip = combinator.next, 460 key = skip || dir, 461 checkNonElements = base && "parentNode" === key, 462 doneName = done++; 463 return combinator.first ? function(elem, context, xml) { 464 for (; elem = elem[dir];) 465 if (1 === elem.nodeType || checkNonElements) return matcher(elem, context, xml); 466 return !1 467 } : function(elem, context, xml) { 468 var oldCache, uniqueCache, outerCache, newCache = [dirruns, doneName]; 469 if (xml) { 470 for (; elem = elem[dir];) 471 if ((1 === elem.nodeType || checkNonElements) && matcher(elem, context, xml)) return !0 472 } else 473 for (; elem = elem[dir];) 474 if (1 === elem.nodeType || checkNonElements) 475 if (outerCache = elem[expando] || (elem[expando] = {}), uniqueCache = outerCache[elem.uniqueID] || (outerCache[elem.uniqueID] = {}), skip && skip === elem.nodeName.toLowerCase()) elem = elem[dir] || elem; 476 else { if ((oldCache = uniqueCache[key]) && oldCache[0] === dirruns && oldCache[1] === doneName) return newCache[2] = oldCache[2]; if (uniqueCache[key] = newCache, newCache[2] = matcher(elem, context, xml)) return !0 } return !1 477 } 478 } 479 480 function elementMatcher(matchers) { 481 return matchers.length > 1 ? function(elem, context, xml) { 482 for (var i = matchers.length; i--;) 483 if (!matchers[i](elem, context, xml)) return !1; 484 return !0 485 } : matchers[0] 486 } 487 488 function multipleContexts(selector, contexts, results) { for (var i = 0, len = contexts.length; i < len; i++) Sizzle(selector, contexts[i], results); return results } 489 490 function condense(unmatched, map, filter, context, xml) { for (var elem, newUnmatched = [], i = 0, len = unmatched.length, mapped = null != map; i < len; i++)(elem = unmatched[i]) && (filter && !filter(elem, context, xml) || (newUnmatched.push(elem), mapped && map.push(i))); return newUnmatched } 491 492 function setMatcher(preFilter, selector, matcher, postFilter, postFinder, postSelector) { 493 return postFilter && !postFilter[expando] && (postFilter = setMatcher(postFilter)), postFinder && !postFinder[expando] && (postFinder = setMatcher(postFinder, postSelector)), markFunction(function(seed, results, context, xml) { 494 var temp, i, elem, preMap = [], 495 postMap = [], 496 preexisting = results.length, 497 elems = seed || multipleContexts(selector || "*", context.nodeType ? [context] : context, []), 498 matcherIn = !preFilter || !seed && selector ? elems : condense(elems, preMap, preFilter, context, xml), 499 matcherOut = matcher ? postFinder || (seed ? preFilter : preexisting || postFilter) ? [] : results : matcherIn; 500 if (matcher && matcher(matcherIn, matcherOut, context, xml), postFilter) 501 for (temp = condense(matcherOut, postMap), postFilter(temp, [], context, xml), i = temp.length; i--;)(elem = temp[i]) && (matcherOut[postMap[i]] = !(matcherIn[postMap[i]] = elem)); 502 if (seed) { 503 if (postFinder || preFilter) { 504 if (postFinder) { 505 for (temp = [], i = matcherOut.length; i--;)(elem = matcherOut[i]) && temp.push(matcherIn[i] = elem); 506 postFinder(null, matcherOut = [], temp, xml) 507 } 508 for (i = matcherOut.length; i--;)(elem = matcherOut[i]) && (temp = postFinder ? indexOf(seed, elem) : preMap[i]) > -1 && (seed[temp] = !(results[temp] = elem)) 509 } 510 } else matcherOut = condense(matcherOut === results ? matcherOut.splice(preexisting, matcherOut.length) : matcherOut), postFinder ? postFinder(null, results, matcherOut, xml) : push.apply(results, matcherOut) 511 }) 512 } 513 514 function matcherFromTokens(tokens) { 515 for (var checkContext, matcher, j, len = tokens.length, leadingRelative = Expr.relative[tokens[0].type], implicitRelative = leadingRelative || Expr.relative[" "], i = leadingRelative ? 1 : 0, matchContext = addCombinator(function(elem) { return elem === checkContext }, implicitRelative, !0), matchAnyContext = addCombinator(function(elem) { return indexOf(checkContext, elem) > -1 }, implicitRelative, !0), matchers = [function(elem, context, xml) { var ret = !leadingRelative && (xml || context !== outermostContext) || ((checkContext = context).nodeType ? matchContext(elem, context, xml) : matchAnyContext(elem, context, xml)); return checkContext = null, ret }]; i < len; i++) 516 if (matcher = Expr.relative[tokens[i].type]) matchers = [addCombinator(elementMatcher(matchers), matcher)]; 517 else { 518 if (matcher = Expr.filter[tokens[i].type].apply(null, tokens[i].matches), matcher[expando]) { for (j = ++i; j < len && !Expr.relative[tokens[j].type]; j++); return setMatcher(i > 1 && elementMatcher(matchers), i > 1 && toSelector(tokens.slice(0, i - 1).concat({ value: " " === tokens[i - 2].type ? "*" : "" })).replace(rtrim, "$1"), matcher, i < j && matcherFromTokens(tokens.slice(i, j)), j < len && matcherFromTokens(tokens = tokens.slice(j)), j < len && toSelector(tokens)) } 519 matchers.push(matcher) 520 } 521 return elementMatcher(matchers) 522 } 523 524 function matcherFromGroupMatchers(elementMatchers, setMatchers) { 525 var bySet = setMatchers.length > 0, 526 byElement = elementMatchers.length > 0, 527 superMatcher = function(seed, context, xml, results, outermost) { 528 var elem, j, matcher, matchedCount = 0, 529 i = "0", 530 unmatched = seed && [], 531 setMatched = [], 532 contextBackup = outermostContext, 533 elems = seed || byElement && Expr.find.TAG("*", outermost), 534 dirrunsUnique = dirruns += null == contextBackup ? 1 : Math.random() || .1, 535 len = elems.length; 536 for (outermost && (outermostContext = context === document || context || outermost); i !== len && null != (elem = elems[i]); i++) { 537 if (byElement && elem) { 538 for (j = 0, context || elem.ownerDocument === document || (setDocument(elem), xml = !documentIsHTML); matcher = elementMatchers[j++];) 539 if (matcher(elem, context || document, xml)) { results.push(elem); break } 540 outermost && (dirruns = dirrunsUnique) 541 } 542 bySet && ((elem = !matcher && elem) && matchedCount--, seed && unmatched.push(elem)) 543 } 544 if (matchedCount += i, bySet && i !== matchedCount) { 545 for (j = 0; matcher = setMatchers[j++];) matcher(unmatched, setMatched, context, xml); 546 if (seed) { 547 if (matchedCount > 0) 548 for (; i--;) unmatched[i] || setMatched[i] || (setMatched[i] = pop.call(results)); 549 setMatched = condense(setMatched) 550 } 551 push.apply(results, setMatched), outermost && !seed && setMatched.length > 0 && matchedCount + setMatchers.length > 1 && Sizzle.uniqueSort(results) 552 } 553 return outermost && (dirruns = dirrunsUnique, outermostContext = contextBackup), unmatched 554 }; 555 return bySet ? markFunction(superMatcher) : superMatcher 556 } 557 var i, support, Expr, getText, isXML, tokenize, compile, select, outermostContext, sortInput, hasDuplicate, setDocument, document, docElem, documentIsHTML, rbuggyQSA, rbuggyMatches, matches, contains, expando = "sizzle" + 1 * new Date, 558 preferredDoc = window.document, 559 dirruns = 0, 560 done = 0, 561 classCache = createCache(), 562 tokenCache = createCache(), 563 compilerCache = createCache(), 564 sortOrder = function(a, b) { return a === b && (hasDupl
vendor: 8,846 bytes, lines 564-630
564icate = !0), 0 }, 565 hasOwn = {}.hasOwnProperty, 566 arr = [], 567 pop = arr.pop, 568 push_native = arr.push, 569 push = arr.push, 570 slice = arr.slice, 571 indexOf = function(list, elem) { 572 for (var i = 0, len = list.length; i < len; i++) 573 if (list[i] === elem) return i; 574 return -1 575 }, 576 booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", 577 whitespace = "[\\x20\\t\\r\\n\\f]", 578 identifier = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+", 579 attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + "*([*^$|!~]?=)" + whitespace + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace + "*\\]", 580 pseudos = ":(" + identifier + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|.*)\\)|)", 581 rwhitespace = new RegExp(whitespace + "+", "g"), 582 rtrim = new RegExp("^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g"), 583 rcomma = new RegExp("^" + whitespace + "*," + whitespace + "*"), 584 rcombinators = new RegExp("^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*"), 585 rattributeQuotes = new RegExp("=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g"), 586 rpseudo = new RegExp(pseudos), 587 ridentifier = new RegExp("^" + identifier + "$"), 588 matchExpr = { ID: new RegExp("^#(" + identifier + ")"), CLASS: new RegExp("^\\.(" + identifier + ")"), TAG: new RegExp("^(" + identifier + "|[*])"), ATTR: new RegExp("^" + attributes), PSEUDO: new RegExp("^" + pseudos), CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + "*(\\d+)|))" + whitespace + "*\\)|)", "i"), bool: new RegExp("^(?:" + booleans + ")$", "i"), needsContext: new RegExp("^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i") }, 589 rinputs = /^(?:input|select|textarea|button)$/i, 590 rheader = /^h\d$/i, 591 rnative = /^[^{]+\{\s*\[native \w/, 592 rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, 593 rsibling = /[+~]/, 594 runescape = new RegExp("\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig"), 595 funescape = function(_, escaped, escapedWhitespace) { var high = "0x" + escaped - 65536; return high !== high || escapedWhitespace ? escaped : high < 0 ? String.fromCharCode(high + 65536) : String.fromCharCode(high >> 10 | 55296, 1023 & high | 56320) }, 596 rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, 597 fcssescape = function(ch, asCodePoint) { return asCodePoint ? "\0" === ch ? "�" : ch.slice(0, -1) + "\\" + ch.charCodeAt(ch.length - 1).toString(16) + " " : "\\" + ch }, 598 unloadHandler = function() { setDocument() }, 599 disabledAncestor = addCombinator(function(elem) { return elem.disabled === !0 && ("form" in elem || "label" in elem) }, { dir: "parentNode", next: "legend" }); 600 try { push.apply(arr = slice.call(preferredDoc.childNodes), preferredDoc.childNodes), arr[preferredDoc.childNodes.length].nodeType } catch (e) { 601 push = { 602 apply: arr.length ? function(target, els) { push_native.apply(target, slice.call(els)) } : function(target, els) { 603 for (var j = target.length, i = 0; target[j++] = els[i++];); 604 target.length = j - 1 605 } 606 } 607 } 608 support = Sizzle.support = {}, isXML = Sizzle.isXML = function(elem) { var documentElement = elem && (elem.ownerDocument || elem).documentElement; return !!documentElement && "HTML" !== documentElement.nodeName }, setDocument = Sizzle.setDocument = function(node) { 609 var hasCompare, subWindow, doc = node ? node.ownerDocument || node : preferredDoc; 610 return doc !== document && 9 === doc.nodeType && doc.documentElement ? (document = doc, docElem = document.documentElement, documentIsHTML = !isXML(document), preferredDoc !== document && (subWindow = document.defaultView) && subWindow.top !== subWindow && (subWindow.addEventListener ? subWindow.addEventListener("unload", unloadHandler, !1) : subWindow.attachEvent && subWindow.attachEvent("onunload", unloadHandler)), support.attributes = assert(function(el) { return el.className = "i", !el.getAttribute("className") }), support.getElementsByTagName = assert(function(el) { return el.appendChild(document.createComment("")), !el.getElementsByTagName("*").length }), support.getElementsByClassName = rnative.test(document.getElementsByClassName), support.getById = assert(function(el) { return docElem.appendChild(el).id = expando, !document.getElementsByName || !document.getElementsByName(expando).length }), support.getById ? (Expr.filter.ID = function(id) { var attrId = id.replace(runescape, funescape); return function(elem) { return elem.getAttribute("id") === attrId } }, Expr.find.ID = function(id, context) { if ("undefined" != typeof context.getElementById && documentIsHTML) { var elem = context.getElementById(id); return elem ? [elem] : [] } }) : (Expr.filter.ID = function(id) { var attrId = id.replace(runescape, funescape); return function(elem) { var node = "undefined" != typeof elem.getAttributeNode && elem.getAttributeNode("id"); return node && node.value === attrId } }, Expr.find.ID = function(id, context) { 611 if ("undefined" != typeof context.getElementById && documentIsHTML) { 612 var node, i, elems, elem = context.getElementById(id); 613 if (elem) { 614 if (node = elem.getAttributeNode("id"), node && node.value === id) return [elem]; 615 for (elems = context.getElementsByName(id), i = 0; elem = elems[i++];) 616 if (node = elem.getAttributeNode("id"), node && node.value === id) return [elem] 617 } 618 return [] 619 } 620 }), Expr.find.TAG = support.getElementsByTagName ? function(tag, context) { return "undefined" != typeof context.getElementsByTagName ? context.getElementsByTagName(tag) : support.qsa ? context.querySelectorAll(tag) : void 0 } : function(tag, context) { 621 var elem, tmp = [], 622 i = 0, 623 results = context.getElementsByTagName(tag); 624 if ("*" === tag) { for (; elem = results[i++];) 1 === elem.nodeType && tmp.push(elem); return tmp } 625 return results 626 }, Expr.find.CLASS = support.getElementsByClassName && function(className, context) { if ("undefined" != typeof context.getElementsByClassName && documentIsHTML) return context.getElementsByClassName(className) }, rbuggyMatches = [], rbuggyQSA = [], (support.qsa = rnative.test(document.querySelectorAll)) && (assert(function(el) { docElem.appendChild(el).innerHTML = "<a id='" + expando + "'></a><select id='" + expando + "-\r\\' msallowcapture=''><option selected=''></option></select>", el.querySelectorAll("[msallowcapture^='']").length && rbuggyQSA.push("[*^$]=" + whitespace + "*(?:''|\"\")"), el.querySelectorAll("[selected]").length || rbuggyQSA.push("\\[" + whitespace + "*(?:value|" + booleans + ")"), el.querySelectorAll("[id~=" + expando + "-]").length || rbuggyQSA.push("~="), el.querySelectorAll(":checked").length || rbuggyQSA.push(":checked"), el.querySelectorAll("a#" + expando + "+*").length || rbuggyQSA.push(".#.+[+~]") }), assert(function(el) { 627 el.innerHTML = "<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>"; 628 var input = document.createElement("input"); 629 input.setAttribute("type", "hidden"), el.appendChild(input).setAttribute("name", "D"), el.querySelectorAll("[name=d]").length && rbuggyQSA.push("name" + whitespace + "*[*^$|!~]?="), 2 !== el.querySelectorAll(":enabled").length && rbuggyQSA.push(":enabled", ":disabled"), docElem.appendChild(el).disabled = !0, 2 !== el.querySelectorAll(":disabled").length && rbuggyQSA.push(":enabled", ":disabled"), el.querySelectorAll("*,:x"), rbuggyQSA.push(",.*:") 630 })), (support.matchesSelector = rnative.test(matches = docElem.matches || docElem.webkitMatchesSelector || docElem.mozMatchesSelector || docElem.oMatchesSelector || docElem.msMatchesSelector)) && assert(function(el) { support.disconnectedMatch = matches.call(el, "*"), matches.call(el, "[s!='']:x"), rbuggyMatches.push("!=", pseudos) }
vendor: 20,613 bytes, lines 630-800
630), rbuggyQSA = rbuggyQSA.length && new RegExp(rbuggyQSA.join("|")), rbuggyMatches = rbuggyMatches.length && new RegExp(rbuggyMatches.join("|")), hasCompare = rnative.test(docElem.compareDocumentPosition), contains = hasCompare || rnative.test(docElem.contains) ? function(a, b) { 631 var adown = 9 === a.nodeType ? a.documentElement : a, 632 bup = b && b.parentNode; 633 return a === bup || !(!bup || 1 !== bup.nodeType || !(adown.contains ? adown.contains(bup) : a.compareDocumentPosition && 16 & a.compareDocumentPosition(bup))) 634 } : function(a, b) { 635 if (b) 636 for (; b = b.parentNode;) 637 if (b === a) return !0; 638 return !1 639 }, sortOrder = hasCompare ? function(a, b) { if (a === b) return hasDuplicate = !0, 0; var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; return compare ? compare : (compare = (a.ownerDocument || a) === (b.ownerDocument || b) ? a.compareDocumentPosition(b) : 1, 1 & compare || !support.sortDetached && b.compareDocumentPosition(a) === compare ? a === document || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ? -1 : b === document || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ? 1 : sortInput ? indexOf(sortInput, a) - indexOf(sortInput, b) : 0 : 4 & compare ? -1 : 1) } : function(a, b) { 640 if (a === b) return hasDuplicate = !0, 0; 641 var cur, i = 0, 642 aup = a.parentNode, 643 bup = b.parentNode, 644 ap = [a], 645 bp = [b]; 646 if (!aup || !bup) return a === document ? -1 : b === document ? 1 : aup ? -1 : bup ? 1 : sortInput ? indexOf(sortInput, a) - indexOf(sortInput, b) : 0; 647 if (aup === bup) return siblingCheck(a, b); 648 for (cur = a; cur = cur.parentNode;) ap.unshift(cur); 649 for (cur = b; cur = cur.parentNode;) bp.unshift(cur); 650 for (; ap[i] === bp[i];) i++; 651 return i ? siblingCheck(ap[i], bp[i]) : ap[i] === preferredDoc ? -1 : bp[i] === preferredDoc ? 1 : 0 652 }, document) : document 653 }, Sizzle.matches = function(expr, elements) { return Sizzle(expr, null, null, elements) }, Sizzle.matchesSelector = function(elem, expr) { 654 if ((elem.ownerDocument || elem) !== document && setDocument(elem), expr = expr.replace(rattributeQuotes, "='$1']"), support.matchesSelector && documentIsHTML && !compilerCache[expr + " "] && (!rbuggyMatches || !rbuggyMatches.test(expr)) && (!rbuggyQSA || !rbuggyQSA.test(expr))) try { var ret = matches.call(elem, expr); if (ret || support.disconnectedMatch || elem.document && 11 !== elem.document.nodeType) return ret } catch (e) {} 655 return Sizzle(expr, document, null, [elem]).length > 0 656 }, Sizzle.contains = function(context, elem) { return (context.ownerDocument || context) !== document && setDocument(context), contains(context, elem) }, Sizzle.attr = function(elem, name) { 657 (elem.ownerDocument || elem) !== document && setDocument(elem); 658 var fn = Expr.attrHandle[name.toLowerCase()], 659 val = fn && hasOwn.call(Expr.attrHandle, name.toLowerCase()) ? fn(elem, name, !documentIsHTML) : void 0; 660 return void 0 !== val ? val : support.attributes || !documentIsHTML ? elem.getAttribute(name) : (val = elem.getAttributeNode(name)) && val.specified ? val.value : null 661 }, Sizzle.escape = function(sel) { return (sel + "").replace(rcssescape, fcssescape) }, Sizzle.error = function(msg) { throw new Error("Syntax error, unrecognized expression: " + msg) }, Sizzle.uniqueSort = function(results) { 662 var elem, duplicates = [], 663 j = 0, 664 i = 0; 665 if (hasDuplicate = !support.detectDuplicates, sortInput = !support.sortStable && results.slice(0), results.sort(sortOrder), hasDuplicate) { for (; elem = results[i++];) elem === results[i] && (j = duplicates.push(i)); for (; j--;) results.splice(duplicates[j], 1) } 666 return sortInput = null, results 667 }, getText = Sizzle.getText = function(elem) { 668 var node, ret = "", 669 i = 0, 670 nodeType = elem.nodeType; 671 if (nodeType) { if (1 === nodeType || 9 === nodeType || 11 === nodeType) { if ("string" == typeof elem.textContent) return elem.textContent; for (elem = elem.firstChild; elem; elem = elem.nextSibling) ret += getText(elem) } else if (3 === nodeType || 4 === nodeType) return elem.nodeValue } else 672 for (; node = elem[i++];) ret += getText(node); 673 return ret 674 }, Expr = Sizzle.selectors = { 675 cacheLength: 50, 676 createPseudo: markFunction, 677 match: matchExpr, 678 attrHandle: {}, 679 find: {}, 680 relative: { ">": { dir: "parentNode", first: !0 }, " ": { dir: "parentNode" }, "+": { dir: "previousSibling", first: !0 }, "~": { dir: "previousSibling" } }, 681 preFilter: { ATTR: function(match) { return match[1] = match[1].replace(runescape, funescape), match[3] = (match[3] || match[4] || match[5] || "").replace(runescape, funescape), "~=" === match[2] && (match[3] = " " + match[3] + " "), match.slice(0, 4) }, CHILD: function(match) { return match[1] = match[1].toLowerCase(), "nth" === match[1].slice(0, 3) ? (match[3] || Sizzle.error(match[0]), match[4] = +(match[4] ? match[5] + (match[6] || 1) : 2 * ("even" === match[3] || "odd" === match[3])), match[5] = +(match[7] + match[8] || "odd" === match[3])) : match[3] && Sizzle.error(match[0]), match }, PSEUDO: function(match) { var excess, unquoted = !match[6] && match[2]; return matchExpr.CHILD.test(match[0]) ? null : (match[3] ? match[2] = match[4] || match[5] || "" : unquoted && rpseudo.test(unquoted) && (excess = tokenize(unquoted, !0)) && (excess = unquoted.indexOf(")", unquoted.length - excess) - unquoted.length) && (match[0] = match[0].slice(0, excess), match[2] = unquoted.slice(0, excess)), match.slice(0, 3)) } }, 682 filter: { 683 TAG: function(nodeNameSelector) { var nodeName = nodeNameSelector.replace(runescape, funescape).toLowerCase(); return "*" === nodeNameSelector ? function() { return !0 } : function(elem) { return elem.nodeName && elem.nodeName.toLowerCase() === nodeName } }, 684 CLASS: function(className) { var pattern = classCache[className + " "]; return pattern || (pattern = new RegExp("(^|" + whitespace + ")" + className + "(" + whitespace + "|$)")) && classCache(className, function(elem) { return pattern.test("string" == typeof elem.className && elem.className || "undefined" != typeof elem.getAttribute && elem.getAttribute("class") || "") }) }, 685 ATTR: function(name, operator, check) { return function(elem) { var result = Sizzle.attr(elem, name); return null == result ? "!=" === operator : !operator || (result += "", "=" === operator ? result === check : "!=" === operator ? result !== check : "^=" === operator ? check && 0 === result.indexOf(check) : "*=" === operator ? check && result.indexOf(check) > -1 : "$=" === operator ? check && result.slice(-check.length) === check : "~=" === operator ? (" " + result.replace(rwhitespace, " ") + " ").indexOf(check) > -1 : "|=" === operator && (result === check || result.slice(0, check.length + 1) === check + "-")) } }, 686 CHILD: function(type, what, argument, first, last) { 687 var simple = "nth" !== type.slice(0, 3), 688 forward = "last" !== type.slice(-4), 689 ofType = "of-type" === what; 690 return 1 === first && 0 === last ? function(elem) { return !!elem.parentNode } : function(elem, context, xml) { 691 var cache, uniqueCache, outerCache, node, nodeIndex, start, dir = simple !== forward ? "nextSibling" : "previousSibling", 692 parent = elem.parentNode, 693 name = ofType && elem.nodeName.toLowerCase(), 694 useCache = !xml && !ofType, 695 diff = !1; 696 if (parent) { 697 if (simple) { 698 for (; dir;) { 699 for (node = elem; node = node[dir];) 700 if (ofType ? node.nodeName.toLowerCase() === name : 1 === node.nodeType) return !1; 701 start = dir = "only" === type && !start && "nextSibling" 702 } 703 return !0 704 } 705 if (start = [forward ? parent.firstChild : parent.lastChild], forward && useCache) { 706 for (node = parent, outerCache = node[expando] || (node[expando] = {}), uniqueCache = outerCache[node.uniqueID] || (outerCache[node.uniqueID] = {}), cache = uniqueCache[type] || [], nodeIndex = cache[0] === dirruns && cache[1], diff = nodeIndex && cache[2], node = nodeIndex && parent.childNodes[nodeIndex]; node = ++nodeIndex && node && node[dir] || (diff = nodeIndex = 0) || start.pop();) 707 if (1 === node.nodeType && ++diff && node === elem) { uniqueCache[type] = [dirruns, nodeIndex, diff]; break } 708 } else if (useCache && (node = elem, outerCache = node[expando] || (node[expando] = {}), uniqueCache = outerCache[node.uniqueID] || (outerCache[node.uniqueID] = {}), cache = uniqueCache[type] || [], nodeIndex = cache[0] === dirruns && cache[1], diff = nodeIndex), diff === !1) 709 for (; 710 (node = ++nodeIndex && node && node[dir] || (diff = nodeIndex = 0) || start.pop()) && ((ofType ? node.nodeName.toLowerCase() !== name : 1 !== node.nodeType) || !++diff || (useCache && (outerCache = node[expando] || (node[expando] = {}), uniqueCache = outerCache[node.uniqueID] || (outerCache[node.uniqueID] = {}), uniqueCache[type] = [dirruns, diff]), node !== elem));); 711 return diff -= last, diff === first || diff % first === 0 && diff / first >= 0 712 } 713 } 714 }, 715 PSEUDO: function(pseudo, argument) { var args, fn = Expr.pseudos[pseudo] || Expr.setFilters[pseudo.toLowerCase()] || Sizzle.error("unsupported pseudo: " + pseudo); return fn[expando] ? fn(argument) : fn.length > 1 ? (args = [pseudo, pseudo, "", argument], Expr.setFilters.hasOwnProperty(pseudo.toLowerCase()) ? markFunction(function(seed, matches) { for (var idx, matched = fn(seed, argument), i = matched.length; i--;) idx = indexOf(seed, matched[i]), seed[idx] = !(matches[idx] = matched[i]) }) : function(elem) { return fn(elem, 0, args) }) : fn } 716 }, 717 pseudos: { 718 not: markFunction(function(selector) { 719 var input = [], 720 results = [], 721 matcher = compile(selector.replace(rtrim, "$1")); 722 return matcher[expando] ? markFunction(function(seed, matches, context, xml) { for (var elem, unmatched = matcher(seed, null, xml, []), i = seed.length; i--;)(elem = unmatched[i]) && (seed[i] = !(matches[i] = elem)) }) : function(elem, context, xml) { return input[0] = elem, matcher(input, null, xml, results), input[0] = null, !results.pop() } 723 }), 724 has: markFunction(function(selector) { return function(elem) { return Sizzle(selector, elem).length > 0 } }), 725 contains: markFunction(function(text) { 726 return text = text.replace(runescape, funescape), 727 function(elem) { return (elem.textContent || elem.innerText || getText(elem)).indexOf(text) > -1 } 728 }), 729 lang: markFunction(function(lang) { 730 return ridentifier.test(lang || "") || Sizzle.error("unsupported lang: " + lang), lang = lang.replace(runescape, funescape).toLowerCase(), 731 function(elem) { 732 var elemLang; 733 do 734 if (elemLang = documentIsHTML ? elem.lang : elem.getAttribute("xml:lang") || elem.getAttribute("lang")) return elemLang = elemLang.toLowerCase(), elemLang === lang || 0 === elemLang.indexOf(lang + "-"); 735 while ((elem = elem.parentNode) && 1 === elem.nodeType); 736 return !1 737 } 738 }), 739 target: function(elem) { var hash = window.location && window.location.hash; return hash && hash.slice(1) === elem.id }, 740 root: function(elem) { return elem === docElem }, 741 focus: function(elem) { return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex) }, 742 enabled: createDisabledPseudo(!1), 743 disabled: createDisabledPseudo(!0), 744 checked: function(elem) { var nodeName = elem.nodeName.toLowerCase(); return "input" === nodeName && !!elem.checked || "option" === nodeName && !!elem.selected }, 745 selected: function(elem) { return elem.parentNode && elem.parentNode.selectedIndex, elem.selected === !0 }, 746 empty: function(elem) { 747 for (elem = elem.firstChild; elem; elem = elem.nextSibling) 748 if (elem.nodeType < 6) return !1; 749 return !0 750 }, 751 parent: function(elem) { return !Expr.pseudos.empty(elem) }, 752 header: function(elem) { return rheader.test(elem.nodeName) }, 753 input: function(elem) { return rinputs.test(elem.nodeName) }, 754 button: function(elem) { var name = elem.nodeName.toLowerCase(); return "input" === name && "button" === elem.type || "button" === name }, 755 text: function(elem) { var attr; return "input" === elem.nodeName.toLowerCase() && "text" === elem.type && (null == (attr = elem.getAttribute("type")) || "text" === attr.toLowerCase()) }, 756 first: createPositionalPseudo(function() { return [0] }), 757 last: createPositionalPseudo(function(matchIndexes, length) { return [length - 1] }), 758 eq: createPositionalPseudo(function(matchIndexes, length, argument) { return [argument < 0 ? argument + length : argument] }), 759 even: createPositionalPseudo(function(matchIndexes, length) { for (var i = 0; i < length; i += 2) matchIndexes.push(i); return matchIndexes }), 760 odd: createPositionalPseudo(function(matchIndexes, length) { for (var i = 1; i < length; i += 2) matchIndexes.push(i); return matchIndexes }), 761 lt: createPositionalPseudo(function(matchIndexes, length, argument) { for (var i = argument < 0 ? argument + length : argument; --i >= 0;) matchIndexes.push(i); return matchIndexes }), 762 gt: createPositionalPseudo(function(matchIndexes, length, argument) { for (var i = argument < 0 ? argument + length : argument; ++i < length;) matchIndexes.push(i); return matchIndexes }) 763 } 764 }, Expr.pseudos.nth = Expr.pseudos.eq; 765 for (i in { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 }) Expr.pseudos[i] = createInputPseudo(i); 766 for (i in { submit: !0, reset: !0 }) Expr.pseudos[i] = createButtonPseudo(i); 767 return setFilters.prototype = Expr.filters = Expr.pseudos, Expr.setFilters = new setFilters, tokenize = Sizzle.tokenize = function(selector, parseOnly) { var matched, match, tokens, type, soFar, groups, preFilters, cached = tokenCache[selector + " "]; if (cached) return parseOnly ? 0 : cached.slice(0); for (soFar = selector, groups = [], preFilters = Expr.preFilter; soFar;) { matched && !(match = rcomma.exec(soFar)) || (match && (soFar = soFar.slice(match[0].length) || soFar), groups.push(tokens = [])), matched = !1, (match = rcombinators.exec(soFar)) && (matched = match.shift(), tokens.push({ value: matched, type: match[0].replace(rtrim, " ") }), soFar = soFar.slice(matched.length)); for (type in Expr.filter) !(match = matchExpr[type].exec(soFar)) || preFilters[type] && !(match = preFilters[type](match)) || (matched = match.shift(), tokens.push({ value: matched, type: type, matches: match }), soFar = soFar.slice(matched.length)); if (!matched) break } return parseOnly ? soFar.length : soFar ? Sizzle.error(selector) : tokenCache(selector, groups).slice(0) }, compile = Sizzle.compile = function(selector, match) { 768 var i, setMatchers = [], 769 elementMatchers = [], 770 cached = compilerCache[selector + " "]; 771 if (!cached) { 772 for (match || (match = tokenize(selector)), i = match.length; i--;) cached = matcherFromTokens(match[i]), cached[expando] ? setMatchers.push(cached) : elementMatchers.push(cached); 773 cached = compilerCache(selector, matcherFromGroupMatchers(elementMatchers, setMatchers)), cached.selector = selector 774 } 775 return cached 776 }, select = Sizzle.select = function(selector, context, results, seed) { 777 var i, tokens, token, type, find, compiled = "function" == typeof selector && selector, 778 match = !seed && tokenize(selector = compiled.selector || selector); 779 if (results = results || [], 1 === match.length) { 780 if (tokens = match[0] = match[0].slice(0), tokens.length > 2 && "ID" === (token = tokens[0]).type && 9 === context.nodeType && documentIsHTML && Expr.relative[tokens[1].type]) { 781 if (context = (Expr.find.ID(token.matches[0].replace(runescape, funescape), context) || [])[0], !context) return results; 782 compiled && (context = context.parentNode), selector = selector.slice(tokens.shift().value.length) 783 } 784 for (i = matchExpr.needsContext.test(selector) ? 0 : tokens.length; i-- && (token = tokens[i], !Expr.relative[type = token.type]);) 785 if ((find = Expr.find[type]) && (seed = find(token.matches[0].replace(runescape, funescape), rsibling.test(tokens[0].type) && testContext(context.parentNode) || context))) { if (tokens.splice(i, 1), selector = seed.length && toSelector(tokens), !selector) return push.apply(results, seed), results; break } 786 } 787 return (compiled || compile(selector, match))(seed, context, !documentIsHTML, results, !context || rsibling.test(selector) && testContext(context.parentNode) || context), results 788 }, support.sortStable = expando.split("").sort(sortOrder).join("") === expando, support.detectDuplicates = !!hasDuplicate, setDocument(), support.sortDetached = assert(function(el) { return 1 & el.compareDocumentPosition(document.createElement("fieldset")) }), assert(function(el) { return el.innerHTML = "<a href='#'></a>", "#" === el.firstChild.getAttribute("href") }) || addHandle("type|href|height|width", function(elem, name, isXML) { if (!isXML) return elem.getAttribute(name, "type" === name.toLowerCase() ? 1 : 2) }), support.attributes && assert(function(el) { return el.innerHTML = "<input/>", el.firstChild.setAttribute("value", ""), "" === el.firstChild.getAttribute("value") }) || addHandle("value", function(elem, name, isXML) { if (!isXML && "input" === elem.nodeName.toLowerCase()) return elem.defaultValue }), assert(function(el) { return null == el.getAttribute("disabled") }) || addHandle(booleans, function(elem, name, isXML) { var val; if (!isXML) return elem[name] === !0 ? name.toLowerCase() : (val = elem.getAttributeNode(name)) && val.specified ? val.value : null }), Sizzle 789 }(window); 790 jQuery.find = Sizzle, jQuery.expr = Sizzle.selectors, jQuery.expr[":"] = jQuery.expr.pseudos, jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort, jQuery.text = Sizzle.getText, jQuery.isXMLDoc = Sizzle.isXML, jQuery.contains = Sizzle.contains, jQuery.escapeSelector = Sizzle.escape; 791 var dir = function(elem, dir, until) { 792 for (var matched = [], truncate = void 0 !== until; 793 (elem = elem[dir]) && 9 !== elem.nodeType;) 794 if (1 === elem.nodeType) { 795 if (truncate && jQuery(elem).is(until)) break; 796 matched.push(elem) 797 } 798 return matched 799 }, 800 siblings = function(n, elem) { for (var matched = []; n; n = n.nextSibling) 1 === n.nodeType && n !== elem && matched.push(n); return matched },
vendor: 20,435 bytes, lines 801-1025
801 rneedsContext = jQuery.expr.match.needsContext, 802 rsingleTag = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i, 803 risSimple = /^.[^:#\[\.,]*$/; 804 jQuery.filter = function(expr, elems, not) { var elem = elems[0]; return not && (expr = ":not(" + expr + ")"), 1 === elems.length && 1 === elem.nodeType ? jQuery.find.matchesSelector(elem, expr) ? [elem] : [] : jQuery.find.matches(expr, jQuery.grep(elems, function(elem) { return 1 === elem.nodeType })) }, jQuery.fn.extend({ 805 find: function(selector) { 806 var i, ret, len = this.length, 807 self = this; 808 if ("string" != typeof selector) return this.pushStack(jQuery(selector).filter(function() { 809 for (i = 0; i < len; i++) 810 if (jQuery.contains(self[i], this)) return !0 811 })); 812 for (ret = this.pushStack([]), i = 0; i < len; i++) jQuery.find(selector, self[i], ret); 813 return len > 1 ? jQuery.uniqueSort(ret) : ret 814 }, 815 filter: function(selector) { return this.pushStack(winnow(this, selector || [], !1)) }, 816 not: function(selector) { return this.pushStack(winnow(this, selector || [], !0)) }, 817 is: function(selector) { return !!winnow(this, "string" == typeof selector && rneedsContext.test(selector) ? jQuery(selector) : selector || [], !1).length } 818 }); 819 var rootjQuery, rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/, 820 init = jQuery.fn.init = function(selector, context, root) { 821 var match, elem; 822 if (!selector) return this; 823 if (root = root || rootjQuery, "string" == typeof selector) { 824 if (match = "<" === selector[0] && ">" === selector[selector.length - 1] && selector.length >= 3 ? [null, selector, null] : rquickExpr.exec(selector), !match || !match[1] && context) return !context || context.jquery ? (context || root).find(selector) : this.constructor(context).find(selector); 825 if (match[1]) { 826 if (context = context instanceof jQuery ? context[0] : context, jQuery.merge(this, jQuery.parseHTML(match[1], context && context.nodeType ? context.ownerDocument || context : document, !0)), rsingleTag.test(match[1]) && jQuery.isPlainObject(context)) 827 for (match in context) jQuery.isFunction(this[match]) ? this[match](context[match]) : this.attr(match, context[match]); 828 return this 829 } 830 return elem = document.getElementById(match[2]), elem && (this[0] = elem, this.length = 1), this 831 } 832 return selector.nodeType ? (this[0] = selector, this.length = 1, this) : jQuery.isFunction(selector) ? void 0 !== root.ready ? root.ready(selector) : selector(jQuery) : jQuery.makeArray(selector, this) 833 }; 834 init.prototype = jQuery.fn, rootjQuery = jQuery(document); 835 var rparentsprev = /^(?:parents|prev(?:Until|All))/, 836 guaranteedUnique = { children: !0, contents: !0, next: !0, prev: !0 }; 837 jQuery.fn.extend({ 838 has: function(target) { 839 var targets = jQuery(target, this), 840 l = targets.length; 841 return this.filter(function() { 842 for (var i = 0; i < l; i++) 843 if (jQuery.contains(this, targets[i])) return !0 844 }) 845 }, 846 closest: function(selectors, context) { 847 var cur, i = 0, 848 l = this.length, 849 matched = [], 850 targets = "string" != typeof selectors && jQuery(selectors); 851 if (!rneedsContext.test(selectors)) 852 for (; i < l; i++) 853 for (cur = this[i]; cur && cur !== context; cur = cur.parentNode) 854 if (cur.nodeType < 11 && (targets ? targets.index(cur) > -1 : 1 === cur.nodeType && jQuery.find.matchesSelector(cur, selectors))) { matched.push(cur); break } 855 return this.pushStack(matched.length > 1 ? jQuery.uniqueSort(matched) : matched) 856 }, 857 index: function(elem) { return elem ? "string" == typeof elem ? indexOf.call(jQuery(elem), this[0]) : indexOf.call(this, elem.jquery ? elem[0] : elem) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1 }, 858 add: function(selector, context) { return this.pushStack(jQuery.uniqueSort(jQuery.merge(this.get(), jQuery(selector, context)))) }, 859 addBack: function(selector) { return this.add(null == selector ? this.prevObject : this.prevObject.filter(selector)) } 860 }), jQuery.each({ parent: function(elem) { var parent = elem.parentNode; return parent && 11 !== parent.nodeType ? parent : null }, parents: function(elem) { return dir(elem, "parentNode") }, parentsUntil: function(elem, i, until) { return dir(elem, "parentNode", until) }, next: function(elem) { return sibling(elem, "nextSibling") }, prev: function(elem) { return sibling(elem, "previousSibling") }, nextAll: function(elem) { return dir(elem, "nextSibling") }, prevAll: function(elem) { return dir(elem, "previousSibling") }, nextUntil: function(elem, i, until) { return dir(elem, "nextSibling", until) }, prevUntil: function(elem, i, until) { return dir(elem, "previousSibling", until) }, siblings: function(elem) { return siblings((elem.parentNode || {}).firstChild, elem) }, children: function(elem) { return siblings(elem.firstChild) }, contents: function(elem) { return elem.contentDocument || jQuery.merge([], elem.childNodes) } }, function(name, fn) { jQuery.fn[name] = function(until, selector) { var matched = jQuery.map(this, fn, until); return "Until" !== name.slice(-5) && (selector = until), selector && "string" == typeof selector && (matched = jQuery.filter(selector, matched)), this.length > 1 && (guaranteedUnique[name] || jQuery.uniqueSort(matched), rparentsprev.test(name) && matched.reverse()), this.pushStack(matched) } }); 861 var rnothtmlwhite = /[^\x20\t\r\n\f]+/g; 862 jQuery.Callbacks = function(options) { 863 options = "string" == typeof options ? createOptions(options) : jQuery.extend({}, options); 864 var firing, memory, fired, locked, list = [], 865 queue = [], 866 firingIndex = -1, 867 fire = function() { 868 for (locked = options.once, fired = firing = !0; queue.length; firingIndex = -1) 869 for (memory = queue.shift(); ++firingIndex < list.length;) list[firingIndex].apply(memory[0], memory[1]) === !1 && options.stopOnFalse && (firingIndex = list.length, memory = !1); 870 options.memory || (memory = !1), firing = !1, locked && (list = memory ? [] : "") 871 }, 872 self = { 873 add: function() { return list && (memory && !firing && (firingIndex = list.length - 1, queue.push(memory)), function add(args) { jQuery.each(args, function(_, arg) { jQuery.isFunction(arg) ? options.unique && self.has(arg) || list.push(arg) : arg && arg.length && "string" !== jQuery.type(arg) && add(arg) }) }(arguments), memory && !firing && fire()), this }, 874 remove: function() { 875 return jQuery.each(arguments, function(_, arg) { 876 for (var index; 877 (index = jQuery.inArray(arg, list, index)) > -1;) list.splice(index, 1), index <= firingIndex && firingIndex-- 878 }), this 879 }, 880 has: function(fn) { return fn ? jQuery.inArray(fn, list) > -1 : list.length > 0 }, 881 empty: function() { return list && (list = []), this }, 882 disable: function() { return locked = queue = [], list = memory = "", this }, 883 disabled: function() { return !list }, 884 lock: function() { return locked = queue = [], memory || firing || (list = memory = ""), this }, 885 locked: function() { return !!locked }, 886 fireWith: function(context, args) { 887 return locked || (args = args || [], args = [context, args.slice ? args.slice() : args], 888 queue.push(args), firing || fire()), this 889 }, 890 fire: function() { return self.fireWith(this, arguments), this }, 891 fired: function() { return !!fired } 892 }; 893 return self 894 }, jQuery.extend({ 895 Deferred: function(func) { 896 var tuples = [ 897 ["notify", "progress", jQuery.Callbacks("memory"), jQuery.Callbacks("memory"), 2], 898 ["resolve", "done", jQuery.Callbacks("once memory"), jQuery.Callbacks("once memory"), 0, "resolved"], 899 ["reject", "fail", jQuery.Callbacks("once memory"), jQuery.Callbacks("once memory"), 1, "rejected"] 900 ], 901 state = "pending", 902 promise = { 903 state: function() { return state }, 904 always: function() { return deferred.done(arguments).fail(arguments), this }, 905 catch: function(fn) { return promise.then(null, fn) }, 906 pipe: function() { 907 var fns = arguments; 908 return jQuery.Deferred(function(newDefer) { 909 jQuery.each(tuples, function(i, tuple) { 910 var fn = jQuery.isFunction(fns[tuple[4]]) && fns[tuple[4]]; 911 deferred[tuple[1]](function() { 912 var returned = fn && fn.apply(this, arguments); 913 returned && jQuery.isFunction(returned.promise) ? returned.promise().progress(newDefer.notify).done(newDefer.resolve).fail(newDefer.reject) : newDefer[tuple[0] + "With"](this, fn ? [returned] : arguments) 914 }) 915 }), fns = null 916 }).promise() 917 }, 918 then: function(onFulfilled, onRejected, onProgress) { 919 function resolve(depth, deferred, handler, special) { 920 return function() { 921 var that = this, 922 args = arguments, 923 mightThrow = function() { 924 var returned, then; 925 if (!(depth < maxDepth)) { 926 if (returned = handler.apply(that, args), returned === deferred.promise()) throw new TypeError("Thenable self-resolution"); 927 then = returned && ("object" == typeof returned || "function" == typeof returned) && returned.then, jQuery.isFunction(then) ? special ? then.call(returned, resolve(maxDepth, deferred, Identity, special), resolve(maxDepth, deferred, Thrower, special)) : (maxDepth++, then.call(returned, resolve(maxDepth, deferred, Identity, special), resolve(maxDepth, deferred, Thrower, special), resolve(maxDepth, deferred, Identity, deferred.notifyWith))) : (handler !== Identity && (that = void 0, args = [returned]), (special || deferred.resolveWith)(that, args)) 928 } 929 }, 930 process = special ? mightThrow : function() { try { mightThrow() } catch (e) { jQuery.Deferred.exceptionHook && jQuery.Deferred.exceptionHook(e, process.stackTrace), depth + 1 >= maxDepth && (handler !== Thrower && (that = void 0, args = [e]), deferred.rejectWith(that, args)) } }; 931 depth ? process() : (jQuery.Deferred.getStackHook && (process.stackTrace = jQuery.Deferred.getStackHook()), window.setTimeout(process)) 932 } 933 } 934 var maxDepth = 0; 935 return jQuery.Deferred(function(newDefer) { tuples[0][3].add(resolve(0, newDefer, jQuery.isFunction(onProgress) ? onProgress : Identity, newDefer.notifyWith)), tuples[1][3].add(resolve(0, newDefer, jQuery.isFunction(onFulfilled) ? onFulfilled : Identity)), tuples[2][3].add(resolve(0, newDefer, jQuery.isFunction(onRejected) ? onRejected : Thrower)) }).promise() 936 }, 937 promise: function(obj) { return null != obj ? jQuery.extend(obj, promise) : promise } 938 }, 939 deferred = {}; 940 return jQuery.each(tuples, function(i, tuple) { 941 var list = tuple[2], 942 stateString = tuple[5]; 943 promise[tuple[1]] = list.add, stateString && list.add(function() { state = stateString }, tuples[3 - i][2].disable, tuples[0][2].lock), list.add(tuple[3].fire), deferred[tuple[0]] = function() { return deferred[tuple[0] + "With"](this === deferred ? void 0 : this, arguments), this }, deferred[tuple[0] + "With"] = list.fireWith 944 }), promise.promise(deferred), func && func.call(deferred, deferred), deferred 945 }, 946 when: function(singleValue) { 947 var remaining = arguments.length, 948 i = remaining, 949 resolveContexts = Array(i), 950 resolveValues = slice.call(arguments), 951 master = jQuery.Deferred(), 952 updateFunc = function(i) { return function(value) { resolveContexts[i] = this, resolveValues[i] = arguments.length > 1 ? slice.call(arguments) : value, --remaining || master.resolveWith(resolveContexts, resolveValues) } }; 953 if (remaining <= 1 && (adoptValue(singleValue, master.done(updateFunc(i)).resolve, master.reject), "pending" === master.state() || jQuery.isFunction(resolveValues[i] && resolveValues[i].then))) return master.then(); 954 for (; i--;) adoptValue(resolveValues[i], updateFunc(i), master.reject); 955 return master.promise() 956 } 957 }); 958 var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; 959 jQuery.Deferred.exceptionHook = function(error, stack) { window.console && window.console.warn && error && rerrorNames.test(error.name) && window.console.warn("jQuery.Deferred exception: " + error.message, error.stack, stack) }, jQuery.readyException = function(error) { window.setTimeout(function() { throw error }) }; 960 var readyList = jQuery.Deferred(); 961 jQuery.fn.ready = function(fn) { return readyList.then(fn).catch(function(error) { jQuery.readyException(error) }), this }, jQuery.extend({ 962 isReady: !1, 963 readyWait: 1, 964 holdReady: function(hold) { hold ? jQuery.readyWait++ : jQuery.ready(!0) }, 965 ready: function(wait) { 966 (wait === !0 ? --jQuery.readyWait : jQuery.isReady) || (jQuery.isReady = !0, wait !== !0 && --jQuery.readyWait > 0 || readyList.resolveWith(document, [jQuery])) 967 } 968 }), jQuery.ready.then = readyList.then, "complete" === document.readyState || "loading" !== document.readyState && !document.documentElement.doScroll ? window.setTimeout(jQuery.ready) : (document.addEventListener("DOMContentLoaded", completed), window.addEventListener("load", completed)); 969 var access = function(elems, fn, key, value, chainable, emptyGet, raw) { 970 var i = 0, 971 len = elems.length, 972 bulk = null == key; 973 if ("object" === jQuery.type(key)) { chainable = !0; for (i in key) access(elems, fn, i, key[i], !0, emptyGet, raw) } else if (void 0 !== value && (chainable = !0, jQuery.isFunction(value) || (raw = !0), bulk && (raw ? (fn.call(elems, value), fn = null) : (bulk = fn, fn = function(elem, key, value) { return bulk.call(jQuery(elem), value) })), fn)) 974 for (; i < len; i++) fn(elems[i], key, raw ? value : value.call(elems[i], i, fn(elems[i], key))); 975 return chainable ? elems : bulk ? fn.call(elems) : len ? fn(elems[0], key) : emptyGet 976 }, 977 acceptData = function(owner) { return 1 === owner.nodeType || 9 === owner.nodeType || !+owner.nodeType }; 978 Data.uid = 1, Data.prototype = { 979 cache: function(owner) { var value = owner[this.expando]; return value || (value = {}, acceptData(owner) && (owner.nodeType ? owner[this.expando] = value : Object.defineProperty(owner, this.expando, { value: value, configurable: !0 }))), value }, 980 set: function(owner, data, value) { 981 var prop, cache = this.cache(owner); 982 if ("string" == typeof data) cache[jQuery.camelCase(data)] = value; 983 else 984 for (prop in data) cache[jQuery.camelCase(prop)] = data[prop]; 985 return cache 986 }, 987 get: function(owner, key) { return void 0 === key ? this.cache(owner) : owner[this.expando] && owner[this.expando][jQuery.camelCase(key)] }, 988 access: function(owner, key, value) { return void 0 === key || key && "string" == typeof key && void 0 === value ? this.get(owner, key) : (this.set(owner, key, value), void 0 !== value ? value : key) }, 989 remove: function(owner, key) { var i, cache = owner[this.expando]; if (void 0 !== cache) { if (void 0 !== key) { jQuery.isArray(key) ? key = key.map(jQuery.camelCase) : (key = jQuery.camelCase(key), key = key in cache ? [key] : key.match(rnothtmlwhite) || []), i = key.length; for (; i--;) delete cache[key[i]] }(void 0 === key || jQuery.isEmptyObject(cache)) && (owner.nodeType ? owner[this.expando] = void 0 : delete owner[this.expando]) } }, 990 hasData: function(owner) { var cache = owner[this.expando]; return void 0 !== cache && !jQuery.isEmptyObject(cache) } 991 }; 992 var dataPriv = new Data, 993 dataUser = new Data, 994 rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, 995 rmultiDash = /[A-Z]/g; 996 jQuery.extend({ hasData: function(elem) { return dataUser.hasData(elem) || dataPriv.hasData(elem) }, data: function(elem, name, data) { return dataUser.access(elem, name, data) }, removeData: function(elem, name) { dataUser.remove(elem, name) }, _data: function(elem, name, data) { return dataPriv.access(elem, name, data) }, _removeData: function(elem, name) { dataPriv.remove(elem, name) } }), jQuery.fn.extend({ 997 data: function(key, value) { 998 var i, name, data, elem = this[0], 999 attrs = elem && elem.attributes; 1000 if (void 0 === key) { 1001 if (this.length && (data = dataUser.get(elem), 1 === elem.nodeType && !dataPriv.get(elem, "hasDataAttrs"))) { 1002 for (i = attrs.length; i--;) attrs[i] && (name = attrs[i].name, 0 === name.indexOf("data-") && (name = jQuery.camelCase(name.slice(5)), dataAttr(elem, name, data[name]))); 1003 dataPriv.set(elem, "hasDataAttrs", !0) 1004 } 1005 return data 1006 } 1007 return "object" == typeof key ? this.each(function() { dataUser.set(this, key) }) : access(this, function(value) { var data; if (elem && void 0 === value) { if (data = dataUser.get(elem, key), void 0 !== data) return data; if (data = dataAttr(elem, key), void 0 !== data) return data } else this.each(function() { dataUser.set(this, key, value) }) }, null, value, arguments.length > 1, null, !0) 1008 }, 1009 removeData: function(key) { return this.each(function() { dataUser.remove(this, key) }) } 1010 }), jQuery.extend({ 1011 queue: function(elem, type, data) { var queue; if (elem) return type = (type || "fx") + "queue", queue = dataPriv.get(elem, type), data && (!queue || jQuery.isArray(data) ? queue = dataPriv.access(elem, type, jQuery.makeArray(data)) : queue.push(data)), queue || [] }, 1012 dequeue: function(elem, type) { 1013 type = type || "fx"; 1014 var queue = jQuery.queue(elem, type), 1015 startLength = queue.length, 1016 fn = queue.shift(), 1017 hooks = jQuery._queueHooks(elem, type), 1018 next = function() { jQuery.dequeue(elem, type) }; 1019 "inprogress" === fn && (fn = queue.shift(), startLength--), fn && ("fx" === type && queue.unshift("inprogress"), delete hooks.stop, fn.call(elem, next, hooks)), !startLength && hooks && hooks.empty.fire() 1020 }, 1021 _queueHooks: function(elem, type) { var key = type + "queueHooks"; return dataPriv.get(elem, key) || dataPriv.access(elem, key, { empty: jQuery.Callbacks("once memory").add(function() { dataPriv.remove(elem, [type + "queue", key]) }) }) } 1022 }), jQuery.fn.extend({ 1023 queue: function(type, data) { 1024 var setter = 2; 1025 return "string" != typeof type && (data = type, type = "fx", setter--), arguments.length < setter ? jQuery.queue(this[0], type) : void 0 === data ? this
vendor: 7,204 bytes, lines 1025-1092
1025: this.each(function() { 1026 var queue = jQuery.queue(this, type, data); 1027 jQuery._queueHooks(this, type), "fx" === type && "inprogress" !== queue[0] && jQuery.dequeue(this, type) 1028 }) 1029 }, 1030 dequeue: function(type) { return this.each(function() { jQuery.dequeue(this, type) }) }, 1031 clearQueue: function(type) { return this.queue(type || "fx", []) }, 1032 promise: function(type, obj) { 1033 var tmp, count = 1, 1034 defer = jQuery.Deferred(), 1035 elements = this, 1036 i = this.length, 1037 resolve = function() {--count || defer.resolveWith(elements, [elements]) }; 1038 for ("string" != typeof type && (obj = type, type = void 0), type = type || "fx"; i--;) tmp = dataPriv.get(elements[i], type + "queueHooks"), tmp && tmp.empty && (count++, tmp.empty.add(resolve)); 1039 return resolve(), defer.promise(obj) 1040 } 1041 }); 1042 var pnum = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, 1043 rcssNum = new RegExp("^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i"), 1044 cssExpand = ["Top", "Right", "Bottom", "Left"], 1045 isHiddenWithinTree = function(elem, el) { return elem = el || elem, "none" === elem.style.display || "" === elem.style.display && jQuery.contains(elem.ownerDocument, elem) && "none" === jQuery.css(elem, "display") }, 1046 swap = function(elem, options, callback, args) { 1047 var ret, name, old = {}; 1048 for (name in options) old[name] = elem.style[name], elem.style[name] = options[name]; 1049 ret = callback.apply(elem, args || []); 1050 for (name in options) elem.style[name] = old[name]; 1051 return ret 1052 }, 1053 defaultDisplayMap = {}; 1054 jQuery.fn.extend({ show: function() { return showHide(this, !0) }, hide: function() { return showHide(this) }, toggle: function(state) { return "boolean" == typeof state ? state ? this.show() : this.hide() : this.each(function() { isHiddenWithinTree(this) ? jQuery(this).show() : jQuery(this).hide() }) } }); 1055 var rcheckableType = /^(?:checkbox|radio)$/i, 1056 rtagName = /<([a-z][^\/\0>\x20\t\r\n\f]+)/i, 1057 rscriptType = /^$|\/(?:java|ecma)script/i, 1058 wrapMap = { option: [1, "<select multiple='multiple'>", "</select>"], thead: [1, "<table>", "</table>"], col: [2, "<table><colgroup>", "</colgroup></table>"], tr: [2, "<table><tbody>", "</tbody></table>"], td: [3, "<table><tbody><tr>", "</tr></tbody></table>"], _default: [0, "", ""] }; 1059 wrapMap.optgroup = wrapMap.option, wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead, wrapMap.th = wrapMap.td; 1060 var rhtml = /<|&#?\w+;/; 1061 ! function() { 1062 var fragment = document.createDocumentFragment(), 1063 div = fragment.appendChild(document.createElement("div")), 1064 input = document.createElement("input"); 1065 input.setAttribute("type", "radio"), input.setAttribute("checked", "checked"), input.setAttribute("name", "t"), div.appendChild(input), support.checkClone = div.cloneNode(!0).cloneNode(!0).lastChild.checked, div.innerHTML = "<textarea>x</textarea>", support.noCloneChecked = !!div.cloneNode(!0).lastChild.defaultValue 1066 }(); 1067 var documentElement = document.documentElement, 1068 rkeyEvent = /^key/, 1069 rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, 1070 rtypenamespace = /^([^.]*)(?:\.(.+)|)/; 1071 jQuery.event = { 1072 global: {}, 1073 add: function(elem, types, handler, data, selector) { 1074 var handleObjIn, eventHandle, tmp, events, t, handleObj, special, handlers, type, namespaces, origType, elemData = dataPriv.get(elem); 1075 if (elemData) 1076 for (handler.handler && (handleObjIn = handler, handler = handleObjIn.handler, selector = handleObjIn.selector), selector && jQuery.find.matchesSelector(documentElement, selector), handler.guid || (handler.guid = jQuery.guid++), (events = elemData.events) || (events = elemData.events = {}), (eventHandle = elemData.handle) || (eventHandle = elemData.handle = function(e) { return "undefined" != typeof jQuery && jQuery.event.triggered !== e.type ? jQuery.event.dispatch.apply(elem, arguments) : void 0 }), types = (types || "").match(rnothtmlwhite) || [""], t = types.length; t--;) tmp = rtypenamespace.exec(types[t]) || [], type = origType = tmp[1], namespaces = (tmp[2] || "").split(".").sort(), type && (special = jQuery.event.special[type] || {}, type = (selector ? special.delegateType : special.bindType) || type, special = jQuery.event.special[type] || {}, handleObj = jQuery.extend({ type: type, origType: origType, data: data, handler: handler, guid: handler.guid, selector: selector, needsContext: selector && jQuery.expr.match.needsContext.test(selector), namespace: namespaces.join(".") }, handleObjIn), (handlers = events[type]) || (handlers = events[type] = [], handlers.delegateCount = 0, special.setup && special.setup.call(elem, data, namespaces, eventHandle) !== !1 || elem.addEventListener && elem.addEventListener(type, eventHandle)), special.add && (special.add.call(elem, handleObj), handleObj.handler.guid || (handleObj.handler.guid = handler.guid)), selector ? handlers.splice(handlers.delegateCount++, 0, handleObj) : handlers.push(handleObj), jQuery.event.global[type] = !0) 1077 }, 1078 remove: function(elem, types, handler, selector, mappedTypes) { 1079 var j, origCount, tmp, events, t, handleObj, special, handlers, type, namespaces, origType, elemData = dataPriv.hasData(elem) && dataPriv.get(elem); 1080 if (elemData && (events = elemData.events)) { 1081 for (types = (types || "").match(rnothtmlwhite) || [""], t = types.length; t--;) 1082 if (tmp = rtypenamespace.exec(types[t]) || [], type = origType = tmp[1], namespaces = (tmp[2] || "").split(".").sort(), type) { 1083 for (special = jQuery.event.special[type] || {}, type = (selector ? special.delegateType : special.bindType) || type, handlers = events[type] || [], tmp = tmp[2] && new RegExp("(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)"), origCount = j = handlers.length; j--;) handleObj = handlers[j], !mappedTypes && origType !== handleObj.origType || handler && handler.guid !== handleObj.guid || tmp && !tmp.test(handleObj.namespace) || selector && selector !== handleObj.selector && ("**" !== selector || !handleObj.selector) || (handlers.splice(j, 1), handleObj.selector && handlers.delegateCount--, special.remove && special.remove.call(elem, handleObj)); 1084 origCount && !handlers.length && (special.teardown && special.teardown.call(elem, namespaces, elemData.handle) !== !1 || jQuery.removeEvent(elem, type, elemData.handle), delete events[type]) 1085 } else 1086 for (type in events) jQuery.event.remove(elem, type + types[t], handler, selector, !0); 1087 jQuery.isEmptyObject(events) && dataPriv.remove(elem, "handle events") 1088 } 1089 }, 1090 dispatch: function(nativeEvent) { 1091 var i, j, ret, matched, handleObj, handlerQueue, event = jQuery.event.fix(nativeEvent), 1092 args = new Array(arguments.length),
1093 handlers = (dataPriv.get(this, "events") || {})[event.type] || [], 1094 special = jQuery.event.special[event.type] || {}; 1095 for (args[0] = event, i = 1; i < arguments.length; i++) args[i] = arguments[i]; 1096 if (event.delegateTarget = this, !special.preDispatch || special.preDispatch.call(this, event) !== !1) { 1097 for (handlerQueue = jQuery.event.handlers.call(this, event, handlers), i = 0; 1098 (matched = handlerQueue[i++]) && !event.isPropagationStopped();) 1099 for (event.currentTarget = matched.elem, j = 0; 1100 (handleObj = matched.handlers[j++]) && !event.isImmediatePropagationStopped();) event.rnamespace && !event.rnamespace.test(handleObj.namespace) || (event.handleObj = handleObj, event.data = handleObj.data, ret = ((jQuery.event.special[handleObj.origType] || {}).handle || handleObj.handler).apply(matched.elem, args), void 0 !== ret && (event.result = ret) === !1 && (event.preventDefault(), event.stopPropagation())); 1101 return special.postDispatch && special.postDispatch.call(this, event), event.result 1102 } 1103 }, 1104 handlers: function(event, handlers) { 1105 var i, handleObj, sel, matchedHandlers, matchedSelectors, handlerQueue = [], 1106 delegateCount = handlers.delegateCount, 1107 cur = event.target; 1108 if (delegateCount && cur.nodeType && !("click" === event.type && event.button >= 1)) 1109 for (; cur !== this; cur = cur.parentNode || this) 1110 if (1 === cur.nodeType && ("click" !== event.type || cur.disabled !== !0)) { 1111 for (matchedHandlers = [], matchedSelectors = {}, i = 0; i < delegateCount; i++) handleObj = handlers[i], sel = handleObj.selector + " ", void 0 === matchedSelectors[sel] && (matchedSelectors[sel] = handleObj.needsContext ? jQuery(sel, this).index(cur) > -1 : jQuery.find(sel, this, null, [cur]).length), matchedSelectors[sel] && matchedHandlers.push(handleObj); 1112 matchedHandlers.length && handlerQueue.push({ elem: cur, handlers: matchedHandlers }) 1113 } 1114 return cur = this, delegateCount < handlers.length && handlerQueue.push({ elem: cur, handlers: handlers.slice(delegateCount) }), handlerQueue 1115 },
vendor: 25,009 bytes, lines 1116-1338
1116 addProp: function(name, hook) { Object.defineProperty(jQuery.Event.prototype, name, { enumerable: !0, configurable: !0, get: jQuery.isFunction(hook) ? function() { if (this.originalEvent) return hook(this.originalEvent) } : function() { if (this.originalEvent) return this.originalEvent[name] }, set: function(value) { Object.defineProperty(this, name, { enumerable: !0, configurable: !0, writable: !0, value: value }) } }) }, 1117 fix: function(originalEvent) { return originalEvent[jQuery.expando] ? originalEvent : new jQuery.Event(originalEvent) }, 1118 special: { load: { noBubble: !0 }, focus: { trigger: function() { if (this !== safeActiveElement() && this.focus) return this.focus(), !1 }, delegateType: "focusin" }, blur: { trigger: function() { if (this === safeActiveElement() && this.blur) return this.blur(), !1 }, delegateType: "focusout" }, click: { trigger: function() { if ("checkbox" === this.type && this.click && jQuery.nodeName(this, "input")) return this.click(), !1 }, _default: function(event) { return jQuery.nodeName(event.target, "a") } }, beforeunload: { postDispatch: function(event) { void 0 !== event.result && event.originalEvent && (event.originalEvent.returnValue = event.result) } } } 1119 }, jQuery.removeEvent = function(elem, type, handle) { elem.removeEventListener && elem.removeEventListener(type, handle) }, jQuery.Event = function(src, props) { return this instanceof jQuery.Event ? (src && src.type ? (this.originalEvent = src, this.type = src.type, this.isDefaultPrevented = src.defaultPrevented || void 0 === src.defaultPrevented && src.returnValue === !1 ? returnTrue : returnFalse, this.target = src.target && 3 === src.target.nodeType ? src.target.parentNode : src.target, this.currentTarget = src.currentTarget, this.relatedTarget = src.relatedTarget) : this.type = src, props && jQuery.extend(this, props), this.timeStamp = src && src.timeStamp || jQuery.now(), void(this[jQuery.expando] = !0)) : new jQuery.Event(src, props) }, jQuery.Event.prototype = { 1120 constructor: jQuery.Event, 1121 isDefaultPrevented: returnFalse, 1122 isPropagationStopped: returnFalse, 1123 isImmediatePropagationStopped: returnFalse, 1124 isSimulated: !1, 1125 preventDefault: function() { 1126 var e = this.originalEvent; 1127 this.isDefaultPrevented = returnTrue, e && !this.isSimulated && e.preventDefault() 1128 }, 1129 stopPropagation: function() { 1130 var e = this.originalEvent; 1131 this.isPropagationStopped = returnTrue, e && !this.isSimulated && e.stopPropagation() 1132 }, 1133 stopImmediatePropagation: function() { 1134 var e = this.originalEvent; 1135 this.isImmediatePropagationStopped = returnTrue, e && !this.isSimulated && e.stopImmediatePropagation(), this.stopPropagation() 1136 } 1137 }, jQuery.each({ altKey: !0, bubbles: !0, cancelable: !0, changedTouches: !0, ctrlKey: !0, detail: !0, eventPhase: !0, metaKey: !0, pageX: !0, pageY: !0, shiftKey: !0, view: !0, char: !0, charCode: !0, key: !0, keyCode: !0, button: !0, buttons: !0, clientX: !0, clientY: !0, offsetX: !0, offsetY: !0, pointerId: !0, pointerType: !0, screenX: !0, screenY: !0, targetTouches: !0, toElement: !0, touches: !0, which: function(event) { var button = event.button; return null == event.which && rkeyEvent.test(event.type) ? null != event.charCode ? event.charCode : event.keyCode : !event.which && void 0 !== button && rmouseEvent.test(event.type) ? 1 & button ? 1 : 2 & button ? 3 : 4 & button ? 2 : 0 : event.which } }, jQuery.event.addProp), jQuery.each({ mouseenter: "mouseover", mouseleave: "mouseout", pointerenter: "pointerover", pointerleave: "pointerout" }, function(orig, fix) { 1138 jQuery.event.special[orig] = { 1139 delegateType: fix, 1140 bindType: fix, 1141 handle: function(event) { 1142 var ret, target = this, 1143 related = event.relatedTarget, 1144 handleObj = event.handleObj; 1145 return related && (related === target || jQuery.contains(target, related)) || (event.type = handleObj.origType, ret = handleObj.handler.apply(this, arguments), event.type = fix), ret 1146 } 1147 } 1148 }), jQuery.fn.extend({ on: function(types, selector, data, fn) { return on(this, types, selector, data, fn) }, one: function(types, selector, data, fn) { return on(this, types, selector, data, fn, 1) }, off: function(types, selector, fn) { var handleObj, type; if (types && types.preventDefault && types.handleObj) return handleObj = types.handleObj, jQuery(types.delegateTarget).off(handleObj.namespace ? handleObj.origType + "." + handleObj.namespace : handleObj.origType, handleObj.selector, handleObj.handler), this; if ("object" == typeof types) { for (type in types) this.off(type, selector, types[type]); return this } return selector !== !1 && "function" != typeof selector || (fn = selector, selector = void 0), fn === !1 && (fn = returnFalse), this.each(function() { jQuery.event.remove(this, types, fn, selector) }) } }); 1149 var rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi, 1150 rnoInnerhtml = /<script|<style|<link/i, 1151 rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i, 1152 rscriptTypeMasked = /^true\/(.*)/, 1153 rcleanScript = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g; 1154 jQuery.extend({ 1155 htmlPrefilter: function(html) { return html.replace(rxhtmlTag, "<$1></$2>") }, 1156 clone: function(elem, dataAndEvents, deepDataAndEvents) { 1157 var i, l, srcElements, destElements, clone = elem.cloneNode(!0), 1158 inPage = jQuery.contains(elem.ownerDocument, elem); 1159 if (!(support.noCloneChecked || 1 !== elem.nodeType && 11 !== elem.nodeType || jQuery.isXMLDoc(elem))) 1160 for (destElements = getAll(clone), srcElements = getAll(elem), i = 0, l = srcElements.length; i < l; i++) fixInput(srcElements[i], destElements[i]); 1161 if (dataAndEvents) 1162 if (deepDataAndEvents) 1163 for (srcElements = srcElements || getAll(elem), destElements = destElements || getAll(clone), i = 0, l = srcElements.length; i < l; i++) cloneCopyEvent(srcElements[i], destElements[i]); 1164 else cloneCopyEvent(elem, clone); 1165 return destElements = getAll(clone, "script"), destElements.length > 0 && setGlobalEval(destElements, !inPage && getAll(elem, "script")), clone 1166 }, 1167 cleanData: function(elems) { 1168 for (var data, elem, type, special = jQuery.event.special, i = 0; void 0 !== (elem = elems[i]); i++) 1169 if (acceptData(elem)) { 1170 if (data = elem[dataPriv.expando]) { 1171 if (data.events) 1172 for (type in data.events) special[type] ? jQuery.event.remove(elem, type) : jQuery.removeEvent(elem, type, data.handle); 1173 elem[dataPriv.expando] = void 0 1174 } 1175 elem[dataUser.expando] && (elem[dataUser.expando] = void 0) 1176 } 1177 } 1178 }), jQuery.fn.extend({ 1179 detach: function(selector) { return remove(this, selector, !0) }, 1180 remove: function(selector) { return remove(this, selector) }, 1181 text: function(value) { return access(this, function(value) { return void 0 === value ? jQuery.text(this) : this.empty().each(function() { 1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (this.textContent = value) }) }, null, value, arguments.length) }, 1182 append: function() { 1183 return domManip(this, arguments, function(elem) { 1184 if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) { 1185 var target = manipulationTarget(this, elem); 1186 target.appendChild(elem) 1187 } 1188 }) 1189 }, 1190 prepend: function() { 1191 return domManip(this, arguments, function(elem) { 1192 if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) { 1193 var target = manipulationTarget(this, elem); 1194 target.insertBefore(elem, target.firstChild) 1195 } 1196 }) 1197 }, 1198 before: function() { return domManip(this, arguments, function(elem) { this.parentNode && this.parentNode.insertBefore(elem, this) }) }, 1199 after: function() { return domManip(this, arguments, function(elem) { this.parentNode && this.parentNode.insertBefore(elem, this.nextSibling) }) }, 1200 empty: function() { for (var elem, i = 0; null != (elem = this[i]); i++) 1 === elem.nodeType && (jQuery.cleanData(getAll(elem, !1)), elem.textContent = ""); return this }, 1201 clone: function(dataAndEvents, deepDataAndEvents) { return dataAndEvents = null != dataAndEvents && dataAndEvents, deepDataAndEvents = null == deepDataAndEvents ? dataAndEvents : deepDataAndEvents, this.map(function() { return jQuery.clone(this, dataAndEvents, deepDataAndEvents) }) }, 1202 html: function(value) { 1203 return access(this, function(value) { 1204 var elem = this[0] || {}, 1205 i = 0, 1206 l = this.length; 1207 if (void 0 === value && 1 === elem.nodeType) return elem.innerHTML; 1208 if ("string" == typeof value && !rnoInnerhtml.test(value) && !wrapMap[(rtagName.exec(value) || ["", ""])[1].toLowerCase()]) { 1209 value = jQuery.htmlPrefilter(value); 1210 try { 1211 for (; i < l; i++) elem = this[i] || {}, 1 === elem.nodeType && (jQuery.cleanData(getAll(elem, !1)), elem.innerHTML = value); 1212 elem = 0 1213 } catch (e) {} 1214 } 1215 elem && this.empty().append(value) 1216 }, null, value, arguments.length) 1217 }, 1218 replaceWith: function() { 1219 var ignored = []; 1220 return domManip(this, arguments, function(elem) { 1221 var parent = this.parentNode; 1222 jQuery.inArray(this, ignored) < 0 && (jQuery.cleanData(getAll(this)), parent && parent.replaceChild(elem, this)) 1223 }, ignored) 1224 } 1225 }), jQuery.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith" }, function(name, original) { jQuery.fn[name] = function(selector) { for (var elems, ret = [], insert = jQuery(selector), last = insert.length - 1, i = 0; i <= last; i++) elems = i === last ? this : this.clone(!0), jQuery(insert[i])[original](elems), push.apply(ret, elems.get()); return this.pushStack(ret) } }); 1226 var rmargin = /^margin/, 1227 rnumnonpx = new RegExp("^(" + pnum + ")(?!px)[a-z%]+$", "i"), 1228 getStyles = function(elem) { var view = elem.ownerDocument.defaultView; return view && view.opener || (view = window), view.getComputedStyle(elem) }; 1229 ! function() { 1230 function computeStyleTests() { 1231 if (div) { 1232 div.style.cssText = "box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%", div.innerHTML = "", documentElement.appendChild(container); 1233 var divStyle = window.getComputedStyle(div); 1234 pixelPositionVal = "1%" !== divStyle.top, reliableMarginLeftVal = "2px" === divStyle.marginLeft, boxSizingReliableVal = "4px" === divStyle.width, div.style.marginRight = "50%", pixelMarginRightVal = "4px" === divStyle.marginRight, documentElement.removeChild(container), div = null 1235 } 1236 } 1237 var pixelPositionVal, boxSizingReliableVal, pixelMarginRightVal, reliableMarginLeftVal, container = document.createElement("div"), 1238 div = document.createElement("div"); 1239 div.style && (div.style.backgroundClip = "content-box", div.cloneNode(!0).style.backgroundClip = "", support.clearCloneStyle = "content-box" === div.style.backgroundClip, container.style.cssText = "border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute", container.appendChild(div), jQuery.extend(support, { pixelPosition: function() { return computeStyleTests(), pixelPositionVal }, boxSizingReliable: function() { return computeStyleTests(), boxSizingReliableVal }, pixelMarginRight: function() { return computeStyleTests(), pixelMarginRightVal }, reliableMarginLeft: function() { return computeStyleTests(), reliableMarginLeftVal } })) 1240 }(); 1241 var rdisplayswap = /^(none|table(?!-c[ea]).+)/, 1242 cssShow = { position: "absolute", visibility: "hidden", display: "block" }, 1243 cssNormalTransform = { letterSpacing: "0", fontWeight: "400" }, 1244 cssPrefixes = ["Webkit", "Moz", "ms"], 1245 emptyStyle = document.createElement("div").style; 1246 jQuery.extend({ 1247 cssHooks: { opacity: { get: function(elem, computed) { if (computed) { var ret = curCSS(elem, "opacity"); return "" === ret ? "1" : ret } } } }, 1248 cssNumber: { animationIterationCount: !0, columnCount: !0, fillOpacity: !0, flexGrow: !0, flexShrink: !0, fontWeight: !0, lineHeight: !0, opacity: !0, order: !0, orphans: !0, widows: !0, zIndex: !0, zoom: !0 }, 1249 cssProps: { float: "cssFloat" }, 1250 style: function(elem, name, value, extra) { 1251 if (elem && 3 !== elem.nodeType && 8 !== elem.nodeType && elem.style) { 1252 var ret, type, hooks, origName = jQuery.camelCase(name), 1253 style = elem.style; 1254 return name = jQuery.cssProps[origName] || (jQuery.cssProps[origName] = vendorPropName(origName) || origName), hooks = jQuery.cssHooks[name] || jQuery.cssHooks[origName], void 0 === value ? hooks && "get" in hooks && void 0 !== (ret = hooks.get(elem, !1, extra)) ? ret : style[name] : (type = typeof value, "string" === type && (ret = rcssNum.exec(value)) && ret[1] && (value = adjustCSS(elem, name, ret), type = "number"), null != value && value === value && ("number" === type && (value += ret && ret[3] || (jQuery.cssNumber[origName] ? "" : "px")), support.clearCloneStyle || "" !== value || 0 !== name.indexOf("background") || (style[name] = "inherit"), hooks && "set" in hooks && void 0 === (value = hooks.set(elem, value, extra)) || (style[name] = value)), void 0) 1255 } 1256 }, 1257 css: function(elem, name, extra, styles) { var val, num, hooks, origName = jQuery.camelCase(name); return name = jQuery.cssProps[origName] || (jQuery.cssProps[origName] = vendorPropName(origName) || origName), hooks = jQuery.cssHooks[name] || jQuery.cssHooks[origName], hooks && "get" in hooks && (val = hooks.get(elem, !0, extra)), void 0 === val && (val = curCSS(elem, name, styles)), "normal" === val && name in cssNormalTransform && (val = cssNormalTransform[name]), "" === extra || extra ? (num = parseFloat(val), extra === !0 || isFinite(num) ? num || 0 : val) : val } 1258 }), jQuery.each(["height", "width"], function(i, name) { 1259 jQuery.cssHooks[name] = { 1260 get: function(elem, computed, extra) { if (computed) return !rdisplayswap.test(jQuery.css(elem, "display")) || elem.getClientRects().length && elem.getBoundingClientRect().width ? getWidthOrHeight(elem, name, extra) : swap(elem, cssShow, function() { return getWidthOrHeight(elem, name, extra) }) }, 1261 set: function(elem, value, extra) { 1262 var matches, styles = extra && getStyles(elem), 1263 subtract = extra && augmentWidthOrHeight(elem, name, extra, "border-box" === jQuery.css(elem, "boxSizing", !1, styles), styles); 1264 return subtract && (matches = rcssNum.exec(value)) && "px" !== (matches[3] || "px") && (elem.style[name] = value, value = jQuery.css(elem, name)), setPositiveNumber(elem, value, subtract) 1265 } 1266 } 1267 }), jQuery.cssHooks.marginLeft = addGetHookIf(support.reliableMarginLeft, function(elem, computed) { if (computed) return (parseFloat(curCSS(elem, "marginLeft")) || elem.getBoundingClientRect().left - swap(elem, { marginLeft: 0 }, function() { return elem.getBoundingClientRect().left })) + "px" }), jQuery.each({ margin: "", padding: "", border: "Width" }, function(prefix, suffix) { jQuery.cssHooks[prefix + suffix] = { expand: function(value) { for (var i = 0, expanded = {}, parts = "string" == typeof value ? value.split(" ") : [value]; i < 4; i++) expanded[prefix + cssExpand[i] + suffix] = parts[i] || parts[i - 2] || parts[0]; return expanded } }, rmargin.test(prefix) || (jQuery.cssHooks[prefix + suffix].set = setPositiveNumber) }), jQuery.fn.extend({ 1268 css: function(name, value) { 1269 return access(this, function(elem, name, value) { 1270 var styles, len, map = {}, 1271 i = 0; 1272 if (jQuery.isArray(name)) { for (styles = getStyles(elem), len = name.length; i < len; i++) map[name[i]] = jQuery.css(elem, name[i], !1, styles); return map } 1273 return void 0 !== value ? jQuery.style(elem, name, value) : jQuery.css(elem, name) 1274 }, name, value, arguments.length > 1) 1275 } 1276 }), jQuery.Tween = Tween, Tween.prototype = { constructor: Tween, init: function(elem, options, prop, end, easing, unit) { this.elem = elem, this.prop = prop, this.easing = easing || jQuery.easing._default, this.options = options, this.start = this.now = this.cur(), this.end = end, this.unit = unit || (jQuery.cssNumber[prop] ? "" : "px") }, cur: function() { var hooks = Tween.propHooks[this.prop]; return hooks && hooks.get ? hooks.get(this) : Tween.propHooks._default.get(this) }, run: function(percent) { var eased, hooks = Tween.propHooks[this.prop]; return this.options.duration ? this.pos = eased = jQuery.easing[this.easing](percent, this.options.duration * percent, 0, 1, this.options.duration) : this.pos = eased = percent, this.now = (this.end - this.start) * eased + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), hooks && hooks.set ? hooks.set(this) : Tween.propHooks._default.set(this), this } }, Tween.prototype.init.prototype = Tween.prototype, Tween.propHooks = { _default: { get: function(tween) { var result; return 1 !== tween.elem.nodeType || null != tween.elem[tween.prop] && null == tween.elem.style[tween.prop] ? tween.elem[tween.prop] : (result = jQuery.css(tween.elem, tween.prop, ""), result && "auto" !== result ? result : 0) }, set: function(tween) { jQuery.fx.step[tween.prop] ? jQuery.fx.step[tween.prop](tween) : 1 !== tween.elem.nodeType || null == tween.elem.style[jQuery.cssProps[tween.prop]] && !jQuery.cssHooks[tween.prop] ? tween.elem[tween.prop] = tween.now : jQuery.style(tween.elem, tween.prop, tween.now + tween.unit) } } }, Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = { set: function(tween) { tween.elem.nodeType && tween.elem.parentNode && (tween.elem[tween.prop] = tween.now) } }, jQuery.easing = { linear: function(p) { return p }, swing: function(p) { return .5 - Math.cos(p * Math.PI) / 2 }, _default: "swing" }, jQuery.fx = Tween.prototype.init, jQuery.fx.step = {}; 1277 var fxNow, timerId, rfxtypes = /^(?:toggle|show|hide)$/, 1278 rrun = /queueHooks$/; 1279 jQuery.Animation = jQuery.extend(Animation, { 1280 tweeners: { 1281 "*": [function(prop, value) { 1282 var tween = this.createTween(prop, value); 1283 return adjustCSS(tween.elem, prop, rcssNum.exec(value), tween), 1284 tween 1285 }] 1286 }, 1287 tweener: function(props, callback) { jQuery.isFunction(props) ? (callback = props, props = ["*"]) : props = props.match(rnothtmlwhite); for (var prop, index = 0, length = props.length; index < length; index++) prop = props[index], Animation.tweeners[prop] = Animation.tweeners[prop] || [], Animation.tweeners[prop].unshift(callback) }, 1288 prefilters: [defaultPrefilter], 1289 prefilter: function(callback, prepend) { prepend ? Animation.prefilters.unshift(callback) : Animation.prefilters.push(callback) } 1290 }), jQuery.speed = function(speed, easing, fn) { var opt = speed && "object" == typeof speed ? jQuery.extend({}, speed) : { complete: fn || !fn && easing || jQuery.isFunction(speed) && speed, duration: speed, easing: fn && easing || easing && !jQuery.isFunction(easing) && easing }; return jQuery.fx.off || document.hidden ? opt.duration = 0 : "number" != typeof opt.duration && (opt.duration in jQuery.fx.speeds ? opt.duration = jQuery.fx.speeds[opt.duration] : opt.duration = jQuery.fx.speeds._default), null != opt.queue && opt.queue !== !0 || (opt.queue = "fx"), opt.old = opt.complete, opt.complete = function() { jQuery.isFunction(opt.old) && opt.old.call(this), opt.queue && jQuery.dequeue(this, opt.queue) }, opt }, jQuery.fn.extend({ 1291 fadeTo: function(speed, to, easing, callback) { return this.filter(isHiddenWithinTree).css("opacity", 0).show().end().animate({ opacity: to }, speed, easing, callback) }, 1292 animate: function(prop, speed, easing, callback) { 1293 var empty = jQuery.isEmptyObject(prop), 1294 optall = jQuery.speed(speed, easing, callback), 1295 doAnimation = function() { 1296 var anim = Animation(this, jQuery.extend({}, prop), optall); 1297 (empty || dataPriv.get(this, "finish")) && anim.stop(!0) 1298 }; 1299 return doAnimation.finish = doAnimation, empty || optall.queue === !1 ? this.each(doAnimation) : this.queue(optall.queue, doAnimation) 1300 }, 1301 stop: function(type, clearQueue, gotoEnd) { 1302 var stopQueue = function(hooks) { 1303 var stop = hooks.stop; 1304 delete hooks.stop, stop(gotoEnd) 1305 }; 1306 return "string" != typeof type && (gotoEnd = clearQueue, clearQueue = type, type = void 0), clearQueue && type !== !1 && this.queue(type || "fx", []), this.each(function() { 1307 var dequeue = !0, 1308 index = null != type && type + "queueHooks", 1309 timers = jQuery.timers, 1310 data = dataPriv.get(this); 1311 if (index) data[index] && data[index].stop && stopQueue(data[index]); 1312 else 1313 for (index in data) data[index] && data[index].stop && rrun.test(index) && stopQueue(data[index]); 1314 for (index = timers.length; index--;) timers[index].elem !== this || null != type && timers[index].queue !== type || (timers[index].anim.stop(gotoEnd), dequeue = !1, timers.splice(index, 1)); 1315 !dequeue && gotoEnd || jQuery.dequeue(this, type) 1316 }) 1317 }, 1318 finish: function(type) { 1319 return type !== !1 && (type = type || "fx"), this.each(function() { 1320 var index, data = dataPriv.get(this), 1321 queue = data[type + "queue"], 1322 hooks = data[type + "queueHooks"], 1323 timers = jQuery.timers, 1324 length = queue ? queue.length : 0; 1325 for (data.finish = !0, jQuery.queue(this, type, []), hooks && hooks.stop && hooks.stop.call(this, !0), index = timers.length; index--;) timers[index].elem === this && timers[index].queue === type && (timers[index].anim.stop(!0), timers.splice(index, 1)); 1326 for (index = 0; index < length; index++) queue[index] && queue[index].finish && queue[index].finish.call(this); 1327 delete data.finish 1328 }) 1329 } 1330 }), jQuery.each(["toggle", "show", "hide"], function(i, name) { 1331 var cssFn = jQuery.fn[name]; 1332 jQuery.fn[name] = function(speed, easing, callback) { return null == speed || "boolean" == typeof speed ? cssFn.apply(this, arguments) : this.animate(genFx(name, !0), speed, easing, callback) } 1333 }), jQuery.each({ slideDown: genFx("show"), slideUp: genFx("hide"), slideToggle: genFx("toggle"), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide" }, fadeToggle: { opacity: "toggle" } }, function(name, props) { jQuery.fn[name] = function(speed, easing, callback) { return this.animate(props, speed, easing, callback) } }), jQuery.timers = [], jQuery.fx.tick = function() { 1334 var timer, i = 0, 1335 timers = jQuery.timers; 1336 for (fxNow = jQuery.now(); i < timers.length; i++) timer = timers[i], timer() || timers[i] !== timer || timers.splice(i--, 1); 1337 timers.length || jQuery.fx.stop(), fxNow = void 0 1338 }, jQuery.fx.timer = function(timer) { jQuery.timers.push(timer), timer() ? jQuery.fx.start() : jQuery.timers.pop() }, jQuery.fx.interval = 13, jQuery.fx.start = function() { timerId || (timerId = window.requestAnimationFrame ? window.requestAnimationFrame(raf) : window.setInterval(jQuery.fx.tick, jQuery.fx.interval)) }, jQuery.fx.stop = function() { window.cancelAnimationFrame ? window.cancelAnimationFrame(timerId) : window.clearInterval(timerId), timerId = null }, jQuery.fx.speeds = { slow: 600, fast: 200, _default: 400 }
vendor: 8,401 bytes, lines 1338-1420
1338, jQuery.fn.delay = function(time, type) { 1339 return time = jQuery.fx ? jQuery.fx.speeds[time] || time : time, type = type || "fx", this.queue(type, function(next, hooks) { 1340 var timeout = window.setTimeout(next, time); 1341 hooks.stop = function() { window.clearTimeout(timeout) } 1342 }) 1343 }, 1344 function() { 1345 var input = document.createElement("input"), 1346 select = document.createElement("select"), 1347 opt = select.appendChild(document.createElement("option")); 1348 input.type = "checkbox", support.checkOn = "" !== input.value, support.optSelected = opt.selected, input = document.createElement("input"), input.value = "t", input.type = "radio", support.radioValue = "t" === input.value 1349 }(); 1350 var boolHook, attrHandle = jQuery.expr.attrHandle; 1351 jQuery.fn.extend({ attr: function(name, value) { return access(this, jQuery.attr, name, value, arguments.length > 1) }, removeAttr: function(name) { return this.each(function() { jQuery.removeAttr(this, name) }) } }), jQuery.extend({ 1352 attr: function(elem, name, value) { var ret, hooks, nType = elem.nodeType; if (3 !== nType && 8 !== nType && 2 !== nType) return "undefined" == typeof elem.getAttribute ? jQuery.prop(elem, name, value) : (1 === nType && jQuery.isXMLDoc(elem) || (hooks = jQuery.attrHooks[name.toLowerCase()] || (jQuery.expr.match.bool.test(name) ? boolHook : void 0)), void 0 !== value ? null === value ? void jQuery.removeAttr(elem, name) : hooks && "set" in hooks && void 0 !== (ret = hooks.set(elem, value, name)) ? ret : (elem.setAttribute(name, value + ""), value) : hooks && "get" in hooks && null !== (ret = hooks.get(elem, name)) ? ret : (ret = jQuery.find.attr(elem, name), null == ret ? void 0 : ret)) }, 1353 attrHooks: { type: { set: function(elem, value) { if (!support.radioValue && "radio" === value && jQuery.nodeName(elem, "input")) { var val = elem.value; return elem.setAttribute("type", value), val && (elem.value = val), value } } } }, 1354 removeAttr: function(elem, value) { 1355 var name, i = 0, 1356 attrNames = value && value.match(rnothtmlwhite); 1357 if (attrNames && 1 === elem.nodeType) 1358 for (; name = attrNames[i++];) elem.removeAttribute(name) 1359 } 1360 }), boolHook = { set: function(elem, value, name) { return value === !1 ? jQuery.removeAttr(elem, name) : elem.setAttribute(name, name), name } }, jQuery.each(jQuery.expr.match.bool.source.match(/\w+/g), function(i, name) { 1361 var getter = attrHandle[name] || jQuery.find.attr; 1362 attrHandle[name] = function(elem, name, isXML) { var ret, handle, lowercaseName = name.toLowerCase(); return isXML || (handle = attrHandle[lowercaseName], attrHandle[lowercaseName] = ret, ret = null != getter(elem, name, isXML) ? lowercaseName : null, attrHandle[lowercaseName] = handle), ret } 1363 }); 1364 var rfocusable = /^(?:input|select|textarea|button)$/i, 1365 rclickable = /^(?:a|area)$/i; 1366 jQuery.fn.extend({ prop: function(name, value) { return access(this, jQuery.prop, name, value, arguments.length > 1) }, removeProp: function(name) { return this.each(function() { delete this[jQuery.propFix[name] || name] }) } }), jQuery.extend({ prop: function(elem, name, value) { var ret, hooks, nType = elem.nodeType; if (3 !== nType && 8 !== nType && 2 !== nType) return 1 === nType && jQuery.isXMLDoc(elem) || (name = jQuery.propFix[name] || name, hooks = jQuery.propHooks[name]), void 0 !== value ? hooks && "set" in hooks && void 0 !== (ret = hooks.set(elem, value, name)) ? ret : elem[name] = value : hooks && "get" in hooks && null !== (ret = hooks.get(elem, name)) ? ret : elem[name] }, propHooks: { tabIndex: { get: function(elem) { var tabindex = jQuery.find.attr(elem, "tabindex"); return tabindex ? parseInt(tabindex, 10) : rfocusable.test(elem.nodeName) || rclickable.test(elem.nodeName) && elem.href ? 0 : -1 } } }, propFix: { for: "htmlFor", class: "className" } }), support.optSelected || (jQuery.propHooks.selected = { 1367 get: function(elem) { var parent = elem.parentNode; return parent && parent.parentNode && parent.parentNode.selectedIndex, null }, 1368 set: function(elem) { 1369 var parent = elem.parentNode; 1370 parent && (parent.selectedIndex, parent.parentNode && parent.parentNode.selectedIndex) 1371 } 1372 }), jQuery.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function() { jQuery.propFix[this.toLowerCase()] = this }), jQuery.fn.extend({ 1373 addClass: function(value) { 1374 var classes, elem, cur, curValue, clazz, j, finalValue, i = 0; 1375 if (jQuery.isFunction(value)) return this.each(function(j) { jQuery(this).addClass(value.call(this, j, getClass(this))) }); 1376 if ("string" == typeof value && value) 1377 for (classes = value.match(rnothtmlwhite) || []; elem = this[i++];) 1378 if (curValue = getClass(elem), cur = 1 === elem.nodeType && " " + stripAndCollapse(curValue) + " ") { 1379 for (j = 0; clazz = classes[j++];) cur.indexOf(" " + clazz + " ") < 0 && (cur += clazz + " "); 1380 finalValue = stripAndCollapse(cur), curValue !== finalValue && elem.setAttribute("class", finalValue) 1381 } 1382 return this 1383 }, 1384 removeClass: function(value) { 1385 var classes, elem, cur, curValue, clazz, j, finalValue, i = 0; 1386 if (jQuery.isFunction(value)) return this.each(function(j) { jQuery(this).removeClass(value.call(this, j, getClass(this))) }); 1387 if (!arguments.length) return this.attr("class", ""); 1388 if ("string" == typeof value && value) 1389 for (classes = value.match(rnothtmlwhite) || []; elem = this[i++];) 1390 if (curValue = getClass(elem), cur = 1 === elem.nodeType && " " + stripAndCollapse(curValue) + " ") { 1391 for (j = 0; clazz = classes[j++];) 1392 for (; cur.indexOf(" " + clazz + " ") > -1;) cur = cur.replace(" " + clazz + " ", " "); 1393 finalValue = stripAndCollapse(cur), curValue !== finalValue && elem.setAttribute("class", finalValue) 1394 } 1395 return this 1396 }, 1397 toggleClass: function(value, stateVal) { 1398 var type = typeof value; 1399 return "boolean" == typeof stateVal && "string" === type ? stateVal ? this.addClass(value) : this.removeClass(value) : jQuery.isFunction(value) ? this.each(function(i) { jQuery(this).toggleClass(value.call(this, i, getClass(this), stateVal), stateVal) }) : this.each(function() { 1400 var className, i, self, classNames; 1401 if ("string" === type) 1402 for (i = 0, self = jQuery(this), classNames = value.match(rnothtmlwhite) || []; className = classNames[i++];) self.hasClass(className) ? self.removeClass(className) : self.addClass(className); 1403 else void 0 !== value && "boolean" !== type || (className = getClass(this), className && dataPriv.set(this, "__className__", className), this.setAttribute && this.setAttribute("class", className || value === !1 ? "" : dataPriv.get(this, "__className__") || "")) 1404 }) 1405 }, 1406 hasClass: function(selector) { 1407 var className, elem, i = 0; 1408 for (className = " " + selector + " "; elem = this[i++];) 1409 if (1 === elem.nodeType && (" " + stripAndCollapse(getClass(elem)) + " ").indexOf(className) > -1) return !0; 1410 return !1 1411 } 1412 }); 1413 var rreturn = /\r/g; 1414 jQuery.fn.extend({ 1415 val: function(value) { 1416 var hooks, ret, isFunction, elem = this[0]; { 1417 if (arguments.length) return isFunction = jQuery.isFunction(value), this.each(function(i) { 1418 var val; 1419 1 === this.nodeType && (val = isFunction ? value.call(this, i, jQuery(this).val()) : value, null == val ? val = "" : "number" == typeof val ? val += "" : jQuery.isArray(val) && (val = jQuery.map(val, function(value) { return null == value ? "" : value + "" })), hooks = jQuery.valHooks[this.type] || jQuery.valHooks[this.nodeName.toLowerCase()], hooks && "set" in hooks && void 0 !== hooks.set(this, val, "value") || (this.value = val)) 1420 });
vendor: 29,405 bytes, lines 1421-1634
1421 if (elem) return hooks = jQuery.valHooks[elem.type] || jQuery.valHooks[elem.nodeName.toLowerCase()], hooks && "get" in hooks && void 0 !== (ret = hooks.get(elem, "value")) ? ret : (ret = elem.value, "string" == typeof ret ? ret.replace(rreturn, "") : null == ret ? "" : ret) 1422 } 1423 } 1424 }), jQuery.extend({ 1425 valHooks: { 1426 option: { get: function(elem) { var val = jQuery.find.attr(elem, "value"); return null != val ? val : stripAndCollapse(jQuery.text(elem)) } }, 1427 select: { 1428 get: function(elem) { 1429 var value, option, i, options = elem.options, 1430 index = elem.selectedIndex, 1431 one = "select-one" === elem.type, 1432 values = one ? null : [], 1433 max = one ? index + 1 : options.length; 1434 for (i = index < 0 ? max : one ? index : 0; i < max; i++) 1435 if (option = options[i], (option.selected || i === index) && !option.disabled && (!option.parentNode.disabled || !jQuery.nodeName(option.parentNode, "optgroup"))) { 1436 if (value = jQuery(option).val(), one) return value; 1437 values.push(value) 1438 } 1439 return values 1440 }, 1441 set: function(elem, value) { for (var optionSet, option, options = elem.options, values = jQuery.makeArray(value), i = options.length; i--;) option = options[i], (option.selected = jQuery.inArray(jQuery.valHooks.option.get(option), values) > -1) && (optionSet = !0); return optionSet || (elem.selectedIndex = -1), values } 1442 } 1443 } 1444 }), jQuery.each(["radio", "checkbox"], function() { jQuery.valHooks[this] = { set: function(elem, value) { if (jQuery.isArray(value)) return elem.checked = jQuery.inArray(jQuery(elem).val(), value) > -1 } }, support.checkOn || (jQuery.valHooks[this].get = function(elem) { return null === elem.getAttribute("value") ? "on" : elem.value }) }); 1445 var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/; 1446 jQuery.extend(jQuery.event, { 1447 trigger: function(event, data, elem, onlyHandlers) { 1448 var i, cur, tmp, bubbleType, ontype, handle, special, eventPath = [elem || document], 1449 type = hasOwn.call(event, "type") ? event.type : event, 1450 namespaces = hasOwn.call(event, "namespace") ? event.namespace.split(".") : []; 1451 if (cur = tmp = elem = elem || document, 3 !== elem.nodeType && 8 !== elem.nodeType && !rfocusMorph.test(type + jQuery.event.triggered) && (type.indexOf(".") > -1 && (namespaces = type.split("."), type = namespaces.shift(), namespaces.sort()), ontype = type.indexOf(":") < 0 && "on" + type, event = event[jQuery.expando] ? event : new jQuery.Event(type, "object" == typeof event && event), event.isTrigger = onlyHandlers ? 2 : 3, event.namespace = namespaces.join("."), event.rnamespace = event.namespace ? new RegExp("(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, event.result = void 0, event.target || (event.target = elem), data = null == data ? [event] : jQuery.makeArray(data, [event]), special = jQuery.event.special[type] || {}, onlyHandlers || !special.trigger || special.trigger.apply(elem, data) !== !1)) { 1452 if (!onlyHandlers && !special.noBubble && !jQuery.isWindow(elem)) { 1453 for (bubbleType = special.delegateType || type, rfocusMorph.test(bubbleType + type) || (cur = cur.parentNode); cur; cur = cur.parentNode) eventPath.push(cur), tmp = cur; 1454 tmp === (elem.ownerDocument || document) && eventPath.push(tmp.defaultView || tmp.parentWindow || window) 1455 } 1456 for (i = 0; 1457 (cur = eventPath[i++]) && !event.isPropagationStopped();) event.type = i > 1 ? bubbleType : special.bindType || type, handle = (dataPriv.get(cur, "events") || {})[event.type] && dataPriv.get(cur, "handle"), handle && handle.apply(cur, data), handle = ontype && cur[ontype], handle && handle.apply && acceptData(cur) && (event.result = handle.apply(cur, data), event.result === !1 && event.preventDefault()); 1458 return event.type = type, onlyHandlers || event.isDefaultPrevented() || special._default && special._default.apply(eventPath.pop(), data) !== !1 || !acceptData(elem) || ontype && jQuery.isFunction(elem[type]) && !jQuery.isWindow(elem) && (tmp = elem[ontype], tmp && (elem[ontype] = null), jQuery.event.triggered = type, elem[type](), jQuery.event.triggered = void 0, tmp && (elem[ontype] = tmp)), event.result 1459 } 1460 }, 1461 simulate: function(type, elem, event) { 1462 var e = jQuery.extend(new jQuery.Event, event, { type: type, isSimulated: !0 }); 1463 jQuery.event.trigger(e, null, elem) 1464 } 1465 }), jQuery.fn.extend({ trigger: function(type, data) { return this.each(function() { jQuery.event.trigger(type, data, this) }) }, triggerHandler: function(type, data) { var elem = this[0]; if (elem) return jQuery.event.trigger(type, data, elem, !0) } }), jQuery.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "), function(i, name) { jQuery.fn[name] = function(data, fn) { return arguments.length > 0 ? this.on(name, null, data, fn) : this.trigger(name) } }), jQuery.fn.extend({ hover: function(fnOver, fnOut) { return this.mouseenter(fnOver).mouseleave(fnOut || fnOver) } }), support.focusin = "onfocusin" in window, support.focusin || jQuery.each({ focus: "focusin", blur: "focusout" }, function(orig, fix) { 1466 var handler = function(event) { jQuery.event.simulate(fix, event.target, jQuery.event.fix(event)) }; 1467 jQuery.event.special[fix] = { 1468 setup: function() { 1469 var doc = this.ownerDocument || this, 1470 attaches = dataPriv.access(doc, fix); 1471 attaches || doc.addEventListener(orig, handler, !0), dataPriv.access(doc, fix, (attaches || 0) + 1) 1472 }, 1473 teardown: function() { 1474 var doc = this.ownerDocument || this, 1475 attaches = dataPriv.access(doc, fix) - 1; 1476 attaches ? dataPriv.access(doc, fix, attaches) : (doc.removeEventListener(orig, handler, !0), dataPriv.remove(doc, fix)) 1477 } 1478 } 1479 }); 1480 var location = window.location, 1481 nonce = jQuery.now(), 1482 rquery = /\?/; 1483 jQuery.parseXML = function(data) { var xml; if (!data || "string" != typeof data) return null; try { xml = (new window.DOMParser).parseFromString(data, "text/xml") } catch (e) { xml = void 0 } return xml && !xml.getElementsByTagName("parsererror").length || jQuery.error("Invalid XML: " + data), xml }; 1484 var rbracket = /\[\]$/, 1485 rCRLF = /\r?\n/g, 1486 rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i, 1487 rsubmittable = /^(?:input|select|textarea|keygen)/i; 1488 jQuery.param = function(a, traditional) { 1489 var prefix, s = [], 1490 add = function(key, valueOrFunction) { 1491 var value = jQuery.isFunction(valueOrFunction) ? valueOrFunction() : valueOrFunction; 1492 s[s.length] = encodeURIComponent(key) + "=" + encodeURIComponent(null == value ? "" : value) 1493 }; 1494 if (jQuery.isArray(a) || a.jquery && !jQuery.isPlainObject(a)) jQuery.each(a, function() { add(this.name, this.value) }); 1495 else 1496 for (prefix in a) buildParams(prefix, a[prefix], traditional, add); 1497 return s.join("&") 1498 }, jQuery.fn.extend({ serialize: function() { return jQuery.param(this.serializeArray()) }, serializeArray: function() { return this.map(function() { var elements = jQuery.prop(this, "elements"); return elements ? jQuery.makeArray(elements) : this }).filter(function() { var type = this.type; return this.name && !jQuery(this).is(":disabled") && rsubmittable.test(this.nodeName) && !rsubmitterTypes.test(type) && (this.checked || !rcheckableType.test(type)) }).map(function(i, elem) { var val = jQuery(this).val(); return null == val ? null : jQuery.isArray(val) ? jQuery.map(val, function(val) { return { name: elem.name, value: val.replace(rCRLF, "\r\n") } }) : { name: elem.name, value: val.replace(rCRLF, "\r\n") } }).get() } }); 1499 var r20 = /%20/g, 1500 rhash = /#.*$/, 1501 rantiCache = /([?&])_=[^&]*/, 1502 rheaders = /^(.*?):[ \t]*([^\r\n]*)$/gm, 1503 rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, 1504 rnoContent = /^(?:GET|HEAD)$/, 1505 rprotocol = /^\/\//, 1506 prefilters = {}, 1507 transports = {}, 1508 allTypes = "*/".concat("*"), 1509 originAnchor = document.createElement("a"); 1510 originAnchor.href = location.href, jQuery.extend({ 1511 active: 0, 1512 lastModified: {}, 1513 etag: {}, 1514 ajaxSettings: { url: location.href, type: "GET", isLocal: rlocalProtocol.test(location.protocol), global: !0, processData: !0, async: !0, contentType: "application/x-www-form-urlencoded; charset=UTF-8", accepts: { "*": allTypes, text: "text/plain", html: "text/html", xml: "application/xml, text/xml", json: "application/json, text/javascript" }, contents: { xml: /\bxml\b/, html: /\bhtml/, json: /\bjson\b/ }, responseFields: { xml: "responseXML", text: "responseText", json: "responseJSON" }, converters: { "* text": String, "text html": !0, "text json": JSON.parse, "text xml": jQuery.parseXML }, flatOptions: { url: !0, context: !0 } }, 1515 ajaxSetup: function(target, settings) { return settings ? ajaxExtend(ajaxExtend(target, jQuery.ajaxSettings), settings) : ajaxExtend(jQuery.ajaxSettings, target) }, 1516 ajaxPrefilter: addToPrefiltersOrTransports(prefilters), 1517 ajaxTransport: addToPrefiltersOrTransports(transports), 1518 ajax: function(url, options) { 1519 function done(status, nativeStatusText, responses, headers) { 1520 var isSuccess, success, error, response, modified, statusText = nativeStatusText; 1521 completed || (completed = !0, timeoutTimer && window.clearTimeout(timeoutTimer), transport = void 0, responseHeadersString = headers || "", jqXHR.readyState = status > 0 ? 4 : 0, isSuccess = status >= 200 && status < 300 || 304 === status, responses && (response = ajaxHandleResponses(s, jqXHR, responses)), response = ajaxConvert(s, response, jqXHR, isSuccess), isSuccess ? (s.ifModified && (modified = jqXHR.getResponseHeader("Last-Modified"), modified && (jQuery.lastModified[cacheURL] = modified), modified = jqXHR.getResponseHeader("etag"), modified && (jQuery.etag[cacheURL] = modified)), 204 === status || "HEAD" === s.type ? statusText = "nocontent" : 304 === status ? statusText = "notmodified" : (statusText = response.state, success = response.data, error = response.error, isSuccess = !error)) : (error = statusText, !status && statusText || (statusText = "error", status < 0 && (status = 0))), jqXHR.status = status, jqXHR.statusText = (nativeStatusText || statusText) + "", isSuccess ? deferred.resolveWith(callbackContext, [success, statusText, jqXHR]) : deferred.rejectWith(callbackContext, [jqXHR, statusText, error]), jqXHR.statusCode(statusCode), statusCode = void 0, fireGlobals && globalEventContext.trigger(isSuccess ? "ajaxSuccess" : "ajaxError", [jqXHR, s, isSuccess ? success : error]), completeDeferred.fireWith(callbackContext, [jqXHR, statusText]), fireGlobals && (globalEventContext.trigger("ajaxComplete", [jqXHR, s]), --jQuery.active || jQuery.event.trigger("ajaxStop"))) 1522 } 1523 "object" == typeof url && (options = url, url = void 0), options = options || {}; 1524 var transport, cacheURL, responseHeadersString, responseHeaders, timeoutTimer, urlAnchor, completed, fireGlobals, i, uncached, s = jQuery.ajaxSetup({}, options), 1525 callbackContext = s.context || s, 1526 globalEventContext = s.context && (callbackContext.nodeType || callbackContext.jquery) ? jQuery(callbackContext) : jQuery.event, 1527 deferred = jQuery.Deferred(), 1528 completeDeferred = jQuery.Callbacks("once memory"), 1529 statusCode = s.statusCode || {}, 1530 requestHeaders = {}, 1531 requestHeadersNames = {}, 1532 strAbort = "canceled", 1533 jqXHR = { 1534 readyState: 0, 1535 getResponseHeader: function(key) { 1536 var match; 1537 if (completed) { 1538 if (!responseHeaders) 1539 for (responseHeaders = {}; match = rheaders.exec(responseHeadersString);) responseHeaders[match[1].toLowerCase()] = match[2]; 1540 match = responseHeaders[key.toLowerCase()] 1541 } 1542 return null == match ? null : match 1543 }, 1544 getAllResponseHeaders: function() { return completed ? responseHeadersString : null }, 1545 setRequestHeader: function(name, value) { return null == completed && (name = requestHeadersNames[name.toLowerCase()] = requestHeadersNames[name.toLowerCase()] || name, requestHeaders[name] = value), this }, 1546 overrideMimeType: function(type) { return null == completed && (s.mimeType = type), this }, 1547 statusCode: function(map) { 1548 var code; 1549 if (map) 1550 if (completed) jqXHR.always(map[jqXHR.status]); 1551 else 1552 for (code in map) statusCode[code] = [statusCode[code], map[code]]; 1553 return this 1554 }, 1555 abort: function(statusText) { var finalText = statusText || strAbort; return transport && transport.abort(finalText), done(0, finalText), this } 1556 }; 1557 if (deferred.promise(jqXHR), s.url = ((url || s.url || location.href) + "").replace(rprotocol, location.protocol + "//"), s.type = options.method || options.type || s.method || s.type, s.dataTypes = (s.dataType || "*").toLowerCase().match(rnothtmlwhite) || [""], null == s.crossDomain) { urlAnchor = document.createElement("a"); try { urlAnchor.href = s.url, urlAnchor.href = urlAnchor.href, s.crossDomain = originAnchor.protocol + "//" + originAnchor.host != urlAnchor.protocol + "//" + urlAnchor.host } catch (e) { s.crossDomain = !0 } } 1558 if (s.data && s.processData && "string" != typeof s.data && (s.data = jQuery.param(s.data, s.traditional)), inspectPrefiltersOrTransports(prefilters, s, options, jqXHR), completed) return jqXHR; 1559 fireGlobals = jQuery.event && s.global, fireGlobals && 0 === jQuery.active++ && jQuery.event.trigger("ajaxStart"), s.type = s.type.toUpperCase(), s.hasContent = !rnoContent.test(s.type), cacheURL = s.url.replace(rhash, ""), s.hasContent ? s.data && s.processData && 0 === (s.contentType || "").indexOf("application/x-www-form-urlencoded") && (s.data = s.data.replace(r20, "+")) : (uncached = s.url.slice(cacheURL.length), s.data && (cacheURL += (rquery.test(cacheURL) ? "&" : "?") + s.data, delete s.data), s.cache === !1 && (cacheURL = cacheURL.replace(rantiCache, "$1"), uncached = (rquery.test(cacheURL) ? "&" : "?") + "_=" + nonce++ + uncached), s.url = cacheURL + uncached), s.ifModified && (jQuery.lastModified[cacheURL] && jqXHR.setRequestHeader("If-Modified-Since", jQuery.lastModified[cacheURL]), jQuery.etag[cacheURL] && jqXHR.setRequestHeader("If-None-Match", jQuery.etag[cacheURL])), (s.data && s.hasContent && s.contentType !== !1 || options.contentType) && jqXHR.setRequestHeader("Content-Type", s.contentType), jqXHR.setRequestHeader("Accept", s.dataTypes[0] && s.accepts[s.dataTypes[0]] ? s.accepts[s.dataTypes[0]] + ("*" !== s.dataTypes[0] ? ", " + allTypes + "; q=0.01" : "") : s.accepts["*"]); 1560 for (i in s.headers) jqXHR.setRequestHeader(i, s.headers[i]); 1561 if (s.beforeSend && (s.beforeSend.call(callbackContext, jqXHR, s) === !1 || completed)) return jqXHR.abort(); 1562 if (strAbort = "abort", completeDeferred.add(s.complete), jqXHR.done(s.success), jqXHR.fail(s.error), transport = inspectPrefiltersOrTransports(transports, s, options, jqXHR)) { 1563 if (jqXHR.readyState = 1, fireGlobals && globalEventContext.trigger("ajaxSend", [jqXHR, s]), completed) return jqXHR; 1564 s.async && s.timeout > 0 && (timeoutTimer = window.setTimeout(function() { jqXHR.abort("timeout") }, s.timeout)); 1565 try { completed = !1, transport.send(requestHeaders, done) } catch (e) { 1566 if (completed) throw e; 1567 done(-1, e) 1568 } 1569 } else done(-1, "No Transport"); 1570 return jqXHR 1571 }, 1572 getJSON: function(url, data, callback) { return jQuery.get(url, data, callback, "json") }, 1573 getScript: function(url, callback) { return jQuery.get(url, void 0, callback, "script") } 1574 }), jQuery.each(["get", "post"], function(i, method) { jQuery[method] = function(url, data, callback, type) { return jQuery.isFunction(data) && (type = type || callback, callback = data, data = void 0), jQuery.ajax(jQuery.extend({ url: url, type: method, dataType: type, data: data, success: callback }, jQuery.isPlainObject(url) && url)) } }), jQuery._evalUrl = function(url) { return jQuery.ajax({ url: url, type: "GET", dataType: "script", cache: !0, async: !1, global: !1, throws: !0 }) }, jQuery.fn.extend({ 1575 wrapAll: function(html) { var wrap; return this[0] && (jQuery.isFunction(html) && (html = html.call(this[0])), wrap = jQuery(html, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && wrap.insertBefore(this[0]), wrap.map(function() { for (var elem = this; elem.firstElementChild;) elem = elem.firstElementChild; return elem }).append(this)), this }, 1576 wrapInner: function(html) { 1577 return jQuery.isFunction(html) ? this.each(function(i) { jQuery(this).wrapInner(html.call(this, i)) }) : this.each(function() { 1578 var self = jQuery(this), 1579 contents = self.contents(); 1580 contents.length ? contents.wrapAll(html) : self.append(html) 1581 }) 1582 }, 1583 wrap: function(html) { var isFunction = jQuery.isFunction(html); return this.each(function(i) { jQuery(this).wrapAll(isFunction ? html.call(this, i) : html) }) }, 1584 unwrap: function(selector) { return this.parent(selector).not("body").each(function() { jQuery(this).replaceWith(this.childNodes) }), this } 1585 }), jQuery.expr.pseudos.hidden = function(elem) { return !jQuery.expr.pseudos.visible(elem) }, jQuery.expr.pseudos.visible = function(elem) { return !!(elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length) }, jQuery.ajaxSettings.xhr = function() { try { return new window.XMLHttpRequest } catch (e) {} }; 1586 var xhrSuccessStatus = { 0: 200, 1223: 204 }, 1587 xhrSupported = jQuery.ajaxSettings.xhr(); 1588 support.cors = !!xhrSupported && "withCredentials" in xhrSupported, support.ajax = xhrSupported = !!xhrSupported, jQuery.ajaxTransport(function(options) { 1589 var callback, errorCallback; 1590 if (support.cors || xhrSupported && !options.crossDomain) return { 1591 send: function(headers, complete) { 1592 var i, xhr = options.xhr(); 1593 if (xhr.open(options.type, options.url, options.async, options.username, options.password), options.xhrFields) 1594 for (i in options.xhrFields) xhr[i] = options.xhrFields[i]; 1595 options.mimeType && xhr.overrideMimeType && xhr.overrideMimeType(options.mimeType), options.crossDomain || headers["X-Requested-With"] || (headers["X-Requested-With"] = "XMLHttpRequest"); 1596 for (i in headers) xhr.setRequestHeader(i, headers[i]); 1597 callback = function(type) { return function() { callback && (callback = errorCallback = xhr.onload = xhr.onerror = xhr.onabort = xhr.onreadystatechange = null, "abort" === type ? xhr.abort() : "error" === type ? "number" != typeof xhr.status ? complete(0, "error") : complete(xhr.status, xhr.statusText) : complete(xhrSuccessStatus[xhr.status] || xhr.status, xhr.statusText, "text" !== (xhr.responseType || "text") || "string" != typeof xhr.responseText ? { binary: xhr.response } : { text: xhr.responseText }, xhr.getAllResponseHeaders())) } }, xhr.onload = callback(), errorCallback = xhr.onerror = callback("error"), void 0 !== xhr.onabort ? xhr.onabort = errorCallback : xhr.onreadystatechange = function() { 4 === xhr.readyState && window.setTimeout(function() { callback && errorCallback() }) }, callback = callback("abort"); 1598 try { xhr.send(options.hasContent && options.data || null) } catch (e) { if (callback) throw e } 1599 }, 1600 abort: function() { callback && callback() } 1601 } 1602 }), jQuery.ajaxPrefilter(function(s) { s.crossDomain && (s.contents.script = !1) }), jQuery.ajaxSetup({ accepts: { script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" }, contents: { script: /\b(?:java|ecma)script\b/ }, converters: { "text script": function(text) { return jQuery.globalEval(text), text } } }), jQuery.ajaxPrefilter("script", function(s) { void 0 === s.cache && (s.cache = !1), s.crossDomain && (s.type = "GET") }), jQuery.ajaxTransport("script", function(s) { if (s.crossDomain) { var script, callback; return { send: function(_, complete) { script = jQuery("<script>").prop({ charset: s.scriptCharset, src: s.url }).on("load error", callback = function(evt) { script.remove(), callback = null, evt && complete("error" === evt.type ? 404 : 200, evt.type) }), document.head.appendChild(script[0]) }, abort: function() { callback && callback() } } } }); 1603 var oldCallbacks = [], 1604 rjsonp = /(=)\?(?=&|$)|\?\?/; 1605 jQuery.ajaxSetup({ jsonp: "callback", jsonpCallback: function() { var callback = oldCallbacks.pop() || jQuery.expando + "_" + nonce++; return this[callback] = !0, callback } }), jQuery.ajaxPrefilter("json jsonp", function(s, originalSettings, jqXHR) { var callbackName, overwritten, responseContainer, jsonProp = s.jsonp !== !1 && (rjsonp.test(s.url) ? "url" : "string" == typeof s.data && 0 === (s.contentType || "").indexOf("application/x-www-form-urlencoded") && rjsonp.test(s.data) && "data"); if (jsonProp || "jsonp" === s.dataTypes[0]) return callbackName = s.jsonpCallback = jQuery.isFunction(s.jsonpCallback) ? s.jsonpCallback() : s.jsonpCallback, jsonProp ? s[jsonProp] = s[jsonProp].replace(rjsonp, "$1" + callbackName) : s.jsonp !== !1 && (s.url += (rquery.test(s.url) ? "&" : "?") + s.jsonp + "=" + callbackName), s.converters["script json"] = function() { return responseContainer || jQuery.error(callbackName + " was not called"), responseContainer[0] }, s.dataTypes[0] = "json", overwritten = window[callbackName], window[callbackName] = function() { responseContainer = arguments }, jqXHR.always(function() { void 0 === overwritten ? jQuery(window).removeProp(callbackName) : window[callbackName] = overwritten, s[callbackName] && (s.jsonpCallback = originalSettings.jsonpCallback, oldCallbacks.push(callbackName)), responseContainer && jQuery.isFunction(overwritten) && overwritten(responseContainer[0]), responseContainer = overwritten = void 0 }), "script" }), support.createHTMLDocument = function() { var body = document.implementation.createHTMLDocument("").body; return body.innerHTML = "<form></form><form></form>", 2 === body.childNodes.length }(), jQuery.parseHTML = function(data, context, keepScripts) { if ("string" != typeof data) return []; "boolean" == typeof context && (keepScripts = context, context = !1); var base, parsed, scripts; return context || (support.createHTMLDocument ? (context = document.implementation.createHTMLDocument(""), base = context.createElement("base"), base.href = document.location.href, context.head.appendChild(base)) : context = document), parsed = rsingleTag.exec(data), scripts = !keepScripts && [], parsed ? [context.createElement(parsed[1])] : (parsed = buildFragment([data], context, scripts), scripts && scripts.length && jQuery(scripts).remove(), jQuery.merge([], parsed.childNodes)) }, jQuery.fn.load = function(url, params, callback) { 1606 var selector, type, response, self = this, 1607 off = url.indexOf(" "); 1608 return off > -1 && (selector = stripAndCollapse(url.slice(off)), url = url.slice(0, off)), jQuery.isFunction(params) ? (callback = params, params = void 0) : params && "object" == typeof params && (type = "POST"), self.length > 0 && jQuery.ajax({ url: url, type: type || "GET", dataType: "html", data: params }).done(function(responseText) { response = arguments, self.html(selector ? jQuery("<div>").append(jQuery.parseHTML(responseText)).find(selector) : responseText) }).always(callback && function(jqXHR, status) { self.each(function() { callback.apply(this, response || [jqXHR.responseText, status, jqXHR]) }) }), this 1609 }, jQuery.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function(i, type) { jQuery.fn[type] = function(fn) { return this.on(type, fn) } }), jQuery.expr.pseudos.animated = function(elem) { return jQuery.grep(jQuery.timers, function(fn) { return elem === fn.elem }).length }, jQuery.offset = { 1610 setOffset: function(elem, options, i) { 1611 var curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition, position = jQuery.css(elem, "position"), 1612 curElem = jQuery(elem), 1613 props = {}; 1614 "static" === position && (elem.style.position = "relative"), curOffset = curElem.offset(), curCSSTop = jQuery.css(elem, "top"), curCSSLeft = jQuery.css(elem, "left"), calculatePosition = ("absolute" === position || "fixed" === position) && (curCSSTop + curCSSLeft).indexOf("auto") > -1, calculatePosition ? (curPosition = curElem.position(), curTop = curPosition.top, curLeft = curPosition.left) : (curTop = parseFloat(curCSSTop) || 0, curLeft = parseFloat(curCSSLeft) || 0), jQuery.isFunction(options) && (options = options.call(elem, i, jQuery.extend({}, curOffset))), null != options.top && (props.top = options.top - curOffset.top + curTop), null != options.left && (props.left = options.left - curOffset.left + curLeft), "using" in options ? options.using.call(elem, props) : curElem.css(props) 1615 } 1616 }, jQuery.fn.extend({ 1617 offset: function(options) { if (arguments.length) return void 0 === options ? this : this.each(function(i) { jQuery.offset.setOffset(this, options, i) }); var docElem, win, rect, doc, elem = this[0]; if (elem) return elem.getClientRects().length ? (rect = elem.getBoundingClientRect(), rect.width || rect.height ? (doc = elem.ownerDocument, win = getWindow(doc), docElem = doc.documentElement, { top: rect.top + win.pageYOffset - docElem.clientTop, left: rect.left + win.pageXOffset - docElem.clientLeft }) : rect) : { top: 0, left: 0 } }, 1618 position: function() { 1619 if (this[0]) { 1620 var offsetParent, offset, elem = this[0], 1621 parentOffset = { top: 0, left: 0 }; 1622 return "fixed" === jQuery.css(elem, "position") ? offset = elem.getBoundingClientRect() : (offsetParent = this.offsetParent(), offset = this.offset(), jQuery.nodeName(offsetParent[0], "html") || (parentOffset = offsetParent.offset()), parentOffset = { top: parentOffset.top + jQuery.css(offsetParent[0], "borderTopWidth", !0), left: parentOffset.left + jQuery.css(offsetParent[0], "borderLeftWidth", !0) }), { top: offset.top - parentOffset.top - jQuery.css(elem, "marginTop", !0), left: offset.left - parentOffset.left - jQuery.css(elem, "marginLeft", !0) } 1623 } 1624 }, 1625 offsetParent: function() { return this.map(function() { for (var offsetParent = this.offsetParent; offsetParent && "static" === jQuery.css(offsetParent, "position");) offsetParent = offsetParent.offsetParent; return offsetParent || documentElement }) } 1626 }), jQuery.each({ scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function(method, prop) { 1627 var top = "pageYOffset" === prop; 1628 jQuery.fn[method] = function(val) { return access(this, function(elem, method, val) { var win = getWindow(elem); return void 0 === val ? win ? win[prop] : elem[method] : void(win ? win.scrollTo(top ? win.pageXOffset : val, top ? val : win.pageYOffset) : elem[method] = val) }, method, val, arguments.length) } 1629 }), jQuery.each(["top", "left"], function(i, prop) { jQuery.cssHooks[prop] = addGetHookIf(support.pixelPosition, function(elem, computed) { if (computed) return computed = curCSS(elem, prop), rnumnonpx.test(computed) ? jQuery(elem).position()[prop] + "px" : computed }) }), jQuery.each({ Height: "height", Width: "width" }, function(name, type) { 1630 jQuery.each({ padding: "inner" + name, content: type, "": "outer" + name }, function(defaultExtra, funcName) { 1631 jQuery.fn[funcName] = function(margin, value) { 1632 var chainable = arguments.length && (defaultExtra || "boolean" != typeof margin), 1633 extra = defaultExtra || (margin === !0 || value === !0 ? "margin" : "border"); 1634 return access(this, function(elem, type, value) { var doc; return jQuery.isWindow(elem) ? 0 === funcName.indexOf("outer") ? elem["inner" + n
1634ame] : elem.document.documentElement["client" + name] : 9 === elem.nodeType ? (doc = elem.documentElement, Math.max(elem.body["scroll" + name], doc["scroll" + name], elem.body["offset" + name], doc["offset" + name], doc["client" + name])) : void 0 === value ? jQuery.css(elem, type, extra) : jQuery.style(elem, type, value, extra) }, type, chainable ? margin : void 0, chainable) 1635 } 1636 }) 1637 }), jQuery.fn.extend({ bind: function(types, data, fn) { return this.on(types, null, data, fn) }, unbind: function(types, fn) { return this.off(types, null, fn) }, delegate: function(selector, types, data, fn) { return this.on(types, selector, data, fn) }, undelegate: function(selector, types, fn) { return 1 === arguments.length ? this.off(selector, "**") : this.off(types, selector || "**", fn) } }), jQuery.parseJSON = JSON.parse, "function" == typeof define && define.amd && define("jquery", [], function() { return jQuery }); 1638 var _jQuery = window.jQuery, 1639 _$ = window.$; 1640 return jQuery.noConflict = function(deep) { return window.$ === jQuery && (window.$ = _$), deep && window.jQuery === jQuery && (window.jQuery = _jQuery), jQuery }, noGlobal || (window.jQuery = window.$ = jQuery), jQuery 1641}), 1642function(jQuery, window) { 1643 "use strict"; 1644 1645 function migrateWarn(msg) { 1646 var console = window.console; 1647 warnedAbout[msg] || (warnedAbout[msg] = !0, jQuery.migrateWarnings.push(msg), console && console.warn && !jQuery.migrateMute && (console.warn("JQMIGRATE: " + msg), jQuery.migrateTrace && console.trace && console.trace())) 1648 } 1649 1650 function migrateWarnProp(obj, prop, value, msg) { Object.defineProperty(obj, prop, { configurable: !0, enumerable: !0, get: function() { return migrateWarn(msg), value } }) } 1651 jQuery.migrateVersion = "3.0.0", jQuery.migrateMute = !0, 1652 function() { 1653 var log = window.console && window.console.log && function() { window.console.log.apply(window.console, arguments) }, 1654 rbadVersions = /^[12]\./; 1655 log && (jQuery && !rbadVersions.test(jQuery.fn.jquery) || log("JQMIGRATE: jQuery 3.0.0+ REQUIRED"), jQuery.migrateWarnings && log("JQMIGRATE: Migrate plugin loaded multiple times"), jQuery.migrateMute || log("JQMIGRATE: Migrate is installed" + (jQuery.migrateMute ? "" : " with logging active") + ", version " + jQuery.migrateVersion)) 1656 }(); 1657 var warnedAbout = {}; 1658 jQuery.migrateWarnings = [], void 0 === jQuery.migrateTrace && (jQuery.migrateTrace = !0), jQuery.migrateReset = function() { warnedAbout = {}, jQuery.migrateWarnings.length = 0 }, "BackCompat" === document.compatMode && migrateWarn("jQuery is not compatible with Quirks Mode"); 1659 var oldInit = jQuery.fn.init, 1660 oldIsNumeric = jQuery.isNumeric, 1661 oldFind = jQuery.find, 1662 rattrHashTest = /\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/, 1663 rattrHashGlob = /\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/g; 1664 jQuery.fn.init = function(arg1) { var args = Array.prototype.slice.call(arguments); return "string" == typeof arg1 && "#" === arg1 && (migrateWarn("jQuery( '#' ) is not a valid selector"), args[0] = []), oldInit.apply(this, args) }, jQuery.fn.init.prototype = jQuery.fn, jQuery.find = function(selector) { 1665 var args = Array.prototype.slice.call(arguments); 1666 if ("string" == typeof selector && rattrHashTest.test(selector)) try { document.querySelector(selector) } catch (err1) { selector = selector.replace(rattrHashGlob, function(_, attr, op, value) { return "[" + attr + op + '"' + value + '"]' }); try { document.querySelector(selector), migrateWarn("Attribute selector with '#' must be quoted: " + args[0]), args[0] = selector } catch (err2) { migrateWarn("Attribute selector with '#' was not fixed: " + args[0]) } } 1667 return oldFind.apply(this, args) 1668 }; 1669 var findProp; 1670 for (findProp in oldFind) Object.prototype.hasOwnProperty.call(oldFind, findProp) && (jQuery.find[findProp] = oldFind[findProp]); 1671 jQuery.fn.size = function() { return migrateWarn("jQuery.fn.size() is deprecated; use the .length property"), this.length }, jQuery.parseJSON = function() { return migrateWarn("jQuery.parseJSON is deprecated; use JSON.parse"), JSON.parse.apply(null, arguments) }, jQuery.isNumeric = function(val) { 1672 function isNumeric2(obj) { var realStringObj = obj && obj.toString(); return !jQuery.isArray(obj) && realStringObj - parseFloat(realStringObj) + 1 >= 0 } 1673 var newValue = oldIsNumeric(val), 1674 oldValue = isNumeric2(val); 1675 return newValue !== oldValue && migrateWarn("jQuery.isNumeric() should not be called on constructed objects"), oldValue 1676 }, migrateWarnProp(jQuery, "unique", jQuery.uniqueSort, "jQuery.unique is deprecated, use jQuery.uniqueSort"), migrateWarnProp(jQuery.expr, "filters", jQuery.expr.pseudos, "jQuery.expr.filters is now jQuery.expr.pseudos"), migrateWarnProp(jQuery.expr, ":", jQuery.expr.pseudos, 'jQuery.expr[":"] is now jQuery.expr.pseudos'); 1677 var oldAjax = jQuery.ajax; 1678 jQuery.ajax = function() { var jQXHR = oldAjax.apply(this, arguments); return jQXHR.promise && (migrateWarnProp(jQXHR, "success", jQXHR.done, "jQXHR.success is deprecated and removed"), migrateWarnProp(jQXHR, "error", jQXHR.fail, "jQXHR.error is deprecated and removed"), migrateWarnProp(jQXHR, "complete", jQXHR.always, "jQXHR.complete is deprecated and removed")), jQXHR }; 1679 var oldRemoveAttr = jQuery.fn.removeAttr, 1680 oldToggleClass = jQuery.fn.toggleClass, 1681 rmatchNonSpace = /\S+/g; 1682 jQuery.fn.removeAttr = function(name) { var self = this; return jQuery.each(name.match(rmatchNonSpace), function(i, attr) { jQuery.expr.match.bool.test(attr) && (migrateWarn("jQuery.fn.removeAttr no longer sets boolean properties: " + attr), self.prop(attr, !1)) }), oldRemoveAttr.apply(this, arguments) }, jQuery.fn.toggleClass = function(state) { 1683 return void 0 !== state && "boolean" != typeof state ? oldToggleClass.apply(this, arguments) : (migrateWarn("jQuery.fn.toggleClass( boolean ) is deprecated"), this.each(function() { 1684 var className = this.getAttribute && this.getAttribute("class") || ""; 1685 className && jQuery.data(this, "__className__", className), this.setAttribute && this.setAttribute("class", className || state === !1 ? "" : jQuery.data(this, "__className__") || "") 1686 })) 1687 }; 1688 var internalSwapCall = !1; 1689 jQuery.swap && jQuery.each(["height", "width", "reliableMarginRight"], function(_, name) { 1690 var oldHook = jQuery.cssHooks[name] && jQuery.cssHooks[name].get; 1691 oldHook && (jQuery.cssHooks[name].get = function() { var ret; return internalSwapCall = !0, ret = oldHook.apply(this, arguments), internalSwapCall = !1, ret }) 1692 }), jQuery.swap = function(elem, options, callback, args) { 1693 var ret, name, old = {}; 1694 internalSwapCall || migrateWarn("jQuery.swap() is undocumented and deprecated"); 1695 for (name in options) old[name] = elem.style[name], elem.style[name] = options[name]; 1696 ret = callback.apply(elem, args || []); 1697 for (name in options) elem.style[name] = old[name]; 1698 return ret 1699 }; 1700 var oldData = jQuery.data; 1701 jQuery.data = function(elem, name, value) { var curData; return name && name !== jQuery.camelCase(name) && (curData = jQuery.hasData(elem) && oldData.call(this, elem), curData && name in curData) ? (migrateWarn("jQuery.data() always sets/gets camelCased names: " + name), arguments.length > 2 && (curData[name] = value), curData[name]) : oldData.apply(this, arguments) }; 1702 var oldTweenRun = jQuery.Tween.prototype.run; 1703 jQuery.Tween.prototype.run = function(percent) { jQuery.easing[this.easing].length > 1 && (migrateWarn('easing function "jQuery.easing.' + this.easing.toString() + '" should use only first argument'), jQuery.easing[this.easing] = jQuery.easing[this.easing].bind(jQuery.easing, percent, this.options.duration * percent, 0, 1, this.options.duration)), oldTweenRun.apply(this, arguments) }; 1704 var oldLoad = jQuery.fn.load, 1705 originalFix = jQuery.event.fix; 1706 jQuery.event.props = [], jQuery.event.fixHooks = {}, jQuery.event.fix = function(originalEvent) { 1707 var event, type = originalEvent.type, 1708 fixHook = this.fixHooks[type], 1709 props = jQuery.event.props; 1710 if (props.length) 1711 for (migrateWarn("jQuery.event.props are deprecated and removed: " + props.join()); props.length;) jQuery.event.addProp(props.pop()); 1712 if (fixHook && !fixHook._migrated_ && (fixHook._migrated_ = !0, migrateWarn("jQuery.event.fixHooks are deprecated and removed: " + type), (props = fixHook.props) && props.length)) 1713 for (; props.length;) jQuery.event.addProp(props.pop()); 1714 return event = originalFix.call(this, originalEvent), fixHook && fixHook.filter ? fixHook.filter(event, originalEvent) : event 1715 }, jQuery.each(["load", "unload", "error"], function(_, name) { jQuery.fn[name] = function() { var args = Array.prototype.slice.call(arguments, 0); return "load" === name && "string" == typeof args[0] ? oldLoad.apply(this, args) : (migrateWarn("jQuery.fn." + name + "() is deprecated"), args.splice(0, 0, name), arguments.length ? this.on.apply(this, args) : (this.triggerHandler.apply(this, args), this)) } }), jQuery(function() { jQuery(document).triggerHandler("ready") }), jQuery.event.special.ready = { setup: function() { this === document && migrateWarn("'ready' event is deprecated") } }, jQuery.fn.extend({ bind: function(types, data, fn) { return migrateWarn("jQuery.fn.bind() is deprecated"), this.on(types, null, data, fn) }, unbind: function(types, fn) { return migrateWarn("jQuery.fn.unbind() is deprecated"), this.off(types, null, fn) }, delegate: function(selector, types, data, fn) { return migrateWarn("jQuery.fn.delegate() is deprecated"), this.on(types, selector, data, fn) }, undelegate: function(selector, types, fn) { return migrateWarn("jQuery.fn.undelegate() is deprecated"), 1 === arguments.length ? this.off(selector, "**") : this.off(types, selector || "**", fn) } }); 1716 var oldOffset = jQuery.fn.offset; 1717 jQuery.fn.offset = function() { 1718 var docElem, elem = this[0], 1719 origin = { top: 0, left: 0 }; 1720 return elem && elem.nodeType ? (docElem = (elem.ownerDocument || document).documentElement, jQuery.contains(docElem, elem) ? oldOffset.apply(this, arguments) : (migrateWarn("jQuery.fn.offset() requires an element connected to a document"), origin)) : (migrateWarn("jQuery.fn.offset() requires a valid DOM element"), origin) 1721 }; 1722 var oldParam = jQuery.param; 1723 jQuery.param = function(data, traditional) { var ajaxTraditional = jQuery.ajaxSettings && jQuery.ajaxSettings.traditional; return void 0 === traditional && ajaxTraditional && (migrateWarn("jQuery.param() no longer uses jQuery.ajaxSettings.traditional"), traditional = ajaxTraditional), oldParam.call(this, data, traditional) }; 1724 var oldSelf = jQuery.fn.andSelf || jQuery.fn.addBack; 1725 jQuery.fn.andSelf = function() { return migrateWarn("jQuery.fn.andSelf() replaced by jQuery.fn.addBack()"), oldSelf.apply(this, arguments) }; 1726 var oldDeferred = jQuery.Deferred, 1727 tuples = [ 1728 ["resolve", "done", jQuery.Callbacks("once memory"), jQuery.Callbacks("once memory"), "resolved"], 1729 ["reject", "fail", jQuery.Callbacks("once memory"), jQuery.Callbacks("once memory"), "rejected"], 1730 ["notify", "progress", jQuery.Callbacks("memory"), jQuery.Callbacks("memory")] 1731 ]; 1732 jQuery.Deferred = function(func) { 1733 var deferred = oldDeferred(), 1734 promise = deferred.promise(); 1735 return deferred.pipe = promise.pipe = function() { 1736 var fns = arguments; 1737 return migrateWarn("deferred.pipe() is deprecated"), jQuery.Deferred(function(newDefer) { 1738 jQuery.each(tuples, function(i, tuple) { 1739 var fn = jQuery.isFunction(fns[i]) && fns[i]; 1740 deferred[tuple[1]](function() { 1741 var returned = fn && fn.apply(this, arguments); 1742 returned && jQuery.isFunction(returned.promise) ? returned.promise().done(newDefer.resolve).fail(newDefer.reject).progress(newDefer.notify) : newDefer[tuple[0] + "With"](this === promise ? newDefer.promise() : this, fn ? [returned] : arguments) 1743 }) 1744 }), fns = null 1745 }).promise() 1746 }, func && func.call(deferred, deferred), deferred 1747 } 1748}(jQuery, window), 1749function($) { $.fn.closestChild = function(selector) { var $children, $results; return $children = this.children(), 0 === $children.length ? $() : ($results = $children.filter(selector), $results.length > 0 ? $results : $children.closestChild(selector)) } }(window.jQuery), 1750function() { 1751 "use strict"; 1752 1753 function EventEmitter() {} 1754 1755 function indexOfListener(listeners, listener) { 1756 for (var i = listeners.length; i--;) 1757 if (listeners[i].listener === listener) return i; 1758 return -1 1759 } 1760 1761 function alias(name) { return function() { return this[name].apply(this, arguments) } } 1762 var proto = EventEmitter.prototype, 1763 exports = this, 1764 originalGlobalValue = exports.EventEmitter; 1765 proto.getListeners = function(evt) { var response, key, events = this._getEvents(); if (evt instanceof RegExp) { response = {}; for (key in events) events.hasOwnProperty(key) && evt.test(key) && (response[key] = events[key]) } else response = events[evt] || (events[evt] = []); return response }, proto.flattenListeners = function(listeners) { var i, flatListeners = []; for (i = 0; i < listeners.length; i += 1) flatListeners.push(listeners[i].listener); return flatListeners }, proto.getListenersAsObject = function(evt) { var response, listeners = this.getListeners(evt); return listeners instanceof Array && (response = {}, response[evt] = listeners), response || listeners }, proto.addListener = function(evt, listener) { 1766 var key, listeners = this.getListenersAsObject(evt), 1767 listenerIsWrapped = "object" == typeof listener; 1768 for (key in listeners) listeners.hasOwnProperty(key) && indexOfListener(listeners[key], listener) === -1 && listeners[key].push(listenerIsWrapped ? listener : { listener: listener, once: !1 }); 1769 return this 1770 }, proto.on = alias("addListener"), proto.addOnceListener = function(evt, listener) { return this.addListener(evt, { listener: listener, once: !0 }) }, proto.once = alias("addOnceListener"), proto.defineEvent = function(evt) { return this.getListeners(evt), this }, proto.defineEvents = function(evts) { for (var i = 0; i < evts.length; i += 1) this.defineEvent(evts[i]); return this }, proto.removeListener = function(evt, listener) { var index, key, listeners = this.getListenersAsObject(evt); for (key in listeners) listeners.hasOwnProperty(key) && (index = indexOfListener(listeners[key], listener), index !== -1 && listeners[key].splice(index, 1)); return this }, proto.off = alias("removeListener"), proto.addListeners = function(evt, listeners) { return this.manipulateListeners(!1, evt, listeners) }, proto.removeListeners = function(evt, listeners) { return this.manipulateListeners(!0, evt, listeners) }, proto.manipulateListeners = function(remove, evt, listeners) { 1771 var i, value, single = remove ? this.removeListener : this.addListener, 1772 multiple = remove ? this.removeListeners : this.addListeners; 1773 if ("object" != typeof evt || evt instanceof RegExp) 1774 for (i = listeners.length; i--;) single.call(this, evt, listeners[i]); 1775 else 1776 for (i in evt) evt.hasOwnProperty(i) && (value = evt[i]) && ("function" == typeof value ? single.call(this, i, value) : multiple.call(this, i, value)); 1777 return this 1778 }, proto.removeEvent = function(evt) { 1779 var key, type = typeof evt, 1780 events = this._getEvents(); 1781 if ("string" === type) delete events[evt]; 1782 else if (evt instanceof RegExp) 1783 for (key in events) events.hasOwnProperty(key) && evt.test(key) && delete events[key]; 1784 else delete this._events; 1785 return this 1786 }, proto.removeAllListeners = alias("removeEvent"), proto.emitEvent = function(evt, args) { 1787 var listeners, listener, i, key, response, listenersMap = this.getListenersAsObject(evt); 1788 for (key in listenersMap) 1789
1789 if (listenersMap.hasOwnProperty(key)) 1790 for (listeners = listenersMap[key].slice(0), i = listeners.length; i--;) listener = listeners[i], listener.once === !0 && this.removeListener(evt, listener.listener), response = listener.listener.apply(this, args || []), response === this._getOnceReturnValue() && this.removeListener(evt, listener.listener); 1791 return this 1792 }, proto.trigger = alias("emitEvent"), proto.emit = function(evt) { var args = Array.prototype.slice.call(arguments, 1); return this.emitEvent(evt, args) }, proto.setOnceReturnValue = function(value) { return this._onceReturnValue = value, this }, proto._getOnceReturnValue = function() { return !this.hasOwnProperty("_onceReturnValue") || this._onceReturnValue }, proto._getEvents = function() { return this._events || (this._events = {}) }, EventEmitter.noConflict = function() { return exports.EventEmitter = originalGlobalValue, EventEmitter }, "function" == typeof define && define.amd ? define("eventEmitter/EventEmitter", [], function() { return EventEmitter }) : "object" == typeof module && module.exports ? module.exports = EventEmitter : exports.EventEmitter = EventEmitter 1793}.call(this), 1794 function(window, factory) { "use strict"; "function" == typeof define && define.amd ? define(["eventEmitter/EventEmitter"], function(EventEmitter) { return factory(window, EventEmitter) }) : "object" == typeof module && module.exports ? module.exports = factory(window, require("wolfy87-eventemitter")) : window.imagesLoaded = factory(window, window.EventEmitter) }(window, function(window, EventEmitter) { 1795 function extend(a, b) { for (var prop in b) a[prop] = b[prop]; return a } 1796 1797 function makeArray(obj) { 1798 var ary = []; 1799 if (Array.isArray(obj)) ary = obj; 1800 else if ("number" == typeof obj.length) 1801 for (var i = 0; i < obj.length; i++) ary.push(obj[i]); 1802 else ary.push(obj); 1803 return ary 1804 } 1805 1806 function ImagesLoaded(elem, options, onAlways) { return this instanceof ImagesLoaded ? ("string" == typeof elem && (elem = document.querySelectorAll(elem)), this.elements = makeArray(elem), this.options = extend({}, this.options), "function" == typeof options ? onAlways = options : extend(this.options, options), onAlways && this.on("always", onAlways), this.getImages(), $ && (this.jqDeferred = new $.Deferred), void setTimeout(function() { this.check() }.bind(this))) : new ImagesLoaded(elem, options, onAlways) } 1807 1808 function LoadingImage(img) { this.img = img } 1809 1810 function Background(url, element) { this.url = url, this.element = element, this.img = new Image } 1811 var $ = window.jQuery, 1812 console = window.console; 1813 ImagesLoaded.prototype = Object.create(EventEmitter.prototype), ImagesLoaded.prototype.options = {}, ImagesLoaded.prototype.getImages = function() { this.images = [], this.elements.forEach(this.addElementImages, this) }, ImagesLoaded.prototype.addElementImages = function(elem) { 1814 "IMG" == elem.nodeName && this.addImage(elem), this.options.background === !0 && this.addElementBackgroundImages(elem); 1815 var nodeType = elem.nodeType; 1816 if (nodeType && elementNodeTypes[nodeType]) { 1817 for (var childImgs = elem.querySelectorAll("img"), i = 0; i < childImgs.length; i++) { 1818 var img = childImgs[i]; 1819 this.addImage(img) 1820 } 1821 if ("string" == typeof this.options.background) { 1822 var children = elem.querySelectorAll(this.options.background); 1823 for (i = 0; i < children.length; i++) { 1824 var child = children[i]; 1825 this.addElementBackgroundImages(child) 1826 } 1827 } 1828 } 1829 }; 1830 var elementNodeTypes = { 1: !0, 9: !0, 11: !0 }; 1831 return ImagesLoaded.prototype.addElementBackgroundImages = function(elem) { 1832 var style = getComputedStyle(elem); 1833 if (style) 1834 for (var reURL = /url\((['"])?(.*?)\1\)/gi, matches = reURL.exec(style.backgroundImage); null !== matches;) { 1835 var url = matches && matches[2];
1836 url && this.addBackground(url, elem), matches = reURL.exec(style.backgroundImage) 1837 } 1838 }, ImagesLoaded.prototype.addImage = function(img) { 1839 var loadingImage = new LoadingImage(img); 1840 this.images.push(loadingImage) 1841 }, ImagesLoaded.prototype.addBackground = function(url, elem) { 1842 var background = new Background(url, elem); 1843 this.images.push(background) 1844 }, ImagesLoaded.prototype.check = function() { 1845 function onProgress(image, elem, message) { setTimeout(function() { _this.progress(image, elem, message) }) } 1846 var _this = this; 1847 return this.progressedCount = 0, this.hasAnyBroken = !1, this.images.length ? void this.images.forEach(function(loadingImage) { loadingImage.once("progress", onProgress), loadingImage.check() }) : void this.complete() 1848 }, ImagesLoaded.prototype.progress = function(image, elem, message) { this.progressedCount++, this.hasAnyBroken = this.hasAnyBroken || !image.isLoaded, this.emit("progress", this, image, elem), this.jqDeferred && this.jqDeferred.notify && this.jqDeferred.notify(this, image), this.progressedCount == this.images.length && this.complete(), this.options.debug && console && console.log("progress: " + message, image, elem) }, ImagesLoaded.prototype.complete = function() { 1849 var eventName = this.hasAnyBroken ? "fail" : "done"; 1850 if (this.isComplete = !0, this.emit(eventName, this), this.emit("always", this), this.jqDeferred) { 1851 var jqMethod = this.hasAnyBroken ? "reject" : "resolve"; 1852 this.jqDeferred[jqMethod](this) 1853 } 1854 }, LoadingImage.prototype = Object.create(EventEmitter.prototype), Lo
1854adingImage.prototype.check = function() { var isComplete = this.getIsImageComplete(); return isComplete ? void this.confirm(0 !== this.img.naturalWidth, "naturalWidth") : (this.proxyImage = new Image, this.proxyImage.addEventListener("load", this), this.proxyImage.addEventListener("error", this), this.img.addEventListener("load", this), this.img.addEventListener("error", this), void(this.proxyImage.src = this.img.src)) }, LoadingImage.prototype.getIsImageComplete = function() { return this.img.complete && void 0 !== this.img.naturalWidth }, LoadingImage.prototype.confirm = function(isLoaded, message) { this.isLoaded = isLoaded, this.emit("progress", this, this.img, message) }, LoadingImage.prototype.handleEvent = function(event) { 1855 var method = "on" + event.type; 1856 this[method] && this[method](event) 1857 }, LoadingImage.prototype.onload = function() { this.confirm(!0, "onload"), this.unbindEvents() }, LoadingImage.prototype.onerror = function() { this.confirm(!1, "onerror"), this.unbindEvents() }, LoadingImage.prototype.unbindEvents = function() { this.proxyImage.removeEventListener("load", this), this.proxyImage.removeEventListener("error", this), this.img.removeEventListener("load", this), this.img.removeEventListener("error", this) }
1857, Background.prototype = Object.create(LoadingImage.prototype), Background.prototype.check = function() { 1858 this.img.addEventListener("load", this), this.img.addEventListener("error", this), this.img.src = this.url; 1859 var isComplete = this.getIsImageComplete(); 1860 isComplete && (this.confirm(0 !== this.img.naturalWidth, "naturalWidth"), this.unbindEvents()) 1861 }, Background.prototype.unbindEvents = function() { this.img.addEventListener("load", this), this.img.addEventListener("error", this) }, Background.prototype.confirm = function(isLoaded, message) { this.isLoaded = isLoaded, this.emit("progress", this, this.element, message) }, ImagesLoaded.makeJQueryPlugin = function(jQuery) { jQuery = jQuery || window.jQuery, jQuery && ($ = jQuery, $.fn.imagesLoaded = function(options, callback) { var instance = new ImagesLoaded(this, options, callback); return instance.jqDeferred.promise($(this)) }) }, ImagesLoaded.makeJQueryPlugin(), ImagesLoaded 1862 }), 1863 function() { 1864 function addMapEntry(map, pair) { return map.set(pair[0], pair[1]), map } 1865 1866 function addSetEntry(set, value) { return set.add(value), set } 1867 1868 function apply(func, thisArg, args) { 1869 var length = args.length; 1870 switch (length) { 1871 case 0: 1872 return func.call(thisArg); 1873 case 1: 1874 return func.call(thisArg, args[0]); 1875 case 2: 1876 return func.call(thisArg, args[0], args[1]); 1877 case 3: 1878 return func.call(thisArg, args[0], args[1], args[2]) 1879 } 1880 return func.apply(thisArg, args) 1881 } 1882 1883 function arrayAggregator(array, setter, iteratee, accumulator) { 1884 for (var index = -1, length = array.length; ++index < length;) { 1885 var value = array[index]; 1886 setter(accumulator, value, iteratee(value), array) 1887 } 1888 return accumulator 1889 } 1890 1891 function arrayConcat(array, other) { for (var index = -1, length = array.length, othIndex = -1, othLength = other.length, result = Array(length + othLength); ++index < length;) result[index] = array[index]; for (; ++othIndex < othLength;) result[index++] = other[othIndex]; return result } 1892 1893 function arrayEach(array, iteratee) { for (var index = -1, length = array.length; ++index < length && iteratee(array[index], index, array) !== !1;); return array } 1894 1895 function arrayEachRight(array, iteratee) { for (var length = array.length; length-- && iteratee(array[length], length, array) !== !1;); return array } 1896 1897 function arrayEvery(array, predicate) { 1898 for (var index = -1, length = array.length; ++index < length;) 1899 if (!predicate(array[index], index, array)) return !1; 1900 return !0 1901 } 1902 1903 function arrayFilter(array, predicate) { 1904 for (var index = -1, length = array.length, resIndex = -1, result = []; ++index < length;) { 1905 var value = array[index]; 1906 predicate(value, index, array) && (result[++resIndex] = value) 1907 } 1908 return result 1909 } 1910 1911 function arrayIncludes(array, value) { return !!array.length && baseIndexOf(array, value, 0) > -1 } 1912 1913 function arrayIncludesWith(array, value, comparator) { 1914 for (var index = -1, length = array.length; ++index < length;) 1915 if (comparator(value, array[index])) return !0; 1916 return !1 1917 } 1918 1919 function arrayMap(array, iteratee) { for (var index = -1, length = array.length, result = Array(length); ++index < length;) result[index] = iteratee(array[index], index, array); return result } 1920 1921 function arrayPush(array, values) { for (var index = -1, length = values.length, offset = array.length; ++index < length;) array[offset + index] = values[index]; return array } 1922 1923 function arrayReduce(array, iteratee, accumulator, initAccum) { 1924 var index = -1, 1925 length = array.length; 1926 for (initAccum && length && (accumulator = array[++index]); ++index < length;) accumulator = iteratee(accumulator, array[index], index, array); 1927 return accumulator 1928 } 1929 1930 function arrayReduceRight(array, iteratee, accumulator, initAccum) { var length = array.length; for (initAccum && length && (accumulator = array[--length]); length--;) accumulator = iteratee(accumulator, array[length], length, array); return accumulator } 1931 1932 function arraySome(array, predicate) { 1933 for (var index = -1, length = array.length; ++index < length;) 1934 if (predicate(array[index], index, array)) return !0; 1935 return !1 1936 } 1937 1938 function baseExtremum(array, iteratee, comparator) { 1939 for (var index = -1, length = array.length; ++index < length;) { 1940 var value = array[index], 1941 current = iteratee(value); 1942 if (null != current && (computed === undefined ? current === current : comparator(current, computed))) var computed = current, 1943 result = value 1944 } 1945 return result 1946 } 1947 1948 function baseFind(collection, predicate, eachFunc, retKey) { var result; return eachFunc(collection, function(value, key, collection) { if (predicate(value, key, collection)) return result = retKey ? key : value, !1 }), result } 1949 1950 function baseFindIndex(array, predicate, fromRight) { 1951 for (var length = array.length, index = fromRight ? length : -1; fromRight ? index-- : ++index < length;) 1952 if (predicate(array[index], index, array)) return index; 1953 return -1 1954 } 1955 1956 function baseIndexOf(array, value, fromIndex) { 1957 if (value !== value) return indexOfNaN(array, fromIndex); 1958 for (var index = fromIndex - 1, length = array.length; ++index < length;) 1959 if (array[index] === value) return index; 1960 return -1 1961 } 1962 1963 function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { return eachFunc(collection, function(value, index, collection) { accumulator = initAccum ? (initAccum = !1, value) : iteratee(accumulator, value, index, collection) }), accumulator } 1964 1965 function baseSortBy(array, comparer) { var length = array.length; for (array.sort(comparer); length--;) array[length] = array[length].value; return array } 1966 1967 function baseSum(array, iteratee) { 1968 for (var result, index = -1, length = array.length; ++index < length;) { 1969 var current = iteratee(array[index]); 1970 current !== undefined && (result = result === undefined ? current : result + current) 1971 } 1972 return result 1973 } 1974 1975 function baseTimes(n, iteratee) { for (var index = -1, result = Array(n); ++index < n;) result[index] = iteratee(index); return result } 1976 1977 function baseToPairs(object, props) { return arrayMap(props, function(key) { return [key, object[key]] }) } 1978 1979 function baseUnary(func) { return function(value) { return func(value) } } 1980 1981 function baseValues(object, props) { return arrayMap(props, function(key) { return object[key] }) } 1982 1983 function charsStartIndex(strSymbols, chrSymbols) { for (var index = -1, length = strSymbols.length; ++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0
1983) > -1;); return index } 1984 1985 function charsEndIndex(strSymbols, chrSymbols) { for (var index = strSymbols.length; index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1;); return index } 1986 1987 function checkGlobal(value) { return value && value.Object === Object ? value : null } 1988 1989 function compareAscending(value, other) { 1990 if (value !== other) { 1991 var valIsNull = null === value, 1992 valIsUndef = value === undefined, 1993 valIsReflexive = value === value, 1994 othIsNull = null === other, 1995 othIsUndef = other === undefined, 1996 othIsReflexive = other === other; 1997 if (value > other && !othIsNull || !valIsReflexive || valIsNull && !othIsUndef && othIsReflexive || valIsUndef && othIsReflexive) return 1; 1998 if (value < other && !valIsNull || !othIsReflexive || othIsNull && !valIsUndef && valIsReflexive || othIsUndef && valIsReflexive) return -1 1999 } 2000 return 0 2001 } 2002 2003 function compareMultiple(object, other, orders) { for (var index = -1, objCriteria = object.criteria, othCriteria = other.criteria, length = objCriteria.length, ordersLength = orders.length; ++index < length;) { var result = compareAscending(objCriteria[index], othCriteria[index]); if (result) { if (index >= ordersLength) return result; var order = orders[index]; return result * ("desc" == order ? -1 : 1) } } return object.index - other.index } 2004 2005 function deburrLetter(letter) { return deburredLetters[letter] } 2006 2007 function escapeHtmlChar(chr) { return htmlEscapes[chr] } 2008 2009 function escapeStringChar(chr) { return "\\" + stringEscapes[chr] } 2010 2011 function indexOfNaN(array, fromIndex, fromRight) { for (var length = array.length, index = fromIndex + (fromRight ? 0 : -1); fromRight ? index-- : ++index < length;) { var other = array[index]; if (other !== other) return index } return -1 } 2012 2013 function isHostObject(value) { 2014 var result = !1; 2015 if (null != value && "function" != typeof value.toString) try { result = !!(value + "") } catch (e) {} 2016 return result 2017 } 2018 2019 function isIndex(value, length) { return value = "number" == typeof value || reIsUint.test(value) ? +value : -1, length = null == length ? MAX_SAFE_INTEGER : length, value > -1 && value % 1 == 0 && value < length } 2020 2021 function iteratorToArray(iterator) { for (var data, result = []; !(data = iterator.next()).done;) result.push(data.value); return result } 2022 2023 function mapToArray(map) { 2024 var index = -1, 2025 result = Array(map.size); 2026 return map.forEach(function(value, key) { result[++index] = [key, value] }), result 2027 } 2028 2029 function replaceHolders(array, placeholder) { for (var index = -1, length = array.length, resIndex = -1, result = []; ++index < length;) array[index] === placeholder && (array[index] = PLACEHOLDER, result[++resIndex] = index); return result } 2030 2031 function setToArray(set) { 2032 var index = -1, 2033 result = Array(set.size); 2034 return set.forEach(function(value) { result[++index] = value }), result 2035 } 2036 2037 function stringSize(string) { if (!string || !reHasComplexSymbol.test(string)) return string.length; for (var result = reComplexSymbol.lastIndex = 0; reComplexSymbol.test(string);) result++; return result } 2038 2039 function stringToArray(string) { return string.match(reComplexSymbol) } 2040 2041 function unescapeHtmlChar(chr) { return htmlUnescapes[chr] } 2042 2043 function runInContext(context) { 2044 function lodash(value) { if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) { if (value instanceof LodashWrapper) return value; if (hasOwnProperty.call(value, "__wrapped__")) return wrapperClone(value) } return new LodashWrapper(value) } 2045 2046 function baseLodash() {} 2047 2048 function LodashWrapper(value, chainAll) { this.__wrapped__ = value, this.__actions__ = [], this.__chain__ = !!chainAll, this.__index__ = 0, this.__values__ = undefined } 2049 2050 function LazyWrapper(value) { this.__wrapped__ = value, this.__actions__ = [], this.__dir__ = 1, this.__filtered__ = !1, this.__iteratees__ = [], this.__takeCount__ = MAX_ARRAY_LENGTH, this.__views__ = [] } 2051 2052 function lazyClone() { var result = new LazyWrapper(this.__wrapped__); return result.__actions__ = copyArray(this.__actions__), result.__dir__ = this.__dir__, result.__filtered__ = this.__filtered__, result.__iteratees__ = copyArray(this.__iteratees__), result.__takeCount__ = this.__takeCount__, result.__views__ = copyArray(this.__views__), result } 2053 2054 function lazyReverse() { 2055 if (this.__filtered__) { 2056 var result = new LazyWrapper(this); 2057 result.__dir__ = -1, result.__filtered__ = !0 2058 } else result = this.clone(), result.__dir__ *= -1; 2059 return result 2060 } 2061 2062 function lazyValue() { 2063 var array = this.__wrapped__.value(), 2064 dir = this.__dir__, 2065 isArr = isArray(array), 2066 isRight = dir < 0, 2067 arrLength = isArr ? array.length : 0, 2068 view = getView(0, arrLength, this.__views__), 2069 start = view.start, 2070 end = view.end, 2071 length = end - start, 2072 index = isRight ? end : start - 1, 2073 iteratees = this.__iteratees__, 2074 iterLength = iteratees.length, 2075 resIndex = 0, 2076 takeCount = nativeMin(length, this.__takeCount__); 2077 if (!isArr || arrLength < LARGE_ARRAY_SIZE || arrLength == length && takeCount == length) return baseWrapperValue(array, this.__actions__); 2078 var result = []; 2079 outer: for (; length-- && resIndex < takeCount;) { 2080 index += dir; 2081 for (var iterIndex = -1, value = array[index]; ++iterIndex < iterLength;) { 2082 var data = iteratees[iterIndex], 2083 iteratee = data.iteratee, 2084 type = data.type, 2085 computed = iteratee(value); 2086 if (type == LAZY_MAP_FLAG) value = computed; 2087 else if (!computed) { if (type == LAZY_FILTER_FLAG) continue outer; break outer } 2088 } 2089 result[resIndex++] = value 2090 } 2091 return result 2092 } 2093 2094 function Hash() {} 2095 2096 function hashDelete(hash, key) { return hashHas(hash, key) && delete hash[key] } 2097 2098 function hashGet(hash, key) { if (nativeCreate) { var result = hash[key]; return result === HASH_UNDEFINED ? undefined : result } return hasOwnProperty.call(hash, key) ? hash[key] : undefined } 2099 2100 function hashHas(hash, key) { return nativeCreate ? hash[key] !== undefined : hasOwnProperty.call(hash, key) } 2101 2102 function hashSet(hash, key, value) { hash[key] = nativeCreate && value === undefined ? HASH_UNDEFINED : value } 2103 2104 function MapCache(values) { 2105 var index = -1, 2106 length = values ? values.length : 0; 2107 for (this.clear(); ++index < length;) { 2108 var entry = values[index]; 2109 this.set(entry[0], entry[1]) 2110 } 2111 } 2112 2113 function mapClear() { this.__data__ = { hash: new Hash, map: Map ? new Map : [], string: new Hash } } 2114 2115 function mapDelete(key) { var data = this.__data__;
2115 return isKeyable(key) ? hashDelete("string" == typeof key ? data.string : data.hash, key) : Map ? data.map.delete(key) : assocDelete(data.map, key) } 2116 2117 function mapGet(key) { var data = this.__data__; return isKeyable(key) ? hashGet("string" == typeof key ? data.string : data.hash, key) : Map ? data.map.get(key) : assocGet(data.map, key) } 2118 2119 function mapHas(key) { var data = this.__data__; return isKeyable(key) ? hashHas("string" == typeof key ? data.string : data.hash, key) : Map ? data.map.has(key) : assocHas(data.map, key) } 2120 2121 function mapSet(key, value) { var data = this.__data__; return isKeyable(key) ? hashSet("string" == typeof key ? data.string : data.hash, key, value) : Map ? data.map.set(key, value) : assocSet(data.map, key, value), this } 2122 2123 function SetCache(values) { 2124 var index = -1, 2125 length = values ? values.length : 0; 2126 for (this.__data__ = new MapCache; ++index < length;) this.push(values[index]) 2127 } 2128 2129 function cacheHas(cache, value) { 2130 var map = cache.__data__; 2131 if (isKeyable(value)) { 2132 var data = map.__data__, 2133 hash = "string" == typeof value ? data.string : data.hash; 2134 return hash[value] === HASH_UNDEFINED 2135 } 2136 return map.has(value) 2137 } 2138 2139 function cachePush(value) { 2140 var map = this.__data__; 2141 if (isKeyable(value)) { 2142 var data = map.__data__, 2143 hash = "string" == typeof value ? data.string : data.hash; 2144 hash[value] = HASH_UNDEFINED 2145 } else map.set(value, HASH_UNDEFINED) 2146 } 2147 2148 function Stack(values) { 2149 var index = -1, 2150 length = values ? values.length : 0; 2151 for (this.clear(); ++index < length;) { 2152 var entry = values[index]; 2153 this.set(entry[0], entry[1]) 2154 } 2155 } 2156 2157 function stackClear() { this.__data__ = { array: [], map: null } } 2158 2159 function stackDelete(key) { 2160 var data = this.__data__, 2161 array = data.array; 2162 return array ? assocDelete(array, key) : data.map.delete(key) 2163 } 2164 2165 function stackGet(key) { 2166 var data = this.__data__, 2167 array = data.array; 2168 return array ? assocGet(array, key) : data.map.get(key) 2169 } 2170 2171 function stackHas(key) { 2172 var data = this.__data__, 2173 array = data.array; 2174 return array ? assocHas(array, key) : data.map.has(key) 2175 } 2176 2177 function stackSet(key, value) { 2178 var data = this.__data__, 2179 array = data.array; 2180 array && (array.length < LARGE_ARRAY_SIZE - 1 ? assocSet(array, key, value) : (data.array = null, data.map = new MapCache(array))); 2181 var map = data.map; 2182 return map && map.set(key, value), this 2183 } 2184 2185 function assocDelete(array, key) { var index = assocIndexOf(array, key); if (index < 0) return !1; var lastIndex = array.length - 1; return index == lastIndex ? array.pop() : splice.call(array, index, 1), !0 } 2186 2187 function assocGet(array, key) { var index = assocIndexOf(array, key); return index < 0 ? undefined : array[index][1] } 2188 2189 function assocHas(array, key) { return assocIndexOf(array, key) > -1 } 2190 2191 function assocIndexOf(array, key) { 2192 for (var length = array.length; length--;) 2193 if (eq(array[length][0], key)) return length; 2194 return -1 2195 } 2196 2197 function assocSet(array, key, value) { 2198 var index = assocIndexOf(array, key); 2199 index < 0 ? array.push([key, value]) : array[index][1] = value 2200 } 2201 2202 function assignInDefaults(objValue, srcValue, key, object) { return objValue === undefined || eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key) ? srcValue : objValue } 2203 2204 function assignMergeValue(object, key, value) { 2205 (value === undefined || eq(object[key], value)) && ("number" != typeof key || value !== undefined || key in object) || (object[key] = value) 2206 } 2207 2208 function assignValue(object, key, value) { 2209 var objValue = object[key]; 2210 eq(objValue, value) && (!eq(objValue, objectProto[key]) || hasOwnProperty.call(object, key)) && (value !== undefined || key in object) || (object[key] = value) 2211 } 2212 2213 function baseAggregator(collection, setter, iteratee, accumulator) { return baseEach(collection, function(value, key, collection) { setter(accumulator, value, iteratee(value), collection) }), accumulator } 2214 2215 function baseAssign(object, source) { return object && copyObject(source, keys(source), object) } 2216 2217 function baseAt(object, paths) { for (var index = -1, isNil = null == object, length = paths.length, result = Array(length); ++index < length;) result[index] = isNil ? undefined : get(object, paths[index]); return result } 2218 2219 function baseClamp(number, lower, upper) { return number === number && (upper !== undefined && (number = number <= upper ? number : upper), lower !== undefined && (number = number >= lower ? number : lower)), number } 2220 2221 function baseClone(value, isDeep, customizer, key, object, stack) { 2222 var result; 2223 if (customizer && (result = object ? customizer(value, key, object, stack) : customizer(value)), result !== undefined) return result; 2224 if (!isObject(value)) return value; 2225 var isArr = isArray(value); 2226 if (isArr) { if (result = initCloneArray(value), !isDeep) return copyArray(value, result) } else { 2227 var tag = getTag(value), 2228 isFunc = tag == funcTag || tag == genTag; 2229 if (tag != objectTag && tag != argsTag && (!isFunc || object)) return cloneableTags[tag] ? initCloneByTag(value, tag, isDeep) : object ? value : {};
2230 if (isHostObject(value)) return object ? value : {}; 2231 if (result = initCloneObject(isFunc ? {} : value), !isDeep) return copySymbols(value, baseAssign(result, value)) 2232 } 2233 stack || (stack = new Stack); 2234 var stacked = stack.get(value); 2235 return stacked ? stacked : (stack.set(value, result), (isArr ? arrayEach : baseForOwn)(value, function(subValue, key) { assignValue(result, key, baseClone(subValue, isDeep, customizer, key, value, stack)) }), isArr ? result : copySymbols(value, result)) 2236 } 2237 2238 function baseConforms(source) { 2239 var props = keys(source), 2240 length = props.length; 2241 return function(object) { 2242 if (null == object) return !length; 2243 for (var index = length; index--;) { 2244 var key = props[index], 2245 predicate = source[key], 2246 value = object[key]; 2247 if (value === undefined && !(key in Object(object)) || !predicate(value)) return !1 2248 } 2249 return !0 2250 } 2251 } 2252
2253 function baseDelay(func, wait, args) { if ("function" != typeof func) throw new TypeError(FUNC_ERROR_TEXT); return setTimeout(function() { func.apply(undefined, args) }, wait) } 2254 2255 function baseDifference(array, values, iteratee, comparator) { 2256 var index = -1, 2257 includes = arrayIncludes, 2258 isCommon = !0, 2259 length = array.length, 2260 result = [], 2261 valuesLength = values.length; 2262 if (!length) return result; 2263 iteratee && (values = arrayMap(values, baseUnary(iteratee))), comparator ? (includes = arrayIncludesWith, isCommon = !1) : values.length >= LARGE_ARRAY_SIZE && (includes = cacheHas, isCommon = !1, values = new SetCache(values)); 2264 outer: for (; ++index < length;) { 2265 var value = array[index], 2266 computed = iteratee ? iteratee(value) : value; 2267 if (isCommon && computed === computed) { 2268 for (var valuesIndex = valuesLength; valuesIndex--;) 2269 if (values[valuesIndex] === computed) continue outer; 2270 result.push(value) 2271 } else includes(values, computed, comparator) || result.push(value) 2272 } 2273 return result 2274 } 2275 2276 function baseEvery(collection, predicate) { var result = !0; return baseEach(collection, function(value, index, collection) { return result = !!predicate(value, index, collection) }), result } 2277 2278 function baseFill(array, value, start, end) { var length = array.length; for (start = toInteger(start), start < 0 && (start = -start > length ? 0 : length + start), end = end === undefined || end > length ? length : toInteger(end), end < 0 && (end += length), end = start > end ? 0 : toLength(end); start < end;) array[start++] = value; return array } 2279 2280 function baseFilter(collection, predicate) { var result = []; return baseEach(collection, function(value, index, collection) { predicate(value, index, collection) && result.push(value) }), result } 2281 2282 function baseFlatten(array, isDeep, isStrict, result) { 2283 result || (result = []); 2284 for (var index = -1, length = array.length; ++index < length;) { 2285 var value = array[index]; 2286 isArrayLikeObject(value) && (isStrict || isArray(value) || isArguments(value)) ? isDeep ? baseFlatten(value, isDeep, isStrict, result) : arrayPush(result, value) : isStrict || (result[result.length] = value) 2287 } 2288 return result 2289 } 2290 2291 function baseForIn(object, iteratee) { return null == object ? object : baseFor(object, iteratee, keysIn) } 2292 2293 function baseForOwn(object, iteratee) { return object && baseFor(object, iteratee, keys) } 2294 2295 function baseForOwnRight(object, iteratee) { return object && baseForRight(object, iteratee, keys) } 2296 2297 function baseFunctions(object, props) { return arrayFilter(props, function(key) { return isFunction(object[key]) }) } 2298 2299 function baseGet(object, path) { path = isKey(path, object) ? [path + ""] : baseToPath(path); for (var index = 0, length = path.length; null != object && index < length;) object = object[path[index++]]; return index && index == length ? object : undefined } 2300 2301 function baseHas(object, key) { return hasOwnProperty.call(object, key) || "object" == typeof object && key in object && null === getPrototypeOf(object) } 2302 2303 function baseHasIn(object, key) { return key in Object(object) } 2304 2305 function baseInRange(number, start, end) { return number >= nativeMin(start, end) && number < nativeMax(start, end) } 2306 2307 function baseIntersection(arrays, iteratee, comparator) { 2308 for (var includes = comparator ? arrayIncludesWith : arrayIncludes, othLength = arrays.length, othIndex = othLength, caches = Array(othLength), result = []; othIndex--;) { 2309 var array = arrays[othIndex]; 2310 othIndex && iteratee && (array = arrayMap(array, baseUnary(iteratee))), caches[othIndex] = !comparator && (iteratee || array.length >
2310= 120) ? new SetCache(othIndex && array) : undefined 2311 } 2312 array = arrays[0]; 2313 var index = -1, 2314 length = array.length, 2315 seen = caches[0]; 2316 outer: for (; ++index < length;) { 2317 var value = array[index], 2318 computed = iteratee ? iteratee(value) : value; 2319 if (!(seen ? cacheHas(seen, computed) : includes(result, computed, comparator))) { 2320 for (var othIndex = othLength; --othIndex;) { var cache = caches[othIndex]; if (!(cache ? cacheHas(cache, computed) : includes(arrays[othIndex], computed, comparator))) continue outer } 2321 seen && seen.push(computed), result.push(value) 2322 } 2323 } 2324 return result 2325 } 2326 2327 function baseInverter(object, setter, iteratee, accumulator) { return baseForOwn(object, function(value, key, object) { setter(accumulator, iteratee(value), key, object) }), accumulator } 2328 2329 function baseInvoke(object, path, args) { isKey(path, object) || (path = baseToPath(path), object = parent(object, path), path = last(path)); var func = null == object ? object : object[path]; return null == func ? undefined : apply(func, object, args) } 2330 2331 function baseIsEqual(value, other, customizer, bitmask, stack) { return value === other || (null == value || null == other || !isObject(value) && !isObjectLike(other) ? value !== value && other !== other : baseIsEqualDeep(value, other, baseIsEqual, customizer, bitmask, stack)) } 2332 2333 function baseIsEqualDeep(object, other, equalFunc, customizer, bitmask, stack) { 2334 var objIsArr = isArray(object), 2335 othIsArr = isArray(other), 2336 objTag = arrayTag, 2337 othTag = arrayTag; 2338 objIsArr || (objTag = getTag(object), objTag == argsTag ? objTag = objectTag : objTag != objectTag && (objIsArr = isTypedArray(object))), othIsArr || (othTag = getTag(other), othTag == argsTag ? othTag = objectTag : othTag != objectTag && (othIsArr = isTypedArray(other))); 2339 var objIsObj = objTag == objectTag && !isHostObject(object), 2340 othIsObj = othTag == objectTag && !isHostObject(other), 2341 isSameTag = objTag == othTag; 2342 if (isSameTag && !objIsArr && !objIsObj) return equalByTag(object, other, objTag, equalFunc, customizer, bitmask); 2343 var isPartial = bitmask & PARTIAL_COMPARE_FLAG; 2344 if (!isPartial) { 2345 var objIsWrapped = objIsObj && hasOwnProperty.call(object, "__wrapped__"), 2346 othIsWrapped = othIsObj && hasOwnProperty.call(other, "__wrapped__"); 2347 if (objIsWrapped || othIsWrapped) return equalFunc(objIsWrapped ? object.value() : object, othIsWrapped ? other.value() : other, customizer, bitmask, stack) 2348 } 2349 return !!isSameTag && (stack || (stack = new Stack), (objIsArr ? equalArrays : equalObjects)(object, other, equalFunc, customizer, bitmask, stack)) 2350 } 2351 2352 function baseIsMatch(object, source, matchData, customizer) { 2353 var index = matchData.length, 2354 length = index, 2355 noCustomizer = !customizer; 2356 if (null == object) return !length; 2357 for (object = Object(object); index--;) { var data = matchData[index]; if (noCustomizer && data[2] ? data[1] !== object[data[0]] : !(data[0] in object)) return !1 } 2358 for (; ++index < length;) { 2359 data = matchData[index]; 2360 var key = data[0], 2361 objValue = object[key], 2362 srcValue = data[1]; 2363 if (noCustomizer && data[2]) { if (objValue === undefined && !(key in object)) return !1 } else { 2364 var stack = new Stack, 2365 result = customizer ? customizer(objValue, srcValue, key, object, source, stack) : undefined; 2366 if (!(result === undefined ? baseIsEqual(srcValue, objValue, customizer, UNORDERED_COMPARE_FLAG | PARTIAL_COMPARE_FLAG, stack) : result)) return !1 2367 } 2368 } 2369 return !0 2370 } 2371 2372 function baseIteratee(value) { var type = typeof value; return "function" == type ? value : null == value ? identity : "object" == type ? isArray(value) ? baseMatchesProperty(value[0], value[1]) : baseMatches(value) : property(value) } 2373 2374 function baseKeys(object) { return nativeKeys(Object(object)) } 2375 2376 function baseKeysIn(object) { object = null == object ? object : Object(object); var result = []; for (var key in object) result.push(key); return result } 2377 2378 function baseMap(collection, iteratee) { 2379 var index = -1, 2380 result = isArrayLike(collection) ? Array(collection.length) : []; 2381 return baseEach(collection, function(value, key, collection) { result[++index] = iteratee(value, key, collection) }), result 2382 } 2383 2384 function baseMatches(source) { 2385 var matchData = getMatchData(source);
2386 if (1 == matchData.length && matchData[0][2]) { 2387 var key = matchData[0][0], 2388 value = matchData[0][1]; 2389 return function(object) { return null != object && (object[key] === value && (value !== undefined || key in Object(object))) } 2390 } 2391 return function(object) { return object === source || baseIsMatch(object, source, matchData) } 2392 } 2393 2394 function baseMatchesProperty(path, srcValue) { return function(object) { var objValue = get(object, path); return objValue === undefined && objValue === srcValue ? hasIn(object, path) : baseIsEqual(srcValue, objValue, undefined, UNORDERED_COMPARE_FLAG | PARTIAL_COMPARE_FLAG) } } 2395 2396 function baseMerge(object, source, srcIndex, customizer, stack) { 2397 if (object !== source) { 2398 var props = isArray(source) || isTypedArray(source) ? undefined : keysIn(source); 2399 arrayEach(props || source, function(srcValue, key) { 2400 if (props && (key = srcValue, srcValue = source[key]), isObject(srcValue)) stack || (stack = new Stack), baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack); 2401 else { 2402 var newValue = customizer ? customizer(object[key], srcValue, key + "", object, source, stack) : undefined; 2403 newValue === undefined && (newValue = srcValue), assignMergeValue(object, key, newValue) 2404 } 2405 }) 2406 } 2407 } 2408 2409 function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) { 2410 var objValue = object[key], 2411 srcValue = source[key], 2412 stacked = stack.get(srcValue); 2413 if (stacked) return void assignMergeValue(object, key, stacked); 2414 var newValue = customizer ? customizer(objValue, srcValue, key + "", object, source, stack) : undefined, 2415 isCommon = newValue === undefined; 2416 isCommon && (newValue = srcValue, isArray(srcValue) || isTypedArray(srcValue) ? isArray(objValue) ? newValue = srcIndex ? copyArray(objValue) : objValue : isArrayLikeObject(objValue) ? newValue = copyArray(objValue) : (isCommon = !1, newValue = baseClone(srcValue)) : isPlainObject(srcValue) || isArguments(srcValue) ? isArguments(objValue) ? newValue = toPlainObject(objValue) : !isObject(objValue) || srcIndex && isFunction(objValue) ? (isCommon = !1, newValue = baseClone(srcValue)) : newValue = srcIndex ? baseClone(objValue) : objValue : isCommon = !1), stack.set(srcValue, newValue), isCommon && mergeFunc(newValue, srcValue, srcIndex, customizer, stack), assignMergeValue(object, key, newValue) 2417 } 2418 2419 function baseOrderBy(collection, iteratees, orders) { 2420 var index = -1, 2421 toIteratee = getIteratee(); 2422 iteratees = arrayMap(iteratees.length ? iteratees : Array(1), function(iteratee) { return toIteratee(iteratee) }); 2423 var result = baseMap(collection, function(value, key, collection) { var criteria = arrayMap(iteratees, function(iteratee) { return iteratee(value) }); return { criteria: criteria, index: ++index, value: value } }); 2424 return baseSortBy(result, function(object, other) { return compareMultiple(object, other, orders) }) 2425 } 2426 2427 function basePick(object, props) { return object = Object(object), arrayReduce(props, function(result, key) { return key in object && (result[key] = object[key]), result }, {}) } 2428 2429 function basePickBy(object, predicate) { var result = {}; return baseForIn(object, function(value, key) { predicate(value, key) && (result[key] = value) }), result } 2430 2431 function baseProperty(key) { return function(object) { return null == object ? undefined : object[key] } } 2432 2433 function basePropertyDeep(path) { return function(object) { return baseGet(object, path) } } 2434 2435 function basePullAll(array, values) { return basePullAllBy(array, values) } 2436 2437 function basePullAllBy(array, values, iteratee) { 2438 var index = -1, 2439 length = values.length, 2440 seen = array; 2441 for (iteratee && (seen = arrayMap(array, function(value) { return iteratee(value) })); ++index < length;) 2442 for (var fromIndex = 0, value = values[index], computed = iteratee ? iteratee(value) : value; 2443 (fromIndex = baseIndexOf(seen, computed, fromIndex)) > -1;) seen !== array && splice.call(seen, fromIndex, 1), splice.call(array, fromIndex, 1); 2444 return array 2445 } 2446 2447 function basePullAt(array, indexes) { 2448 for (var length = array ? indexes.length : 0, lastIndex = length - 1; length--;) { 2449 var index = indexes[length]; 2450 if (lastIndex == length || index != previous) { 2451 var previous = index; 2452 if (isIndex(index)) splice.call(array, index, 1); 2453 else if (isKey(index, array)) delete array[index]; 2454 else { 2455 var path = baseToPath(index), 2456 object = parent(array, path); 2457 null != object && delete object[last(path)] 2458 } 2459 } 2460 } 2461 return array 2462 } 2463 2464 function baseRandom(lower, upper) { return lower + nativeFloor(nativeRandom() * (upper - lower + 1)) } 2465 2466 function baseRange(start, end, step, fromRight) { for (var index = -1, length = nativeMax(nativeCeil((end - start) / (step || 1)), 0), result = Array(length); length--;) result[fromRight ? length : ++index] = start, start += step; return result } 2467 2468 function baseSet(object, path, value, customizer) { 2469 path = isKey(path, object) ? [path + ""] : baseToPath(path); 2470 for (var index = -1, length = path.length, lastIndex = length - 1, nested = object; null != nested && ++index < length;) { 2471 var key = path[index]; 2472 if (isObject(nested)) { 2473 var newValue = value; 2474 if (index != lastIndex) { 2475 var objValue = nested[key]; 2476 newValue = customizer ? customizer(objValue, key, nested) : undefined, newValue === undefined && (newValue = null == objValue ? isIndex(path[index + 1]) ? [] : {} : objValue) 2477 } 2478 assignValue(nested, key, newValue) 2479 } 2480 nested = nested[key] 2481 } 2482 return object 2483 } 2484 2485 function baseSlice(array, start, end) { 2486 var index = -1, 2487 length = array.length; 2488 start < 0 && (start = -start > length ? 0 : length + start), end = end > length ? length : end, end < 0 && (end += length), length = start > end ? 0 : end - start >>> 0, start >>>= 0; 2489 for (var result = Array(length); ++index < length;) result[index] = array[index + start]; 2490 return result 2491 } 2492 2493 function baseSome(collection, predicate) { var result; return baseEach(collection, function(value, index, collection) { return result = predicate(value, index, collection), !result }), !!result } 2494 2495 function baseSortedIndex(array, value, retHighest) { 2496 var low = 0, 2497 high = array ? array.length : low; 2498 if ("number" == typeof value && value === value && high <= HALF_MAX_ARRAY_LENGTH) { 2499 for (; low < high;) { 2500 var mid = low + high >>> 1, 2501 computed = array[mid]; 2502 (retHighest ? computed <= value : computed < value) && null !== computed ? low = mid + 1 : high = mid 2503 } 2504 return high 2505 } 2506 return baseSortedIndexBy(array, value, identity, retHighest) 2507 } 2508 2509 function baseSortedIndexBy(array, value, iteratee, retHighest) { 2510 value = iteratee(value); 2511 for (var low = 0, high = array ? array.length : 0, valIsNaN = value !== value, valIsNull = null === value, valIsUndef = value === undefined; low < high;) {
2512 var mid = nativeFloor((low + high) / 2), 2513 computed = iteratee(array[mid]), 2514 isDef = computed !== undefined, 2515 isReflexive = computed === computed; 2516 if (valIsNaN) var setLow = isReflexive || retHighest; 2517 else setLow = valIsNull ? isReflexive && isDef && (retHighest || null != computed) : valIsUndef ? isReflexive && (retHighest || isDef) : null != computed && (retHighest ? computed <= value : computed < value); 2518 setLow ? low = mid + 1 : high = mid 2519 } 2520 return nativeMin(high, MAX_ARRAY_INDEX) 2521 } 2522 2523 function baseSortedUniq(array) { return baseSortedUniqBy(array) } 2524 2525 function baseSortedUniqBy(array, iteratee) { for (var index = 0, length = array.length, value = array[0], computed = iteratee ? iteratee(value) : value, seen = computed, resIndex = 0, result = [value]; ++index < length;) value = array[index], computed = iteratee ? iteratee(value) : value, eq(computed, seen) || (seen = computed, result[++resIndex] = value); return result } 2526 2527 function baseToPath(value) { return isArray(value) ? value : stringToPath(value) } 2528 2529 function baseUniq(array, iteratee, comparator) { 2530 var index = -1, 2531 includes = arrayIncludes, 2532 length = array.length, 2533 isCommon = !0, 2534 result = [], 2535 seen = result; 2536 if (comparator) isCommon = !1, includes = arrayIncludesWith; 2537 else if (length >= LARGE_ARRAY_SIZE) { 2538 var set = iteratee ? null : createSet(array); 2539 if (set) return setToArray(set); 2540 isCommon = !1, includes = cacheHas, seen = new SetCache 2541 } else seen = iteratee ? [] : result; 2542 outer: for (; ++index < length;) { 2543 var value = array[index], 2544 computed = iteratee ? iteratee(value) : value; 2545 if (isCommon && computed === computed) { 2546 for (var seenIndex = seen.length; seenIndex--;) 2547 if (seen[seenIndex] === computed) continue outer; 2548 iteratee && seen.push(computed), result.push(value) 2549 } else includes(seen, computed, comparator) || (seen !== result && seen.push(computed), result.push(value)) 2550 } 2551 return result 2552 } 2553 2554 function baseUnset(object, path) { path = isKey(path, object) ? [path + ""] : baseToPath(path), object = parent(object, path); var key = last(path); return null == object || !has(object, key) || delete object[key] } 2555 2556 function baseWhile(array, predicate, isDrop, fromRight) { 2557 for (var length = array.length, index = fromRight ? length : -1; 2558 (fromRight ? index-- : ++index < length) && predicate(array[index], index, array);); 2559 return isDrop ? baseSlice(array, fromRight ? 0 : index, fromRight ? index + 1 : length) : baseSlice(array, fromRight ? index + 1 : 0, fromRight ? length : index) 2560 } 2561 2562 function baseWrapperValue(value, actions) { var result = value; return result instanceof LazyWrapper && (result = result.value()), arrayReduce(actions, function(result, action) { return action.func.apply(action.thisArg, arrayPush([result], action.args
2562)) }, result) } 2563 2564 function baseXor(arrays, iteratee, comparator) { for (var index = -1, length = arrays.length; ++index < length;) var result = result ? arrayPush(baseDifference(result, arrays[index], iteratee, comparator), baseDifference(arrays[index], result, iteratee, comparator)) : arrays[index]; return result && result.length ? baseUniq(result, iteratee, comparator) : [] } 2565 2566 function baseZipObject(props, values, assignFunc) { for (var index = -1, length = props.length, valsLength = values.length, result = {}; ++index < length;) assignFunc(result, props[index], index < valsLength ? values[index] : undefined); return result } 2567 2568 function cloneBuffer(buffer) { 2569 var Ctor = buffer.constructor, 2570 result = new Ctor(buffer.byteLength), 2571 view = new Uint8Array(result); 2572 return view.set(new Uint8Array(buffer)), result 2573 } 2574 2575 function cloneMap(map) { var Ctor = map.constructor; return arrayReduce(mapToArray(map), addMapEntry, new Ctor) } 2576 2577 function cloneRegExp(regexp) { 2578 var Ctor = regexp.constructor, 2579 result = new Ctor(regexp.source, reFlags.exec(regexp)); 2580 return result.lastIndex = regexp.lastIndex, result 2581 } 2582 2583 function cloneSet(set) { var Ctor = set.constructor; return arrayReduce(setToArray(set), addSetEntry, new Ctor) } 2584 2585 function cloneSymbol(symbol) { return Symbol ? Object(symbolValueOf.call(symbol)) : {} } 2586 2587 function cloneTypedArray(typedArray, isDeep) { 2588 var buffer = typedArray.buffer, 2589 Ctor = typedArray.constructor; 2590 return new Ctor(isDeep ? cloneBuffer(buffer) : buffer, typedArray.byteOffset, typedArray.length) 2591 } 2592 2593 function composeArgs(args, partials, holders) { for (var holdersLength = holders.length, argsIndex = -1, argsLength = nativeMax(args.length - holdersLength, 0), leftIndex = -1, leftLength = partials.length, result = Array(leftLength + argsLength); ++leftIndex < leftLength;) result[leftIndex] = partials[leftIndex]; for (; ++argsIndex < holdersLength;) result[holders[argsIndex]] = args[argsIndex]; for (; argsLength--;) result[leftIndex++] = args[argsIndex++]; return result } 2594 2595 function composeArgsRight(args, partials, holders) { for (var holdersIndex = -1, holdersLength = holders.length, argsIndex = -1, argsLength = nativeMax(args.length - holdersLength, 0), rightIndex = -1, rightLength = partials.length, result = Array(argsLength + rightLength); ++argsIndex < argsLength;) result[argsIndex] = args[argsIndex]; for (var offset = argsIndex; ++rightIndex < rightLength;) result[offset + rightIndex] = partials[rightIndex]; for (; ++holdersIndex < holdersLength;) result[offset + holders[holdersIndex]] = args[argsIndex++]; return result } 2596 2597 function copyArray(source, array) { 2598 var index = -1, 2599 length = source.length; 2600 for (array || (array = Array(length)); ++index < length;) array[index] = source[index]; 2601 return array 2602 } 2603 2604 function copyObject(source, props, object) { return copyObjectWith(source, props, object) } 2605 2606 function copyObjectWith(source, props, object, customizer) { 2607 object || (object = {}); 2608 for (var index = -1, length = props.length; ++index < length;) { 2609 var key = props[index], 2610 newValue = customizer ? customizer(object[key], source[key], key, object, source) : source[key]; 2611 assignValue(object, key, newValue) 2612 } 2613 return object 2614 } 2615 2616 function copySymbols(source, object) { return copyObject(source, getSymbols(source), object) } 2617 2618 function createAggregator(setter, initializer) { 2619 return function(collection, iteratee) { 2620 var func = isArray(collection) ? arrayAggregator : baseAggregator, 2621 accumulator = initializer ? initializer() : {}; 2622 return func(collection, setter, getIteratee(iteratee), accumulator) 2623 } 2624 } 2625 2626 function createAssigner(assigner) { 2627 return rest(function(object, sources) { 2628 var index = -1, 2629 length = sources.length, 2630 customizer = length > 1 ? sources[length - 1] : undefined, 2631 guard = length > 2 ? sources[2] : undefined; 2632 for (customizer = "function" == typeof customizer ? (length--, customizer) : undefined, guard && isIterateeCall(sources[0], sources[1], guard) && (customizer = length < 3 ? undefined : customizer, length = 1), object = Object(object); ++index < length;) { 2633 var source = sources[index]; 2634 source && assigner(object, source, index, customizer) 2635 } 2636 return object 2637 }) 2638 } 2639 2640 function createBaseEach(eachFunc, fromRight) { 2641 return function(collection, iteratee) { 2642 if (null == collection) return collection; 2643 if (!isArrayLike(collection)) return eachFunc(collection, iteratee); 2644 for (var length = collection.length, index = fromRight ? length : -1, iterable = Object(collection); 2645 (fromRight ? index-- : ++index < length) && iteratee(iterable[index], index, iterable) !== !1;); 2646 return collection 2647 } 2648 } 2649 2650 function createBaseFor(fromRight) { return function(object, iteratee, keysFunc) { for (var index = -1, iterable = Object(object), props = keysFunc(object), length = props.length; length--;) { var key = props[fromRight ? length : ++index]; if (iteratee(iterable[key], key, iterable) === !1) break } return object } } 2651 2652 function createBaseWrapper(func, bitmask, thisArg) { 2653 function wrapper() { var fn = this && this !== root && this instanceof wrapper ? Ctor : func; return fn.apply(isBind ? thisArg : this, arguments) } 2654 var isBind = bitmask & BIND_FLAG, 2655 Ctor = createCtorWrapper(func); 2656 return wrapper 2657 } 2658 2659 function createCaseFirst(methodName) { 2660 return function(string) {
2661 string = toString(string); 2662 var strSymbols = reHasComplexSymbol.test(string) ? stringToArray(string) : undefined, 2663 chr = strSymbols ? strSymbols[0] : string.charAt(0), 2664 trailing = strSymbols ? strSymbols.slice(1).join("") : string.slice(1); 2665 return chr[methodName]() + trailing 2666 } 2667 } 2668 2669 function createCompounder(callback) { return function(string) { return arrayReduce(words(deburr(string)), callback, "") } } 2670 2671 function createCtorWrapper(Ctor) { 2672 return function() { 2673 var args = arguments; 2674 switch (args.length) { 2675 case 0: 2676 return new Ctor; 2677 case 1: 2678 return new Ctor(args[0]); 2679 case 2: 2680 return new Ctor(args[0], args[1]); 2681 case 3: 2682 return new Ctor(args[0], args[1], args[2]); 2683 case 4: 2684 return new Ctor(args[0], args[1], args[2], args[3]); 2685 case 5: 2686 return new Ctor(args[0], args[1], args[2], args[3], args[4]); 2687 case 6: 2688 return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]); 2689 case 7: 2690 return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]) 2691 } 2692 var thisBinding = baseCreate(Ctor.prototype), 2693 result = Ctor.apply(thisBinding, args); 2694 return isObject(result) ? result : thisBinding 2695 } 2696 } 2697 2698 function createCurryWrapper(func, bitmask, arity) { 2699 function wrapper() { for (var length = arguments.length, index = length, args = Array(length), fn = this && this !== root && this instanceof wrapper ? Ctor : func, placeholder = lodash.placeholder || wrapper.placeholder; index--;) args[index] = arguments[index]; var holders = length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder ? [] : replaceHolders(args, placeholder); return length -= holders.length, length < arity ? createRecurryWrapper(func, bitmask, createHybridWrapper, placeholder, undefined, args, holders, undefined, undefined, arity - length) : apply(fn, this, args) } 2700 var Ctor = createCtorWrapper(func); 2701 return wrapper 2702 } 2703 2704 function createFlow(fromRight) { 2705 return rest(function(funcs) { 2706 funcs = baseFlatten(funcs); 2707 var length = funcs.length, 2708 index = length, 2709 prereq = LodashWrapper.prototype.thru; 2710 for (fromRight && funcs.reverse(); index--;) { var func = funcs[index]; if ("function" != typeof func) throw new TypeError(FUNC_ERROR_TEXT); if (prereq && !wrapper && "wrapper" == getFuncName(func)) var wrapper = new LodashWrapper([], !0) } 2711 for (index = wrapper ? index : length; ++index < length;) { 2712 func = funcs[index]; 2713 var funcName = getFuncName(func), 2714 data = "wrapper" == funcName ? getData(func) : undefined; 2715 wrapper = data && isLaziable(data[0]) && data[1] == (ARY_FLAG | CURRY_FLAG | PARTIAL_FLAG | REARG_FLAG) && !data[4].length && 1 == data[9] ? wrapper[getFuncName(data[0])].apply(wrapper, data[3]) : 1 == func.length && isLaziable(func) ? wrapper[funcName]() : wrapper.thru(func) 2716 } 2717 return function() { 2718 var args = arguments, 2719 value = args[0]; 2720 if (wrapper && 1 == args.length && isArray(value) && value.length >= LARGE_ARRAY_SIZE) return wrapper.plant(value).value(); 2721 for (var index = 0, result = length ? funcs[index].apply(this, args) : value; ++index < length;) result = funcs[index].call(this, result); 2722 return result 2723 } 2724 }) 2725 } 2726 2727 function createHybridWrapper(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) { 2728 function wrapper() { 2729 for (var length = arguments.length, index = length, args = Array(length); index--;) args[index] = arguments[index]; 2730 if (partials && (args = composeArgs(args, partials, holders)), partialsRight && (args = composeArgsRight(args, partialsRight, holdersRight)), isCurry || isCurryRight) { 2731 var placeholder = lodash.placeholder || wrapper.placeholder, 2732 argsHolders = replaceHolders(args, placeholder); 2733 if (length -= argsHolders.length, length < arity) return createRecurryWrapper(func, bitmask, createHybridWrapper, placeholder, thisArg, args, argsHolders, argPos, ary, arity - length) 2734 } 2735 var thisBinding = isBind ? thisArg : this, 2736 fn = isBindKey ? thisBinding[func] : func; 2737 return argPos ? args = reorder(args, argPos) : isFlip && args.length > 1 && args.reverse(), isAry && ary < args.length && (args.length = ary), this && this !== root && this instanceof wrapper && (fn = Ctor || createCtorWrapper(fn)), fn.apply(thisBinding, args
2737) 2738 } 2739 var isAry = bitmask & ARY_FLAG, 2740 isBind = bitmask & BIND_FLAG, 2741 isBindKey = bitmask & BIND_KEY_FLAG, 2742 isCurry = bitmask & CURRY_FLAG, 2743 isCurryRight = bitmask & CURRY_RIGHT_FLAG, 2744 isFlip = bitmask & FLIP_FLAG, 2745 Ctor = isBindKey ? undefined : createCtorWrapper(func); 2746 return wrapper 2747 } 2748 2749 function createInverter(setter, toIteratee) { return function(object, iteratee) { return baseInverter(object, setter, toIteratee(iteratee), {}) } } 2750 2751 function createOver(arrayFunc) { return rest(function(iteratees) { return iteratees = arrayMap(baseFlatten(iteratees), getIteratee()), rest(function(args) { var thisArg = this; return arrayFunc(iteratees, function(iteratee) { return apply(iteratee, thisArg, args) }) }) }) } 2752 2753 function createPadding(string, length, chars) { 2754 length = toInteger(length); 2755 var strLength = stringSize(string); 2756 if (!length || strLength >= length) return ""; 2757 var padLength = length - strLength; 2758 chars = chars === undefined ? " " : chars + ""; 2759 var result = repeat(chars, nativeCeil(padLength / stringSize(chars))); 2760 return reHasComplexSymbol.test(chars) ? stringToArray(result).slice(0, padLength).join("") : result.slice(0, padLength) 2761 } 2762 2763 function createPartialWrapper(func, bitmask, thisArg, partials) { 2764 function wrapper() { for (var argsIndex = -1, argsLength = arguments.length, leftIndex = -1, leftLength = partials.length, args = Array(leftLength + argsLength), fn = this && this !== root && this instanceof wrapper ? Ctor : func; ++leftIndex < leftLength;) args[leftIndex] = partials[leftIndex]; for (; argsLength--;) args[leftIndex++] = arguments[++argsIndex]; return apply(fn, isBind ? thisArg : this, args) } 2765 var isBind = bitmask & BIND_FLAG, 2766 Ctor = createCtorWrapper(func); 2767 return wrapper 2768 } 2769 2770 function createRange(fromRight) { return function(start, end, step) { return step && "number" != typeof step && isIterateeCall(start, end, step) && (end = step = undefined), start = toNumber(start), start = start === start ? start : 0, end === undefined ? (end = start, start = 0) : end = toNumber(end) || 0, step = step === undefined ? start < end ? 1 : -1 : toNumber(step) || 0, baseRange(start, end, step, fromRight) } } 2771 2772 function createRecurryWrapper(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) { 2773 var isCurry = bitmask & CURRY_FLAG, 2774 newArgPos = argPos ? copyArray(argPos) : undefined, 2775 newsHolders = isCurry ? holders : undefined, 2776 newHoldersRight = isCurry ? undefined : holders, 2777 newPartials = isCurry ? partials : undefined, 2778 newPartialsRight = isCurry ? undefined : partials; 2779 bitmask |= isCurry ? PARTIAL_FLAG : PARTIAL_RIGHT_FLAG, bitmask &= ~(isCurry ? PARTIAL_RIGHT_FLAG : PARTIAL_FLAG), bitmask & CURRY_BOUND_FLAG || (bitmask &= ~(BIND_FLAG | BIND_KEY_FLAG)); 2780 var newData = [func, bitmask, thisArg, newPartials, newsHolders, newPartialsRight, newHoldersRight, newArgPos, ary, arity], 2781 result = wrapFunc.apply(undefined, newData); 2782 return isLaziable(func) && setData(result, newData), result.placeholder = placeholder, result 2783 } 2784 2785 function createRound(methodName) { 2786 var func = Math[methodName]; 2787 return function(number, precision) { 2788 if (number = toNumber(number), precision = toInteger(precision)) { 2789 var pair = (toString(number) + "e").split("e"), 2790 value = func(pair[0] + "e" + (+pair[1] + precision)); 2791 return pair = (toString(value) + "e").split("e"), +(pair[0] + "e" + (+pair[1] - precision)) 2792 } 2793 return func(number) 2794 } 2795 } 2796 2797 function createWrapper(func, bitmask, thisArg, partials, holders, argPos, ary, arity) { 2798 var isBindKey = bitmask & BIND_KEY_FLAG; 2799 if (!isBindKey && "function" != typeof func) throw new TypeError(FUNC_ERROR_TEXT); 2800 var length = partials ? partials.length : 0; 2801 if (length || (bitmask &= ~(PARTIAL_FLAG | PARTIAL_RIGHT_FLAG), partials = holders = undefined), ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0), arity = arity === undefined ? arity : toInteger(arity), length -= holders ? holders.length : 0, bitmask & PARTIAL_RIGHT_FLAG) { 2802 var partialsRight = partials, 2803 holdersRight = holders; 2804 partials = holders = undefined 2805 } 2806 var data = isBindKey ? undefined : getData(func), 2807 newData = [func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity]; 2808 if (data && mergeData(newData, data), func = newData[0], bitmask = newData[1], thisArg = newData[2], partials = newData[3], holders = newData[4], arity = newData[9] = null == newData[9] ? isBindKey ? 0 : func.length : nativeMax(newData[9] - length, 0), !arity && bitmask & (CURRY_FLAG | CURRY_RIGHT_FLAG) && (bitmask &= ~(CURRY_FLAG | CURRY_RIGHT_FLAG)), bitmask && bitmask != BIND_FLAG) result = bitmask == CURRY_FLAG || bitmask == CURRY_RIGHT_FLAG ? createCurryWrapper(func, bitmask, arity) : bitmask != PARTIAL_FLAG && bitmask != (BIND_FLAG | PARTIAL_FLAG) || holders.length ? createHybridWrapper.apply(undefined, newData) : createParti
2808alWrapper(func, bitmask, thisArg, partials); 2809 else var result = createBaseWrapper(func, bitmask, thisArg); 2810 var setter = data ? baseSetData : setData; 2811 return setter(result, newData) 2812 } 2813 2814 function equalArrays(array, other, equalFunc, customizer, bitmask, stack) { 2815 var index = -1, 2816 isPartial = bitmask & PARTIAL_COMPARE_FLAG, 2817 isUnordered = bitmask & UNORDERED_COMPARE_FLAG, 2818 arrLength = array.length, 2819 othLength = other.length; 2820 if (arrLength != othLength && !(isPartial && othLength > arrLength)) return !1; 2821 var stacked = stack.get(array); 2822 if (stacked) return stacked == other; 2823 var result = !0; 2824 for (stack.set(array, other); ++index < arrLength;) { 2825 var arrValue = array[index], 2826 othValue = other[index]; 2827 if (customizer) var compared = isPartial ? customizer(othValue, arrValue, index, other, array, stack) : customizer(arrValue, othValue, index, array, other, stack); 2828 if (compared !== undefined) { 2829 if (compared) continue; 2830 result = !1; 2831 break 2832 } 2833 if (isUnordered) { if (!arraySome(other, function(othValue) { return arrValue === othValue || equalFunc(arrValue, othValue, customizer, bitmask, stack) })) { result = !1; break } } else if (arrValue !== othValue && !equalFunc(arrValue, othValue, customizer, bitmask, stack)) { result = !1; break } 2834 } 2835 return stack.delete(array), result 2836 } 2837 2838 function equalByTag(object, other, tag, equalFunc, customizer, bitmask) { 2839 switch (tag) { 2840 case arrayBufferTag: 2841 return !(object.byteLength != other.byteLength || !equalFunc(new Uint8Array(object), new Uint8Array(other))); 2842 case boolTag: 2843 case dateTag: 2844 return +object == +other; 2845 case errorTag: 2846 return object.name == other.name && object.message == other.message; 2847 case numberTag: 2848 return object != +object ? other != +other : object == +other; 2849 case regexpTag: 2850 case stringTag: 2851 return object == other + ""; 2852 case mapTag: 2853 var convert = mapToArray; 2854 case setTag: 2855 var isPartial = bitmask & PARTIAL_COMPARE_FLAG; 2856 return convert || (convert = setToArray), (isPartial || object.size == other.size) && equalFunc(convert(object), convert(other), customizer, bitmask | UNORDERED_COMPARE_FLAG); 2857 case symbolTag: 2858 return !!Symbol && symbolValueOf.call(object) == symbolValueOf.call(other) 2859 } 2860 return !1 2861 } 2862 2863 function equalObjects(object, other, equalFunc, customizer, bitmask, stack) { 2864 var isPartial = bitmask & PARTIAL_COMPARE_FLAG, 2865 objProps = keys(object), 2866 objLength = objProps.length, 2867 othProps = keys(other), 2868 othLength = othProps.length; 2869 if (objLength != othLength && !isPartial) return !1; 2870 for (var index = objLength; index--;) { var key = objProps[index]; if (!(isPartial ? key in other : baseHas(other, key))) return !1 } 2871 var stacked = stack.get(object); 2872 if (stacked) return stacked == other; 2873 var result = !0; 2874 stack.set(object, other); 2875 for (var skipCtor = isPartial; ++index < objLength;) { 2876 key = objProps[index]; 2877 var objValue = object[key], 2878 othValue = other[key]; 2879 if (customizer) var compared = isPartial ? customizer(othValue, objValue, key, other, object, stack) : customizer(objValue, othValue, key, object, other, stack); 2880 if (!(compared === undefined ? objValue === othValue || equalFunc(objValue, othValue, customizer, bitmask, stack) : compared)) { result = !1; break } 2881 skipCtor || (skipCtor = "constructor" == key) 2882 } 2883 if (result && !skipCtor) { 2884 var objCtor = object.constructor, 2885 othCtor = other.constructor; 2886 objCtor != othCtor && "constructor" in object && "constructor" in other && !("function" == typeof objCtor && objCtor instanceof objCtor && "function" == typeof othCtor && othCtor instanceof othCtor) && (result = !1) 2887 } 2888 return stack.delete(object), result 2889 } 2890 2891 function getFuncName(func) { 2892 for (var result = func.name + "", array = realNames[result], length = hasOwnProperty.call(realNames, result) ? array.length : 0; length--;) { 2893 var data = array[length], 2894 otherFunc = data.func; 2895 if (null == otherFunc || otherFunc == func) return data.name 2896 } 2897 return result 2898 } 2899 2900 function getIteratee() { var result = lodash.iteratee || iteratee; return result = result === iteratee ? baseIteratee : result, arguments.length ? result(arguments[0], arguments[1]) : result } 2901 2902 function getMatchData(object) { for (var result = toPairs(object), length = result.length; length--;) result[length][2] = isStrictComparable(result[length][1]); return result } 2903 2904 function getNative(object, key) { var value = null == object ? undefined : object[key]; return isNative(value) ? value : undefined } 2905 2906 function getTag(value) { return objectToString.call(value) } 2907 2908 function getView(start, end, transforms) { 2909 for (var index = -1, length = transforms.length; ++index < length;) { 2910 var data = transforms[index], 2911 size = data.size; 2912 switch (data.type) { 2913 case "drop": 2914 start += size; 2915 break; 2916 case "dropRight": 2917 end -= size; 2918 break; 2919 case "take":
2920 end = nativeMin(end, start + size); 2921 break; 2922 case "takeRight": 2923 start = nativeMax(start, end - size) 2924 } 2925 } 2926 return { start: start, end: end } 2927 } 2928 2929 function hasPath(object, path, hasFunc) { 2930 if (null == object) return !1; 2931 var result = hasFunc(object, path); 2932 result || isKey(path) || (path = baseToPath(path), object = parent(object, path), null != object && (path = last(path), result = hasFunc(object, path))); 2933 var length = object ? object.length : undefined; 2934 return result || !!length && isLength(length) && isIndex(path, length) && (isArray(object) || isString(object) || isArguments(object)) 2935 } 2936 2937 function initCloneArray(array) { 2938 var length = array.length, 2939 result = array.constructor(length); 2940 return length && "string" == typeof array[0] && hasOwnProperty.call(array, "index") && (result.index = array.index, result.input = array.input), result 2941 } 2942 2943 function initCloneObject(object) { if (isPrototype(object)) return {}; var Ctor = object.constructor; return baseCreate(isFunction(Ctor) ? Ctor.prototype : undefined) } 2944 2945 function initCloneByTag(object, tag, isDeep) { 2946 var Ctor = object.constructor; 2947 switch (tag) { 2948 case arrayBufferTag: 2949 return cloneBuffer(object); 2950 case boolTag: 2951 case dateTag: 2952 return new Ctor(+object); 2953 case float32Tag: 2954 case float64Tag: 2955 case int8Tag: 2956 case int16Tag: 2957 case int32Tag: 2958 case uint8Tag: 2959 case uint8ClampedTag: 2960 case uint16Tag: 2961 case uint32Tag: 2962 return cloneTypedArray(object, isDeep); 2963 case mapTag: 2964 return cloneMap(object); 2965 case numberTag: 2966 case stringTag: 2967 return new Ctor(object); 2968 case regexpTag: 2969 return cloneRegExp(object); 2970 case setTag: 2971 return cloneSet(object); 2972 case symbolTag: 2973 return cloneSymbol(object) 2974 } 2975 } 2976 2977 function indexKeys(object) { var length = object ? object.length : undefined; return isLength(length) && (isArray(object) || isString(object) || isArguments(object)) ? baseTimes(length, String) : null } 2978 2979 function isIterateeCall(value, index, object) { if (!isObject(object)) return !1; var type = typeof index; return !!("number" == type ? isArrayLike(object) && isIndex(index, object.length) : "string" == type && index in object) && eq(object[index], value) } 2980 2981 function isKey(value, object) { return "number" == typeof value || !isArray(value) && (reIsPlainProp.test(value) || !reIsDeepProp.test(value) || null != object && value in Object(object)) } 2982 2983 function isKeyable(value) { var type = typeof value; return "number" == type || "boolean" == type || "string" == type && "__proto__" !== value || null == value } 2984 2985 function isLaziable(func) { 2986 var funcName = getFuncName(func), 2987 other = lodash[funcName]; 2988 if ("function" != typeof other || !(funcName in LazyWrapper.prototype)) return !1; 2989 if (func === other) return !0; 2990 var data = getData(other); 2991 return !!data && func === data[0] 2992 } 2993 2994 function isPrototype(value) { 2995 var Ctor = value && value.constructor, 2996 proto = "function" == typeof Ctor && Ctor.prototype || objectProto; 2997 return value === proto 2998 } 2999 3000 function isStrictComparable(value) { return value === value && !isObject(value) } 3001 3002 function mergeData(data, source) { 3003 var bitmask = data[1], 3004 srcBitmask = source[1], 3005 newBitmask = bitmask | srcBitmask, 3006 isCommon = newBitmask < (BIND_FLAG | BIND_KEY_FLAG | ARY_FLAG), 3007 isCombo = srcBitmask == ARY_FLAG && bitmask == CURRY_FLAG || srcBitmask == ARY_FLAG && bitmask == REARG_FLAG && data[7].length <= source[8] || srcBitmask == (ARY_FLAG | REARG_FLAG) && source[7].length <= source[8] && bitmask == CURRY_FLAG; 3008 if (!isCommon && !isCombo) return data; 3009 srcBitmask & BIND_FLAG && (data[2] = source[2], newBitmask |= bitmask & BIND_FLAG ? 0 : CURRY_BOUND_FLAG); 3010 var value = source[3]; 3011 if (value) { 3012 var partials = data[3]; 3013 data[3] = partials ? composeArgs(partials, value, source[4]) : copyArray(value), data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : copyArray(source[4]) 3014 } 3015 return value = source[5], value && (partials = data[5], data[5] = partials ? composeArgsRight(partials, value, source[6]) : copyArray(value), data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : copyArray(source[6])), value = source[7], value && (data[7] = copyArray(value)), srcBitmask & ARY_FLAG && (data[8] = null == data[8] ? source[8] : nativeMin(data[8], source[8])), null == data[9] && (data[9] = source[9]), data[0] = source[0], data[1] = newBitmask, data 3016 } 3017 3018 function mergeDefaults(objValue, srcValue, key, object, source, stack) { return isObject(objValue) && isObject(srcValue) && (stack.set(srcValue, objValue), baseMerge(objValue, srcValue, undefined, mergeDefaults, stack)), objValue } 3019 3020 function parent(object, path) { return 1 == path.length ? object : get(object, baseSlice(path, 0, -1)) } 3021 3022 function reorder(array, indexes) { 3023 for (var arrLength = array.length, length = nativeMin(indexe
3023s.length, arrLength), oldArray = copyArray(array); length--;) { 3024 var index = indexes[length]; 3025 array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined 3026 } 3027 return array 3028 } 3029 3030 function stringToPath(string) { var result = []; return toString(string).replace(rePropName, function(match, number, quote, string) { result.push(quote ? string.replace(reEscapeChar, "$1") : number || match) }), result } 3031 3032 function toArrayLikeObject(value) { return isArrayLikeObject(value) ? value : [] } 3033 3034 function toFunction(value) { return "function" == typeof value ? value : identity } 3035 3036 function wrapperClone(wrapper) { if (wrapper instanceof LazyWrapper) return wrapper.clone(); var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); return result.__actions__ = copyArray(wrapper.__actions__), result.__index__ = wrapper.__index__, result.__values__ = wrapper.__values__, result } 3037 3038 function chunk(array, size) { size = nativeMax(toInteger(size), 0); var length = array ? array.length : 0; if (!length || size < 1) return []; for (var index = 0, resIndex = -1, result = Array(nativeCeil(length / size)); index < length;) result[++resIndex] = baseSlice(array, index, index += size); return result } 3039 3040 function compact(array) { 3041 for (var index = -1, length = array ? array.length : 0, resIndex = -1, result = []; ++index < length;) { 3042 var value = array[index]; 3043 value && (result[++resIndex] = value) 3044 } 3045 return result 3046 } 3047 3048 function drop(array, n, guard) { var length = array ? array.length : 0; return length ? (n = guard || n === undefined ? 1 : toInteger(n), baseSlice(array, n < 0 ? 0 : n, length)) : [] } 3049 3050 function dropRight(array, n, guard) { var length = array ? array.length : 0; return length ? (n = guard || n === undefined ? 1 : toInteger(n), n = length - n, baseSlice(array, 0, n < 0 ? 0 : n)) : [] } 3051 3052 function dropRightWhile(array, predicate) { return array && array.length ? baseWhile(array, getIteratee(predicate, 3), !0, !0) : [] } 3053 3054 function dropWhile(array, predicate) { return array && array.length ? baseWhile(array, getIteratee(predicate, 3), !0) : [] } 3055 3056 function fill(array, value, start, end) { var length = array ? array.length : 0; return length ? (start && "number" != typeof start && isIterateeCall(array, value, start) && (start = 0, end = length), baseFill(array, value, start, end)) : [] } 3057 3058 function findIndex(array, predicate) { return array && array.length ? baseFindIndex(array, getIteratee(predicate, 3)) : -1 } 3059 3060 function findLastIndex(array, predicate) { return array && array.length ? baseFindIndex(array, getIteratee(predicate, 3), !0) : -1 } 3061 3062 function flatten(array) { var length = array ? array.length : 0; return length ? baseFlatten(array) : [] } 3063 3064 function flattenDeep(array) { var length = array ? array.length : 0; return length ? baseFlatten(array, !0) : [] } 3065 3066 function fromPairs(pairs) { 3067 for (var index = -1, length = pairs ? pairs.length : 0, result = {}; ++index < length;) { 3068 var pair = pairs[index]; 3069 result[pair[0]] = pair[1] 3070 } 3071 return result 3072 } 3073 3074 function head(array) { return array ? array[0] : undefined } 3075 3076 function indexOf(array, value, fromIndex) { var length = array ? array.length : 0; return length ? (fromIndex = toInteger(fromIndex), fromIndex < 0 && (fromIndex = nativeMax(length + fromIndex, 0)), baseIndexOf(array, value, fromIndex)) : -1 } 3077 3078 function initial(array) { return dropRight(array, 1) } 3079 3080 function join(array, separator) { return array ? nativeJoin.call(array, separator) : "" } 3081 3082 function last(array) { var length = array ? array.length : 0; return length ? array[length - 1] : undefined } 3083 3084 function lastIndexOf(array, value, fromIndex) { 3085 var length = array ? array.length : 0; 3086 if (!length) return -1; 3087 var index = length; 3088 if (fromIndex !== undefined && (index = toInteger(fromIndex), index = (index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1)) + 1), value !== value) return indexOfNaN(array, index, !0); 3089 for (; index--;) 3090 if (array[index] === value) return index; 3091 return -1 3092 } 3093 3094 function pullAll(array, values) { return array && array.length && values && values.length ? basePullAll(array, values) : array } 3095 3096 function pullAllBy(array, values, iteratee) { return array && array.length && values && values.length ? basePullAllBy(array, values, getIteratee(iteratee)) : array } 3097 3098 function remove(array, predicate) { 3099 var result = []; 3100 if (!array || !array.length) return result; 3101 var index = -1, 3102 indexes = [], 3103 length = array.length; 3104 for (predicate = getIteratee(predicate, 3); ++index < length;) { 3105 var value = array[index]; 3106 predicate(value, index, array) && (result.push(value), indexes.push(index)) 3107 } 3108 return basePullAt(array, indexes), result 3109 } 3110 3111 function reverse(array) { return array ? nativeReverse.call(array) : array } 3112 3113 function slice(array, start, end) { var length = array ? array.length : 0; return length ? (end && "number" != typeof end && isIterateeCall(array, start, end) ? (start = 0, end = length) : (start = null == start ? 0 : toInteger(start), end = end === undefined ? length : toInteger(end)), baseSlice(array, start, end)) : [] } 3114 3115 function sortedIndex(array, value) { return baseSortedIndex(array, value) } 3116 3117 function sortedIndexBy(array, value, iteratee) { return baseSortedIndexBy(array, value, getIteratee(iteratee)) } 3118 3119 function sortedIndexOf(array, value) { var length = array ? array.length : 0; if (length) { var index = baseSortedIndex(array, value); if (index < length && eq(array[index], value)) return index } return -1 } 3120 3121 function sortedLastIndex(array, value) { return baseSortedIndex(array, value, !0) } 3122 3123 function sortedLastIndexBy(array, value, iteratee) { return baseSortedIndexBy(array, value, getIteratee(iteratee), !0) } 3124 3125 function sortedLastIndexOf(array, value) { var length = array ? array.length : 0; if (length) { var index = baseSortedIndex(array, value, !0) - 1; if (eq(array[index], value)) return index } return -1 } 3126 3127 function sortedUniq(array) { return array && array.length ? baseSortedUniq(array) : [] } 3128 3129 function sortedUniqBy(array, iteratee) { return array && array.length ? baseSortedUniqBy(array, getIteratee(iteratee)) : [] } 3130 3131 function tail(array) { return drop(array, 1) } 3132 3133 function take(array, n, guard) { return array && array.length ? (n = guard || n === undefined ? 1 : toInteger(n), baseSlice(array, 0, n < 0 ? 0 : n)) : [] } 3134 3135 function takeRight(array, n, guard) { var length = array ? array.length : 0; return length ? (n = guard || n === undefined ? 1 : toInteger(n), n = length - n, baseSlice(array, n < 0 ? 0 : n, length)) : [] } 3136 3137 function takeRightWhile(array, predicate) { return array && array.length ? baseWhile(array, getIteratee(predicate, 3), !1, !0) : [] } 3138 3139 function takeWhile(array, predicate) { return array && array.length ? baseWhile(array, getIteratee(predicate, 3)) : [] } 3140 3141 function uniq(array) { return array && array.length ? baseUniq(array) : [] } 3142 3143 function uniqBy(array, iteratee) { return array && array.length ? baseUniq(array, getIteratee(iteratee)) : [] } 3144 3145 function uniqWith(array, comparator) { return array && array.length ? baseUniq(array, undefined, c
3145omparator) : [] } 3146 3147 function unzip(array) { if (!array || !array.length) return []; var length = 0; return array = arrayFilter(array, function(group) { if (isArrayLikeObject(group)) return length = nativeMax(group.length, length), !0 }), baseTimes(length, function(index) { return arrayMap(array, baseProperty(index)) }) } 3148 3149 function unzipWith(array, iteratee) { if (!array || !array.length) return []; var result = unzip(array); return null == iteratee ? result : arrayMap(result, function(group) { return apply(iteratee, undefined, group) }) } 3150 3151 function zipObject(props, values) { return baseZipObject(props || [], values || [], assignValue) } 3152 3153 function zipObjectDeep(props, values) { return baseZipObject(props || [], values || [], baseSet) } 3154 3155 function chain(value) { var result = lodash(value); return result.__chain__ = !0, result } 3156 3157 function tap(value, interceptor) { return interceptor(value), value } 3158 3159 function thru(value, interceptor) { return interceptor(value) } 3160 3161 function wrapperChain() { return chain(this) } 3162 3163 function wrapperCommit() { return new LodashWrapper(this.value(), this.__chain__) } 3164 3165 function wrapperFlatMap(iteratee) { return this.map(iteratee).flatten() } 3166 3167 function wrapperNext() { 3168 this.__values__ === undefined && (this.__values__ = toArray(this.value())); 3169 var done = this.__index__ >= this.__values__.length, 3170 value = done ? undefined : this.__values__[this.__index__++]; 3171 return { done: done, value: value } 3172 } 3173 3174 function wrapperToIterator() { return this } 3175 3176 function wrapperPlant(value) { 3177 for (var result, parent = this; parent instanceof baseLodash;) { 3178 var clone = wrapperClone(parent); 3179 clone.__index__ = 0, clone.__values__ = undefined, result ? previous.__wrapped__ = clone : result = clone; 3180 var previous = clone; 3181 parent = parent.__wrapped__ 3182 } 3183 return previous.__wrapped__ = value, result 3184 } 3185 3186 function wrapperReverse() { var value = this.__wrapped__; if (value instanceof LazyWrapper) { var wrapped = value;
3186 return this.__actions__.length && (wrapped = new LazyWrapper(this)), wrapped = wrapped.reverse(), wrapped.__actions__.push({ func: thru, args: [reverse], thisArg: undefined }), new LodashWrapper(wrapped, this.__chain__) } return this.thru(reverse) } 3187 3188 function wrapperValue() { return baseWrapperValue(this.__wrapped__, this.__actions__) } 3189 3190 function every(collection, predicate, guard) { var func = isArray(collection) ? arrayEvery : baseEvery; return guard && isIterateeCall(collection, predicate, guard) && (predicate = undefined), func(collection, getIteratee(predicate, 3)) } 3191 3192 function filter(collection, predicate) { var func = isArray(collection) ? arrayFilter : baseFilter; return func(collection, getIteratee(predicate, 3)) } 3193 3194 function find(collection, predicate) { if (predicate = getIteratee(predicate, 3), isArray(collection)) { var index = baseFindIndex(collection, predicate); return index > -1 ? collection[index] : undefined } return baseFind(collection, predicate, baseEach) } 3195 3196 function findLast(collection, predicate) { if (predicate = getIteratee(predicate, 3), isArray(collection)) { var index = baseFindIndex(collection, predicate, !0); return index > -1 ? collection[index] : undefined } return baseFind(collection, predicate, baseEachRight) } 3197 3198 function flatMap(collection, iteratee) { return baseFlatten(map(collection, iteratee)) } 3199 3200 function forEach(collection, iteratee) { return "function" == typeof iteratee && isArray(collection) ? arrayEach(collection, iteratee) : baseEach(collection, toFunction(iteratee)) } 3201 3202 function forEachRight(collection, iteratee) { return "function" == typeof iteratee && isArray(collection) ? arrayEachRight(collection, iteratee) : baseEachRight(collection, toFunction(iteratee)) } 3203 3204 function includes(collection, value, fromIndex, guard) { collection = isArrayLike(collection) ? collection : values(collection), fromIndex = fromIndex && !guard ? toInteger(fromIndex) : 0; var length = collection.length; return fromIndex < 0 && (fromIndex = nativeMax(length + fromIndex, 0)), isString(collection) ? fromIndex <= length && collection.indexOf(value, fromIndex) > -1 : !!length && baseIndexOf(collection, value, fromIndex) > -1 } 3205 3206 function map(collection, iteratee) { var func = isArray(collection) ? arrayMap : baseMap; return func(collection, getIteratee(iteratee, 3)) } 3207 3208 function orderBy(collection, iteratees, orders, guard) { return null == collection ? [] : (isArray(iteratees) || (iteratees = null == iteratees ? [] : [iteratees]), orders = guard ? undefined : orders, isArray(orders) || (orders = null == orders ? [] : [orders]), baseOrderBy(collection, iteratees, orders)) } 3209 3210 function reduce(collection, iteratee, accumulator) { 3211 var func = isArray(collection) ? arrayReduce : baseReduce, 3212 initAccum = arguments.length < 3; 3213 return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach) 3214 } 3215 3216 function reduceRight(collection, iteratee, accumulator) { 3217 var func = isArray(collection) ? arrayReduceRight : baseReduce, 3218 initAccum = arguments.length < 3; 3219 return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight) 3220 } 3221 3222 function reject(collection, predicate) { var func = isArray(collection) ? arrayFilter : baseFilter; return predicate = getIteratee(predicate, 3), func(collection, function(value, index, collection) { return !predicate(value, index, collection) }) } 3223 3224 function sample(collection) { 3225 var array = isArrayLike(collection) ? collection : values(collection), 3226 length = array.length; 3227 return length > 0 ? array[baseRandom(0, length - 1)] : undefined 3228 } 3229 3230 function sampleSize(collection, n) { 3231 var index = -1, 3232 result = toArray(collection), 3233 length = result.length, 3234 lastIndex = length - 1; 3235 for (n = baseClamp(toInteger(n), 0, length); ++index < n;) { 3236 var rand = baseRandom(index, lastIndex), 3237 value = result[rand]; 3238 result[rand] = result[index], result[index] = value 3239 } 3240 return result.length = n, result 3241 } 3242 3243 function shuffle(collection) { return sampleSize(collection, MAX_ARRAY_LENGTH) } 3244 3245 function size(collection) { if (null == collection) return 0; if (isArrayLike(collection)) { var result = collection.length; return result && isString(collection) ? stringSize(collection) : result } return keys(collection).length } 3246 3247 function some(collection, predicate, guard) { var func = isArray(collection) ? arraySome : baseSome; return guard && isIterateeCall(collection, predicate, guard) && (predicate = undefined), func(collection, getIteratee(predicate, 3)) } 3248 3249 function after(n, func) { 3250 if ("function" != typeof func) throw new TypeError(FUNC_ERROR_TEXT); 3251 return n = toInteger(n), 3252 function() { if (--n < 1) return func.apply(this, arguments) } 3253 } 3254 3255 function ary(func, n, guard) { return n = guard ? undefined : n, n = func && null == n ? func.length : n, createWrapper(func, ARY_FLAG, undefined, undefined, undefined, undefined, n) } 3256 3257 function before(n, func) { 3258 var result; 3259 if ("function" != typeof func) throw new TypeError(FUNC_ERROR_TEXT); 3260 return n = toInteger(n), 3261 function() { return --n > 0 && (result = func.apply(this, arguments)), n <= 1 && (func = undefined), result } 3262 } 3263 3264 function curry(func, arity, guard) { arity = guard ? undefined : arity; var result = createWrapper(func, CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity); return result.placeholder = lodash.placeholder || curry.placeholder, result } 3265 3266 function curryRight(func, arity, guard) { arity = guard ? undefined : arity; var result = createWrapper(func, CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity); return result.placeholder = lodash.placeholder || curryRight.placeholder, result } 3267 3268 function debounce(func, wait, options) { 3269 function cancel() { timeoutId && clearTimeout(timeoutId), maxTimeoutId && clearTimeout(maxTimeoutId), lastCalled = 0, args = maxTimeoutId = thisArg = timeoutId = trailingCall = undefined } 3270 3271 function complete(isCalled, id) { id && clearTimeout(id), maxTimeoutId = timeoutId = trailingCall = undefined, isCalled && (lastCalled = now(), result = func.apply(thisArg, args), timeoutId || maxTimeoutId || (args = thisArg = undefined)) } 3272 3273 function delayed() { 3274 var remaining = wait - (now() - stamp); 3275 remaining <= 0 || remaining > wait ? complete(trailingCall, maxTimeoutId) : timeoutId = setTimeout(delayed, remaining) 3276 } 3277 3278 function flush() { return (timeoutId && trailingCall || maxTimeoutId && trailing) && (result = func.apply(thisArg, args)), cancel(), result } 3279 3280 function maxDelayed() { complete(trailing, timeoutId) } 3281 3282 function debounced() { 3283 if (args = arguments, stamp = now(), thisArg = this, trailingCall = trailing && (timeoutId || !leading), maxWait === !1) var leadingCall = leading && !timeoutId; 3284 else { 3285 maxTimeoutId || leading || (lastCalled = stamp); 3286 var remaining = maxWait - (stamp - lastCalled), 3287 isCalled = remaining <= 0 || remaining > maxWait; 3288 isCalled ? (maxTimeoutId && (maxTimeoutId = clearTimeout(maxTimeoutId)), lastCalled = stamp, result = func.apply(thisArg, args)) : maxTimeoutId || (maxTimeoutId = setTimeout(maxDelayed, remaining)) 3289 } 3290 return isCalled && timeoutId ? timeoutId = clearTimeout(timeoutId) : timeoutId || wait === maxWait || (timeoutId = setTimeout(delayed, wait)), leadingCall && (isCalled = !0, result = func.apply(thisArg, args)), !isCalled || timeoutId || maxTimeoutId || (args = thisArg = undefined), result 3291 } 3292 var args, maxTimeoutId, result, stamp, thisArg, timeoutId, trailingCall, lastCalled = 0, 3293 leading = !1, 3294 maxWait = !1, 3295 trailing = !0; 3296 if ("function" != typeof func) throw new TypeError(FUNC_ERROR_TEXT); 3297 return wait = toNumber(wait) || 0, isObject(options) && (leading = !!options.leading, maxWait = "maxWait" in options && nativeMax(toNumber(options.maxWait) || 0, wait), trailing = "trailing" in options ? !!options.trailing : trailing), debounced.cancel = cancel, debounced.flush = flush, debounced 3298 } 3299 3300 function flip(func) { return createWrapper(func, FLIP_FLAG) } 3301 3302 function memoize(func, resolver) { 3303 if ("function" != typeof func || resolver && "function" != typeof resolver) throw new TypeError(FUNC_ERROR_TEXT); 3304 var memoized = function() { 3305 var args = arguments, 3306 key = resolver ? resolver.apply(this, args) : args[0], 3307 cache = memoized.cache; 3308 if (cache.has(key)) return cache.get(key); 3309 var result = func.apply(this, args); 3310 return memoized.cache = cache.set(key, result), result 3311 }; 3312 return memoized.cache = new memoize.Cache, memoized 3313 } 3314 3315 function negate(predicate) { if ("function" != typeof predicate) throw new TypeError(FUNC_ERROR_TEXT); return function() { return !predicate.apply(this, arguments) } } 3316 3317 function once(func) { return before(2, func) } 3318 3319 function rest(func, start) { 3320 if ("function" != typeof func) throw new TypeError(FUNC_ERROR_TEXT); 3321 return start = nativeMax(start === undefined ? func.length - 1 : toInteger(start), 0), 3322 function() { 3323 for (var args = arguments, index = -1, length = nativeMax(args.length - start, 0), array = Array(length); ++index < length;) array[index] = args[start + index]; 3324 switch (start) { 3325 case 0: 3326 return func.call(this, array); 3327 case 1: 3328 return func.call(this, args[0], array); 3329 case 2: 3330 return func.call(this, args[0], args[1], array) 3331 } 3332 var otherArgs = Array(start + 1); 3333 for (index = -1; ++index < start;) otherArgs[index] = args[index]; 3334 return otherArgs[start] = array, apply(func, this, otherArgs) 3335 } 3336 } 3337 3338 function spread(func, start) { 3339 if ("function" != typeof func) throw new TypeError(FUNC_ERROR_TEXT);
3340 return start = start === undefined ? 0 : nativeMax(toInteger(start), 0), rest(function(args) { 3341 var array = args[start], 3342 otherArgs = args.slice(0, start); 3343 return array && arrayPush(otherArgs, array), apply(func, this, otherArgs) 3344 }) 3345 } 3346 3347 function throttle(func, wait, options) { 3348 var leading = !0, 3349 trailing = !0; 3350 if ("function" != typeof func) throw new TypeError(FUNC_ERROR_TEXT); 3351 return isObject(options) && (leading = "leading" in options ? !!options.leading : leading, trailing = "trailing" in options ? !!options.trailing : trailing), debounce(func, wait, { leading: leading, maxWait: wait, trailing: trailing }) 3352 } 3353 3354 function unary(func) { return ary(func, 1) } 3355 3356 function wrap(value, wrapper) { return wrapper = null == wrapper ? identity : wrapper, partial(wrapper, value) } 3357 3358 function clone(value) { return baseClone(value) } 3359 3360 function cloneWith(value, customizer) { return baseClone(value, !1, customizer) } 3361 3362 function cloneDeep(value) { return baseClone(value, !0) } 3363 3364 function cloneDeepWith(value, customizer) { return baseClone(value, !0, customizer) } 3365 3366 function eq(value, other) { return value === other || value !== value && other !== other } 3367 3368 function gt(value, other) { return value > other } 3369 3370 function gte(value, other) { return value >= other } 3371 3372 function isArguments(value) { return isArrayLikeObject(value) && hasOwnProperty.call(value, "callee") && (!propertyIsEnumerable.call(value, "callee") || objectToString.call(value) == argsTag) } 3373 3374 function isArrayLike(value) { return null != value && !("function" == typeof value && isFunction(value)) && isLength(getLength(value)) } 3375 3376 function isArrayLikeObject(value) { return isObjectLike(value) && isArrayLike(value) } 3377 3378 function isBoolean(value) { return value === !0 || value === !1 || isObjectLike(value) && objectToString.call(value) == boolTag } 3379 3380 function isDate(value) { return isObjectLike(value) && objectToString.call(value) == dateTag } 3381 3382 function isElement(value) { return !!value && 1 === value.nodeType && isObjectLike(value) && !isPlainObject(value) } 3383 3384 function isEmpty(value) { 3385 if (isArrayLike(value) && (isArray(value) || isString(value) || isFunction(value.splice) || isArguments(value))) return !value.length; 3386 for (var key in value) 3387 if (hasOwnProperty.call(value, key)) return !1; 3388 return !0 3389 } 3390 3391 function isEqual(value, other) { return baseIsEqual(value, other) } 3392 3393 function isEqualWith(value, other, customizer) { customizer = "function" == typeof customizer ? customizer : undefined; var result = customizer ? customizer(value, other) : undefined; return result === undefined ? baseIsEqual(value, other, customizer) : !!result } 3394 3395 function isError(value) { return isObjectLike(value) && "string" == typeof value.message && objectToString.call(value) == errorTag } 3396 3397 function isFinite(value) { return "number" == typeof value && nativeIsFinite(value) } 3398 3399 function isFunction(value) { var tag = isObject(value) ? objectToString.call(value) : ""; return tag == funcTag || tag == genTag } 3400 3401 function isInteger(value) { return "number" == typeof value && value == toInteger(value) } 3402 3403 function isLength(value) { return "number" == typeof value && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER } 3404 3405 function isObject(value) { var type = typeof value; return !!value && ("object" == type || "function" == type) } 3406 3407 function isObjectLike(value) { return !!value && "object" == typeof value } 3408 3409 function isMatch(object, source) { return object === source || baseIsMatch(object, source, getMatchData(source)) } 3410 3411 function isMatchWith(object, source, customizer) { return customizer = "function" == typeof customizer ? customizer : undefined, baseIsMatch(object, source, getMatchData(source), customizer) } 3412 3413 function isNaN(value) { return isNumber(value) && value != +value } 3414 3415 function isNative(value) { return null != value && (isFunction(value) ? reIsNative.test(funcToString.call(value)) : isObjectLike(value) && (isHostOb
3415ject(value) ? reIsNative : reIsHostCtor).test(value)) } 3416 3417 function isNull(value) { return null === value } 3418 3419 function isNil(value) { return null == value } 3420 3421 function isNumber(value) { return "number" == typeof value || isObjectLike(value) && objectToString.call(value) == numberTag } 3422 3423 function isPlainObject(value) { if (!isObjectLike(value) || objectToString.call(value) != objectTag || isHostObject(value)) return !1; var proto = objectProto; if ("function" == typeof value.constructor && (proto = getPrototypeOf(value)), null === proto) return !0; var Ctor = proto.constructor; return "function" == typeof Ctor && Ctor instanceof Ctor && funcToString.call(Ctor) == objectCtorString } 3424 3425 function isRegExp(value) { return isObject(value) && objectToString.call(value) == regexpTag } 3426 3427 function isSafeInteger(value) { return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER } 3428 3429 function isString(value) { return "string" == typeof value || !isArray(value) && isObjectLike(value) && objectToString.call(value) == stringTag } 3430 3431 function isSymbol(value) { return "symbol" == typeof value || isObjectLike(value) && objectToString.call(value) == symbolTag } 3432 3433 function isTypedArray(value) { return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[objectToString.call(value)] } 3434 3435 function isUndefined(value) { return value === undefined } 3436 3437 function lt(value, other) { return value < other } 3438 3439 function lte(value, other) { return value <= other } 3440 3441 function toArray(value) { 3442 if (!value) return []; 3443 if (isArrayLike(value)) return isString(value) ? stringToArray(value) : copyArray(value); 3444 if (iteratorSymbol && value[iteratorSymbol]) return iteratorToArray(value[iteratorSymbol]()); 3445 var tag = getTag(value), 3446 func = tag == mapTag ? mapToArray : tag == setTag ? setToArray : values; 3447 return func(value) 3448 } 3449 3450 function toInteger(value) { if (!value) return 0 === value ? value : 0; if (value = toNumber(value), value === INFINITY || value === -INFINITY) { var sign = value < 0 ? -1 : 1; return sign * MAX_INTEGER } var remainder = value % 1; return value === value ? remainder ? value - remainder : value : 0 } 3451 3452 function toLength(value) { return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0 } 3453 3454 function toNumber(value) { 3455 if (isObject(value)) { 3456 var other = isFunction(value.valueOf) ? value.valueOf() : value; 3457 value = isObject(other) ? other + "" : other 3458 } 3459 if ("string" != typeof value) return 0 === value ? value : +value; 3460 value = value.replace(reTrim, ""); 3461 var isBinary = reIsBinary.test(value); 3462 return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value 3463 } 3464 3465 function toPlainObject(value) { return copyObject(value, keysIn(value)) } 3466 3467 function toSafeInteger(value) { return baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER) } 3468 3469 function toString(value) { if ("string" == typeof value) return value; if (null == value) return ""; if (isSymbol(value)) return Symbol ? symbolToString.call(value) : ""; var result = value + ""; return "0" == result && 1 / value == -INFINITY ? "-0" : result } 3470 3471 function create(prototype, properties) { var result = baseCreate(prototype); return properties ? baseAssign(result, properties) : result } 3472 3473 function findKey(object, predicate) { return baseFind(object, getIteratee(predicate, 3), baseForOwn, !0) } 3474 3475 function findLastKey(object, predicate) { 3476 return baseFind(object, getIteratee(predicate, 3), baseForOwnRight, !0); 3477 } 3478 3479 function forIn(object, iteratee) { return null == object ? object : baseFor(object, toFunction(iteratee), keysIn) } 3480 3481 function forInRight(object, iteratee) { return null == object ? object : baseForRight(object, toFunction(iteratee), keysIn) } 3482 3483 function forOwn(object, iteratee) { return object && baseForOwn(object, toFunction(iteratee)) } 3484 3485 function forOwnRight(object, iteratee) { return object && baseForOwnRight(object, toFunction(iteratee)) } 3486 3487 function functions(object) { return null == object ? [] : baseFunctions(object, keys(object)) } 3488 3489 function functionsIn(object) { return null == object ? [] : baseFunctions(object, keysIn(object)) } 3490 3491 function get(object, path, defaultValue) { var result = null == object ? undefined : baseGet(object, path); return result === undefined ? defaultValue : result } 3492 3493 function has(object, path) { return hasPath(object, path, baseHas) } 3494 3495 function hasIn(object, path) { return hasPath(object, path, baseHasIn) } 3496 3497 function keys(object) { 3498 var isProto = isPrototype(object); 3499 if (!isProto && !isArrayLike(object)) return baseKeys(object); 3500 var indexes = indexKeys(object), 3501 skipIndexes = !!indexes, 3502 result = indexes || [], 3503 length = result.length; 3504 for (var key in object) !baseHas(object, key) || skipIndexes && ("length" == key || isIndex(key, length)) || isProto && "constructor" == key || result.push(key); 3505 return result 3506 } 3507 3508 function keysIn(object) { 3509 for (var index = -1, isProto = isPrototype(object), props = baseKeysIn(object), propsLength = props.length, indexes = indexKeys(object), skipIndexes = !!indexes, result = indexes || [], length = result.length; ++index < propsLength;) { 3510 var key = props[index]; 3511 skipIndexes && ("length" == key || isIndex(key, length)) || "constructor" == key && (isProto || !hasOwnProperty.call(object, key)) || result.push(key) 3512 } 3513 return result 3514 } 3515 3516 function mapKeys(object, iteratee) { var result = {}; return iteratee = getIteratee(iteratee, 3), baseForOwn(object, function(value, key, object) { result[iteratee(value, key, object)] = value }), result } 3517 3518 function mapValues(object, iteratee) { var result = {}; return iteratee = getIteratee(iteratee, 3), baseForOwn(object, function(value, key, object) { result[key] = iteratee(value, key, object) }), result } 3519 3520 function omitBy(object, predicate) { return predicate = getIteratee(predicate, 2), basePickBy(object, function(value, key) { return !predicate(value, key) }) } 3521 3522 function pickBy(object, predicate) { return null == object ? {} : basePickBy(object, getIteratee(predicate, 2)) } 3523 3524 function result(object, path, defaultValue) { 3525 if (isKey(path, object)) result = null == object ? undefined : object[path]; 3526 else { 3527 path = baseToPath(path); 3528 var result = get(object, path); 3529 object = parent(object, path) 3530 } 3531 return result === undefined && (result = defaultValue), isFunction(result) ? result.call(object) : result 3532 } 3533 3534 function set(object, path, value) { return null == object ? object : baseSet(object, path, value) } 3535 3536 function setWith(object, path, value, customizer) { return customizer = "function" == typeof customizer ? customizer : undefined, null == object ? object : baseSet(object, path, value, customizer) } 3537 3538 function toPairs(object) { return baseToPairs(object, keys(object)) } 3539 3540 function toPairsIn(object) { return baseToPairs(object, keysIn(object)) } 3541 3542 function transform(object, iteratee, accumulator) { 3543 var isArr = isArray(object) || isTypedArray(object); 3544 if (iteratee = getIteratee(iteratee, 4), null == accumulator) 3545 if (isArr || isObject(object)) { 3546 var Ctor = object.constructor; 3547 accumulator = isArr ? isArray(object) ? new Ctor : [] : baseCreate(isFunction(Ctor) ? Ctor.prototype : undefined) 3548 } else accumulator = {}; 3549 return (isArr ? arrayEach : baseForOwn)(object, function(value, index, object) { return iteratee(accumulator, value, index, object) }), accumulator 3550 } 3551 3552 function unset(object, path) { return null == object || baseUnset(object, path) } 3553 3554 function values(object) { return object ? baseValues(object, keys(object)) : [] } 3555
3556 function valuesIn(object) { return null == object ? baseValues(object, keysIn(object)) : [] } 3557 3558 function clamp(number, lower, upper) { return upper === undefined && (upper = lower, lower = undefined), upper !== undefined && (upper = toNumber(upper), upper = upper === upper ? upper : 0), lower !== undefined && (lower = toNumber(lower), lower = lower === lower ? lower : 0), baseClamp(toNumber(number), lower, upper) } 3559 3560 function inRange(number, start, end) { return start = toNumber(start) || 0, end === undefined ? (end = start, start = 0) : end = toNumber(end) || 0, number = toNumber(number), baseInRange(number, start, end) } 3561 3562 function random(lower, upper, floating) { 3563 if (floating && "boolean" != typeof floating && isIterateeCall(lower, upper, floating) && (upper = floating = undefined), floating === undefined && ("boolean" == typeof upper ? (floating = upper, upper = undefined) : "boolean" == typeof lower && (floating = lower, lower = undefined)), lower === undefined && upper === undefined ? (lower = 0, upper = 1) : (lower = toNumber(lower) || 0, upper === undefined ? (upper = lower, lower = 0) : upper = toNumber(upper) || 0), lower > upper) { 3564 var temp = lower; 3565 lower = upper, upper = temp 3566 } 3567 if (floating || lower % 1 || upper % 1) { var rand = nativeRandom(); return nativeMin(lower + rand * (upper - lower + freeParseFloat("1e-" + ((rand + "").length - 1))), upper) } 3568 return baseRandom(lower, upper) 3569 } 3570 3571 function capitalize(string) { return upperFirst(toString(string).toLowerCase()) } 3572 3573 function deburr(string) { return string = toString(string), string && string.replace(reLatin1, deburrLetter).replace(reComboMark, "") } 3574 3575 function endsWith(string, target, position) { string = toString(string), target = "string" == typeof target ? target : target + ""; var length = string.length; return position = position === undefined ? length : baseClamp(toInteger(position), 0, length), position -= target.length, position >= 0 && string.indexOf(target, position) == position } 3576 3577 function escape(string) { return string = toString(string), string && reHasUnescapedHtml.test(string) ? string.replace(reUnescapedHtml, escapeHtmlChar) : string } 3578 3579 function escapeRegExp(string) { return string = toString(string), string && reHasRegExpChar.test(string) ? string.replace(reRegExpChar, "\\$&") : string } 3580 3581 function pad(string, length, chars) { 3582 string = toString(string), length = toInteger(length); 3583 var strLength = stringSize(string); 3584 if (!length || strLength >= length) return string; 3585 var mid = (length - strLength) / 2, 3586 leftLength = nativeFloor(mid), 3587 rightLength = nativeCeil(mid); 3588 return createPadding("", leftLength, chars) + string + createPadding("", rightLength, chars) 3589 } 3590 3591 function padEnd(string, length, chars) { return string = toString(string), string + createPadding(string, length, chars) } 3592 3593 function padStart(string, length, chars) { return string = toString(string), createPadding(string, length, chars) + string } 3594 3595 function parseInt(string, radix, guard) { return guard || null == radix ? radix = 0 : radix && (radix = +radix), string = toString(string).replace(reTrim, ""), nativeParseInt(string, radix || (reHasHexPrefix.test(string) ? 16 : 10)) } 3596 3597 function repeat(string, n) { 3598 string = toString(string), n = toInteger(n); 3599 var result = ""; 3600 if (!string || n < 1 || n > MAX_SAFE_INTEGER) return result; 3601 do n % 2 && (result += string), n = nativeFloor(n / 2), string += string; while (n); 3602 return result 3603 } 3604 3605 function replace() { 3606 var args = arguments, 3607 string = toString(args[0]); 3608 return args.length < 3 ? string : string.replace(args[1], args[2]) 3609 } 3610 3611 function split(string, separator, limit) { return toString(string).split(separator, limit) } 3612 3613 function startsWith(string, target, position) { return string = toString(string), position = baseClamp(toInteger(position), 0, string.length), str
3613ing.lastIndexOf(target, position) == position } 3614 3615 function template(string, options, guard) { 3616 var settings = lodash.templateSettings; 3617 guard && isIterateeCall(string, options, guard) && (options = undefined), string = toString(string), options = assignInWith({}, options, settings, assignInDefaults); 3618 var isEscaping, isEvaluating, imports = assignInWith({}, options.imports, settings.imports, assignInDefaults), 3619 importsKeys = keys(imports), 3620 importsValues = baseValues(imports, importsKeys), 3621 index = 0, 3622 interpolate = options.interpolate || reNoMatch, 3623 source = "__p += '", 3624 reDelimiters = RegExp((options.escape || reNoMatch).source + "|" + interpolate.source + "|" + (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + "|" + (options.evaluate || reNoMatch).source + "|$", "g"), 3625 sourceURL = "//# sourceURL=" + ("sourceURL" in options ? options.sourceURL : "lodash.templateSources[" + ++templateCounter + "]") + "\n"; 3626 string.replace(reDelimiters, function(match, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset) { return interpolateValue || (interpolateValue = esTemplateValue), source += string.slice(index, offset).replace(reUnescapedString, escapeStringChar), escapeValue && (isEscaping = !0, source += "' +\n__e(" + escapeValue + ") +\n'"), evaluateValue && (isEvaluating = !0, source += "';\n" + evaluateValue + ";\n__p += '"), interpolateValue && (source += "' +\n((__t = (" + interpolateValue + ")) == null ? '' : __t) +\n'"), index = offset + match.length, match }), source += "';\n"; 3627 var variable = options.variable; 3628 variable || (source = "with (obj) {\n" + source + "\n}\n"), source = (isEvaluating ? source.replace(reEmptyStringLeading, "") : source).replace(reEmptyStringMiddle, "$1").replace(reEmptyStringTrailing, "$1;"), source = "function(" + (variable || "obj") + ") {\n" + (variable ? "" : "obj || (obj = {});\n") + "var __t, __p = ''" + (isEscaping ? ", __e = _.escape" : "") + (isEvaluating ? ", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n" : ";\n") + source + "return __p\n}"; 3629 var result = attempt(function() { return Function(importsKeys, sourceURL + "return " + source).apply(undefined, importsValues) }); 3630 if (result.source = source, isError(result)) throw result; 3631 return result 3632 } 3633 3634 function toLower(value) { return toString(value).toLowerCase() } 3635 3636 function toUpper(value) { return toString(value).toUpperCase() } 3637 3638 function trim(string, chars, guard) { 3639 if (string = toString(string), !string) return string; 3640 if (guard || chars === undefined) return string.replace(reTrim, ""); 3641 if (chars += "", !chars) return string; 3642 var strSymbols = stringToArray(string), 3643 chrSymbols = stringToArray(chars); 3644 return strSymbols.slice(charsStartIndex(strSymbols, chrSymbols), charsEndIndex(strSymbols, chrSymbols) + 1).join("") 3645 } 3646 3647 function trimEnd(string, chars, guard) { if (string = toString(string), !string) return string; if (guard || chars === undefined) return string.replace(reTrimEnd, ""); if (chars += "", !chars) return string; var strSymbols = stringToArray(string); return strSymbols.slice(0, charsEndIndex(strSymbols, stringToArray(chars)) + 1).join("") } 3648 3649 function trimStart(string, chars, guard) { if (string = toString(string), !string) return string; if (guard || chars === undefined) return string.replace(reTrimStart, ""); if (chars += "", !chars) return string; var strSymbols = stringToArray(string); return strSymbols.slice(charsStartIndex(strSymbols, stringToArray(chars))).join("") } 3650 3651 function truncate(string, options) { 3652 var length = DEFAULT_TRUNC_LENGTH, 3653 omission = DEFAULT_TRUNC_OMISSION; 3654 if (isObject(options)) { 3655 var separator = "separator" in options ? options.separator : separator; 3656 length = "length" in options ? toInteger(options.length) : length, omission = "omission" in options ? toString(options.omission) : omission 3657 }
3658 string = toString(string); 3659 var strLength = string.length; 3660 if (reHasComplexSymbol.test(string)) { 3661 var strSymbols = stringToArray(string); 3662 strLength = strSymbols.length 3663 } 3664 if (length >= strLength) return string; 3665 var end = length - stringSize(omission); 3666 if (end < 1) return omission; 3667 var result = strSymbols ? strSymbols.slice(0, end).join("") : string.slice(0, end); 3668 if (separator === undefined) return result + omission; 3669 if (strSymbols && (end += result.length - end), isRegExp(separator)) { 3670 if (string.slice(end).search(separator)) { 3671 var match, substring = result; 3672 for (separator.global || (separator = RegExp(separator.source, toString(reFlags.exec(separator)) + "g")), separator.lastIndex = 0; match = separator.exec(substring);) var newEnd = match.index; 3673 result = result.slice(0, newEnd === undefined ? end : newEnd) 3674 } 3675 } else if (string.indexOf(separator, end) != end) { 3676 var index = result.lastIndexOf(separator); 3677 index > -1 && (result = result.slice(0, index)) 3678 } 3679 return result + omission 3680 } 3681 3682 function unescape(string) { return string = toString(string), string && reHasEscapedHtml.test(string) ? string.replace(reEscapedHtml, unescapeHtmlChar) : string } 3683 3684 function words(string, pattern, guard) { return string = toString(string), pattern = guard ? undefined : pattern, pattern === undefined && (pattern = reHasComplexWord.test(string) ? reComplexWord : reBasicWord), string.match(pattern) || [] } 3685 3686 function cond(pairs) { 3687 var length = pairs ? pairs.length : 0, 3688 toIteratee = getIteratee(); 3689 return pairs = length ? arrayMap(pairs, function(pair) { if ("function" != typeof pair[1]) throw new TypeError(FUNC_ERROR_TEXT); return [toIteratee(pair[0]), pair[1]] }) : [], rest(function(args) { for (var index = -1; ++index < length;) { var pair = pairs[index]; if (apply(pair[0], this, args)) return apply(pair[1], this, args) } }) 3690 } 3691 3692 function conforms(source) { return baseConforms(baseClone(source, !0)) } 3693 3694 function constant(value) { return function() { return value } } 3695 3696 function identity(value) { return value } 3697 3698 function iteratee(func) { return baseIteratee("function" == typeof func ? func : baseClone(func, !0)) } 3699 3700 function matches(source) { return baseMatches(baseClone(source, !0)) } 3701 3702 function matchesProperty(path, srcValue) { return baseMatchesProperty(path, baseClone(srcValue, !0)) } 3703 3704 function mixin(object, source, options) { 3705 var props = keys(source), 3706 methodNames = baseFunctions(source, props); 3707 null != options || isObject(source) && (methodNames.length || !props.length) || (options = source, source = object, object = this, methodNames = baseFunctions(source, keys(source))); 3708 var chain = !(isObject(options) && "chain" in options) || options.chain, 3709 isFunc = isFunction(object); 3710 return arrayEach(methodNames, function(methodName) { 3711 var func = source[methodName]; 3712 object[methodName] = func, isFunc && (object.prototype[methodName] = function() { 3713 var chainAll = this.__chain__; 3714 if (chain || chainAll) { 3715 var result = object(this.__wrapped__), 3716 actions = result.__actions__ = copyArray(this.__actions__); 3717 return actions.push({ func: func, args: arguments, thisArg: object }), result.__chain__ = chainAll, result 3718 } 3719 return func.apply(object, arrayPush([this.value()], arguments)) 3720 }) 3721 }), object 3722 } 3723 3724 function noConflict() { return root._ === this && (root._ = oldDash), this } 3725 3726 function noop() {} 3727 3728 function nthArg(n) { 3729 return n = toInteger(n), 3730 function() { return arguments[n] } 3731 } 3732 3733 function property(path) { return isKey(path) ? baseProperty(path) : basePropertyDeep(path) } 3734 3735 function propertyOf(object) { return function(path) { return null == object ? undefined : baseGet(object, path) } } 3736 3737 function times(n, iteratee) { 3738 if (n = toInteger(n), n < 1 || n > MAX_SAFE_INTEGER) return []; 3739 var index = MAX_ARRAY_LENGTH, 3740 length = nativeMin(n, MAX_ARRAY_LENGTH); 3741 iteratee = toFunction(iteratee), n -= MAX_ARRAY_LENGTH; 3742 for (var result = baseTimes(length, iteratee); ++index < n;) iteratee(index); 3743 return result 3744 } 3745 3746 function toPath(value) { return isArray(value) ? arrayMap(value, String) : stringToPath(value) } 3747 3748 function uniqueId(prefix) { var id = ++idCounter; return toString(prefix) + id } 3749 3750 function add(augend, addend) { var result; return augend !== undefined && (result = augend), addend !== undefined && (result = result === undefined ? addend : result + addend), result } 3751 3752 function max(array) { return array && array.length ? baseExtremum(array, identity, gt) : undefined } 3753 3754 function maxBy(array, iteratee) { return array && array.length ? baseExtremum(array, getIteratee(iteratee), gt) : undefined } 3755 3756 function mean(array) { return sum(array) / (array ? array.length : 0) } 3757 3758 function min(array) { return array && array.length ? baseExtremum(array, identity, lt) : undefined } 3759 3760 function minBy(array, iteratee) { return array && array.length ? baseExtremum(array, getIteratee(iteratee), lt) : undefined } 3761 3762 function subtract(minuend, subtrahend) { var result; return minuend !== undefined && (result = minuend), subtrahend !== undefined && (result = result === undefined ? subtrahend : result - subtrahend), result } 3763 3764 function sum(array) { return array && array.length ? baseSum(array, identity) : 0 } 3765 3766 function sumBy(array, iteratee) { return array && array.length ? baseSum(array, getIteratee(iteratee)) : 0 } 3767 context = context ? _.defaults({}, context, _.pick(root, contextProps)) : root; 3768 var Date = context.Date, 3769 Error = context.Error, 3770 Math = context.Math, 3771 RegExp = context.RegExp, 3772 TypeError = context.TypeError, 3773 arrayProto = context.Array.prototype, 3774 objectProto = context.Object.prototype, 3775 funcToString = context.Function.prototype.toString, 3776 hasOwnProperty = objectProto.hasOwnProperty, 3777 idCounter = 0,
3778 objectCtorString = funcToString.call(Object), 3779 objectToString = objectProto.toString, 3780 oldDash = root._, 3781 reIsNative = RegExp("^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"), 3782 Reflect = context.Reflect, 3783 Symbol = context.Symbol, 3784 Uint8Array = context.Uint8Array, 3785 clearTimeout = context.clearTimeout, 3786 enumerate = Reflect ? Reflect.enumerate : undefined, 3787 getPrototypeOf = Object.getPrototypeOf, 3788 getOwnPropertySymbols = Object.getOwnPropertySymbols, 3789 iteratorSymbol = "symbol" == typeof(iteratorSymbol = Symbol && Symbol.iterator) ? iteratorSymbol : undefined, 3790 propertyIsEnumerable = objectProto.propertyIsEnumerable, 3791 setTimeout = context.setTimeout, 3792 splice = arrayProto.splice, 3793 nativeCeil = Math.ceil, 3794 nativeFloor = Math.floor,
3795 nativeIsFinite = context.isFinite, 3796 nativeJoin = arrayProto.join, 3797 nativeKeys = Object.keys, 3798 nativeMax = Math.max, 3799 nativeMin = Math.min, 3800 nativeParseInt = context.parseInt, 3801 nativeRandom = Math.random, 3802 nativeReverse = arrayProto.reverse, 3803 Map = getNative(context, "Map"), 3804 Set = getNative(context, "Set"), 3805 WeakMap = getNative(context, "WeakMap"), 3806 nativeCreate = getNative(Object, "create"), 3807 metaMap = WeakMap && new WeakMap, 3808 mapCtorString = Map ? funcToString.call(Map) : "", 3809 setCtorString = Set ? funcToString.call(Set) : "", 3810 symbolProto = Symbol ? Symbol.prototype : undefined, 3811 symbolValueOf = Symbol ? symbolProto.valueOf : undefined, 3812 symbolToString = Symbol ? symbolProto.toString : undefined, 3813 realNames = {}; 3814 lodash.templateSettings = { escape: reEscape, evaluate: reEvaluate, interpolate: reInterpolate, variable: "", imports: { _: lodash } }; 3815 var baseCreate = function() { 3816 function object() {} 3817 return function(prototype) { 3818 if (isObject(prototype)) { 3819 object.prototype = prototype; 3820 var result = new object; 3821 object.prototype = undefined 3822 } 3823 return result || {} 3824 } 3825 }(), 3826 baseEach = createBaseEach(baseForOwn), 3827 baseEachRight = createBaseEach(baseForOwnRight, !0), 3828 baseFor = createBaseFor(), 3829 baseForRight = createBaseFor(!0); 3830 enumerate && !propertyIsEnumerable.call({ valueOf: 1 }, "valueOf") && (baseKeysIn = function(object) { return iteratorToArray(enumerate(object)) }); 3831 var baseSetData = metaMap ? function(func, data) { return metaMap.set(func, data), func } : identity, 3832 createSet = Set && 2 === new Set([1, 2]).size ? function(values) { return new Set(values) } : noop, 3833 getData = metaMap ? function(func) { return metaMap.get(func) } : noop, 3834 getLength = baseProperty("length"), 3835 getSymbols = getOwnPropertySymbols || function() { return [] }; 3836 (Map && getTag(new Map) != mapTag || Set && getTag(new Set) != setTag) && (getTag = function(value) { 3837 var result = objectToString.call(value), 3838 Ctor = result == objectTag ? value.constructor : null, 3839 ctorString = "function" == typeof Ctor ? funcToString.call(Ctor) : ""; 3840 if (ctorString) { if (ctorString == mapCtorString) return mapTag; if (ctorString == setCtorString) return setTag } 3841 return result 3842 }); 3843 var setData = function() { 3844 var count = 0, 3845 lastCalled = 0; 3846 return function(key, value) { 3847 var stamp = now(), 3848 remaining = HOT_SPAN - (stamp - lastCalled); 3849 if (lastCalled = stamp, remaining > 0) { if (++count >= HOT_COUNT) return key } else count = 0; 3850 return baseSetData(key, value) 3851 } 3852 }(), 3853 concat = rest(function(array, values) { return isArray(array) || (array = null == array ? [] : [Object(array)]), values = baseFlatten(values), arrayConcat(array, values) }), 3854 difference = rest(function(array, values) { return isArrayLikeObject(array) ? baseDifference(array, baseFlatten(values, !1, !0)) : [] }), 3855 differenceBy = rest(function(array, values) { var iteratee = last(values); return isArrayLikeObject(iteratee) && (iteratee = undefined), isArrayLikeObject(array) ? baseDifference(array, baseFlatten(values, !1, !0), getIteratee(iteratee)) : [] }), 3856 differenceWith = rest(function(array, values) { var comparator = last(values); return isArrayLikeObject(comparator) && (comparator = undefined), isArrayLikeObject(array) ? baseDifference(array, baseFlatten(values, !1, !0), undefined, c
3856omparator) : [] }), 3857 intersection = rest(function(arrays) { var mapped = arrayMap(arrays, toArrayLikeObject); return mapped.length && mapped[0] === arrays[0] ? baseIntersection(mapped) : [] }), 3858 intersectionBy = rest(function(arrays) { 3859 var iteratee = last(arrays), 3860 mapped = arrayMap(arrays, toArrayLikeObject); 3861 return iteratee === last(mapped) ? iteratee = undefined : mapped.pop(), mapped.length && mapped[0] === arrays[0] ? baseIntersection(mapped, getIteratee(iteratee)) : [] 3862 }), 3863 intersectionWith = rest(function(arrays) { 3864 var comparator = last(arrays), 3865 mapped = arrayMap(arrays, toArrayLikeObject); 3866 return comparator === last(mapped) ? comparator = undefined : mapped.pop(), mapped.length && mapped[0] === arrays[0] ? baseIntersection(mapped, undefined, comparator) : [] 3867 }), 3868 pull = rest(pullAll), 3869 pullAt = rest(function(array, indexes) { indexes = arrayMap(baseFlatten(indexes), String); var result = baseAt(array, indexes); return basePullAt(array, indexes.sort(compareAscending)), result }), 3870 union = rest(function(arrays) { return baseUniq(baseFlatten(arrays, !1, !0)) }), 3871 unionBy = rest(function(arrays) { var iteratee = last(arrays); return isArrayLikeObject(iteratee) && (iteratee = undefined), baseUniq(baseFlatten(arrays, !1, !0), getIteratee(iteratee)) }), 3872 unionWith = rest(function(arrays) { var comparator = last(arrays); return isArrayLikeObject(comparator) && (comparator = undefined), baseUniq(baseFlatten(arrays, !1, !0), undefined, comparator) }), 3873 without = rest(function(array, values) { return isArrayLikeObject(array) ? baseDifference(array, values) : [] }), 3874 xor = rest(function(arrays) { return baseXor(arrayFilter(arrays, isArrayLikeObject)) }), 3875 xorBy = rest(function(arrays) { var iteratee = last(arrays); return isArrayLikeObject(iteratee) && (iteratee = undefined), baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee)) }), 3876 xorWith = rest(function(arrays) { var comparator = last(arrays); return isArrayLikeObject(comparator) && (comparator = undefined), baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator) }), 3877 zip = rest(unzip), 3878 zipWith = rest(function(arrays) { 3879 var length = arrays.length, 3880 iteratee = length > 1 ? arrays[length - 1] : undefined; 3881 return iteratee = "function" == typeof iteratee ? (arrays.pop(), iteratee) : undefined, unzipWith(arrays, iteratee) 3882 }), 3883 wrapperAt = rest(function(paths) { 3884 paths = baseFlatten(paths); 3885 var length = paths.length, 3886 start = length ? paths[0] : 0, 3887 value = this.__wrapped__, 3888 interceptor = function(object) { return baseAt(object, paths) }; 3889 return !(length > 1 || this.__actions__.length) && value instanceof LazyWrapper && isIndex(start) ? (value = value.slice(start, +start + (length ? 1 : 0)), value.__actions__.push({ func: thru, args: [interceptor], thisArg: undefined }), new LodashWrapper(value, this.__chain__).thru(function(array) { return length && !array.length && array.push(undefined), array })) : this.thru(interceptor) 3890 }), 3891 countBy = createAggregator(function(result, value, key) { hasOwnProperty.call(result, key) ? ++result[key] : result[key] = 1 }), 3892 groupBy = createAggregator(function(result, value, key) { hasOwnProperty.call(result, key) ? result[key].push(value) : result[key] = [value] }), 3893 invokeMap = rest(function(collection, path, args) { 3894 var index = -1, 3895 isFunc = "function" == typeof path, 3896 isProp = isKey(path), 3897 result = isArrayLike(collection) ? Array(collection.length) : []; 3898 return baseEach(collection, function(value) { 3899 var func = isFunc ? path : isProp && null != value ? value[path] : undefined; 3900 result[++index] = func ? apply(func, value, args
3900) : baseInvoke(value, path, args) 3901 }), result 3902 }), 3903 keyBy = createAggregator(function(result, value, key) { result[key] = value }), 3904 partition = createAggregator(function(result, value, key) { result[key ? 0 : 1].push(value) }, function() { 3905 return [ 3906 [], 3907 [] 3908 ] 3909 }), 3910 sortBy = rest(function(collection, iteratees) { if (null == collection) return []; var length = iteratees.length; return length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1]) ? iteratees = [] : length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2]) && (iteratees.length = 1), baseOrderBy(collection, baseFlatten(iteratees), []) }), 3911 now = Date.now, 3912 bind = rest(function(func, thisArg, partials) { 3913 var bitmask = BIND_FLAG; 3914 if (partials.length) { 3915 var placeholder = lodash.placeholder || bind.placeholder, 3916 holders = replaceHolders(partials, placeholder); 3917 bitmask |= PARTIAL_FLAG 3918 } 3919 return createWrapper(func, bitmask, thisArg, partials, holders) 3920 }), 3921 bindKey = rest(function(object, key, partials) { 3922 var bitmask = BIND_FLAG | BIND_KEY_FLAG; 3923 if (partials.length) { 3924 var placeholder = lodash.placeholder || bindKey.placeholder, 3925 holders = replaceHolders(partials, placeholder); 3926 bitmask |= PARTIAL_FLAG 3927 } 3928 return createWrapper(key, bitmask, object, partials, holders) 3929 }), 3930 defer = rest(function(func, args) { return baseDelay(func, 1, args) }),
3931 delay = rest(function(func, wait, args) { return baseDelay(func, toNumber(wait) || 0, args) }), 3932 overArgs = rest(function(func, transforms) { transforms = arrayMap(baseFlatten(transforms), getIteratee()); var funcsLength = transforms.length; return rest(function(args) { for (var index = -1, length = nativeMin(args.length, funcsLength); ++index < length;) args[index] = transforms[index].call(this, args[index]); return apply(func, this, args) }) }), 3933 partial = rest(function(func, partials) { 3934 var placeholder = lodash.placeholder || partial.placeholder, 3935 holders = replaceHolders(partials, placeholder); 3936 return createWrapper(func, PARTIAL_FLAG, undefined, partials, holders) 3937 }), 3938 partialRight = rest(function(func, partials) { 3939 var placeholder = lodash.placeholder || partialRight.placeholder, 3940 holders = replaceHolders(partials, placeholder); 3941 return createWrapper(func, PARTIAL_RIGHT_FLAG, undefined, partials, holders) 3942 }), 3943 rearg = rest(function(func, indexes) { return createWrapper(func, REARG_FLAG, undefined, undefined, undefined, baseFlatten(indexes)) }), 3944 isArray = Array.isArray, 3945 assign = createAssigner(function(object, source) { copyObject(source, keys(source), object) }), 3946 assignIn = createAssigner(function(object, source) { copyObject(source, keysIn(source), object) }), 3947 assignInWith = createAssigner(function(object, source, srcIndex, customizer) { copyObjectWith(source, keysIn(source), object, customizer) }), 3948 assignWith = createAssigner(function(object, source, srcIndex, customizer) { copyObjectWith(source, keys(source), object, customizer) }), 3949 at = rest(function(object, paths) { return baseAt(object, baseFlatten(paths)) }), 3950 defaults = rest(function(args) { return args.push(undefined, assignInDefaults), apply(assignInWith, undefined, args) }), 3951 defaultsDeep = rest(function(args) { return args.push(undefined, mergeDefaults), apply(mergeWith, undefined, args) }), 3952 invert = createInverter(function(result, value, key) { result[value] = key }, constant(identity)), 3953 invertBy = createInverter(function(result, value, key) { hasOwnProperty.call(result, value) ? result[value].push(key) : result[value] = [key] }, getIteratee), 3954 invoke = rest(baseInvoke), 3955 merge = createAssigner(function(object, source, srcIndex) { baseMerge(object, source, srcIndex) }), 3956 mergeWith = createAssigner(function(object, source, srcIndex, customizer) { baseMerge(object, source, srcIndex, customizer) }), 3957 omit = rest(function(object, props) { return null == object ? {} : (props = arrayMap(baseFlatten(props), String), basePick(object, baseDifference(keysIn(object), props))) }), 3958 pick = rest(function(object, props) { return null == object ? {} : basePick(object, baseFlatten(props)) }), 3959 camelCase = createCompounder(function(result, word, index) { return word = word.toLowerCase(), result + (index ? capitalize(word) : word) }), 3960 kebabCase = createCompounder(function(result, word, index) { return result + (index ? "-" : "") + word.toLowerCase() }), 3961 lowerCase = createCompounder(function(result, word, index) { return result + (index ? " " : "") + word.toLowerCase() }), 3962 lowerFirst = createCaseFirst("toLowerCase"), 3963 upperFirst = createCaseFirst("toUpperCase"), 3964 snakeCase = createCompounder(function(result, word, index) { return result + (index ? "_" : "") + word.toLowerCase() }), 3965 startCase = createCompounder(function(result, word, index) { return result + (index ? " " : "") + capitalize(word) }), 3966 upperCase = createCompounder(function(result, word, index) { return result + (index ? " " : "") + word.toUpperCase() }), 3967 attempt = rest(function(func, args) { try { return apply(func, undefined, args) } catch (e) { return isObject(e) ? e : new Error(e) } }), 3968 bindAll = rest(function(object, methodNames) { return arrayEach(baseFlatten(methodNames), function(key) { object[key] = bind(object[key], object) }), object }), 3969 flow = createFlow(), 3970 flowRight = createFlow(!0), 3971 method = rest(function(path, args) { return function(object) { return baseInvoke(object, path, args) } }), 3972 methodOf = rest(function(object, args) { return function(path) { return baseInvoke(object, path, args) } }), 3973 over = createOver(arrayMap), 3974 overEvery = createOver(arrayEvery), 3975 overSome = createOver(arraySome), 3976 range = createRange(), 3977 rangeRight = createRange(!0), 3978 ceil = createRound("ceil"), 3979 floor = createRound("floor"), 3980 round = createRound("round");
3981 return lodash.prototype = baseLodash.prototype, LodashWrapper.prototype = baseCreate(baseLodash.prototype), LodashWrapper.prototype.constructor = LodashWrapper, LazyWrapper.prototype = baseCreate(baseLodash.prototype), LazyWrapper.prototype.constructor = LazyWrapper, Hash.prototype = nativeCreate ? nativeCreate(null) : objectProto, MapCache.prototype.clear = mapClear, MapCache.prototype.delete = mapDelete, MapCache.prototype.get = mapGet, MapCache.prototype.has = mapHas, MapCache.prototype.set = mapSet, SetCache.prototype.push = cachePush, Stack.prototype.clear = stackClear, Stack.prototype.delete = stackDelete, Stack.prototype.get = stackGet, Stack.prototype.has = stackHas, Stack.prototype.set = stackSet, memoize.Cache = MapCache, lodash.after = after, lodash.ary = ary, lodash.assign = assign, lodash.assignIn = assignIn, lodash.assignInWith = assignInWith, lodash.assignWith = assignWith, lodash.at = at, lodash.before = before, lodash.bind = bind, lodash.bindAll = bindAll, lodash.bindKey = bindKey, lodash.chain = chain, lodash.chunk = chunk, lodash.compact = compact, lodash.concat = concat, lodash.cond = cond, lodash.conforms = conforms, lodash.constant = constant, lodash.countBy = countBy, lodash.create = create, lodash.curry = curry, lodash.curryRight = curryRight, lodash.debounce = debounce, lodash.defaults = defaults, lodash.defaultsDeep = defaultsDeep, lodash.defer = defer, lodash.delay = delay, lodash.difference = difference, lodash.differenceBy = differenceBy, lodash.differenceWith = differenceWith, lodash.drop = drop, lodash.dropRight = dropRight, lodash.dropRightWhile = dropRightWhile, lodash.dropWhile = dropWhile, lodash.fill = fill, lodash.filter = filter, lodash.flatMap = flatMap, lodash.flatten = flatten, lodash.flattenDeep = flattenDeep, lodash.flip = flip, lodash.flow = flow, lodash.flowRight = flowRight, lodash.fromPairs = fromPairs, lodash.functions = functions, lodash.functionsIn = functionsIn, lodash.groupBy = groupBy, lodash.initial = initial, lodash.intersection = intersection, lodash.intersectionBy = intersectionBy, lodash.intersectionWith = intersectionWith, lodash.invert = invert, lodash.invertBy = invertBy, lodash.invokeMap = invokeMap, lodash.iteratee = iteratee, lodash.keyBy = keyBy, lodash.keys = keys, lodash.keysIn = keysIn, lodash.map = map, lodash.mapKeys = mapKeys, lodash.mapValues = mapValues, lodash.matches = matches, lodash.matchesProperty = matchesProperty, lodash.memoize = memoize, lodash.merge = merge, lodash.mergeWith = mergeWith, lodash.method = method, lodash.methodOf = methodOf, lodash.mixin = mixin, lodash.negate = negate, lodash.nthArg = nthArg, lodash.omit = omit, lodash.omitBy = omitBy, lodash.once = once, lodash.orderBy = orderBy, lodash.over = over, lodash.overArgs = overArgs, lodash.overEvery = overEvery, lodash.overSome = overSome, lodash.partial = partial, lodash.partialRight = partialRight, lodash.partition = partition, lodash.pick = pick, lodash.pickBy = pickBy, lodash.property = property, lodash.propertyOf = propertyOf, lodash.pull = pull, lodash.pullAll = pullAll, lodash.pullAllBy = pullAllBy, lodash.pullAt = pullAt, lodash.range = range, lodash.rangeRight = rangeRight, lodash.rearg = rearg, lodash.reject = reject, lodash.remove = remove, lodash.rest = rest, lodash.reverse = reverse, lodash.sampleSize = sampleSize, lodash.set = set, lodash.setWith = setWith, lodash.shuffle = shuffle, lodash.slice = slice, lodash.sortBy = sortBy, lodash.sortedUniq = sortedUniq, lodash.sortedUniqBy = sortedUniqBy, lodash.split = split, lodash.spread = spread, lodash.tail = tail, lodash.take = take, lodash.takeRight = takeRight, lodash.takeRightWhile = takeRightWhile, lodash.takeWhile = takeWhile, lodash.tap = tap, lodash.throttle = throttle, lodash.thru = thru, lodash.toArray = toArray, lodash.toPairs = toPairs, lodash.toPairsIn = toPairsIn, lodash.toPath = toPath, lodash.toPlainObject = toPlainObject, lodash.transform = transform, lodash.unary = unary, lodash.union = union, lodash.unionBy = unionBy, lodash.unionWith = unionWith, lodash.uniq = uniq, lodash.uniqBy = uniqBy, lodash.uniqWith = uniqWith, lodash.unset = unset, lodash.unzip = unzip, lodash.unzipWith = unzipWith, lodash.values = values, lodash.valuesIn = valuesIn, lodash.without = without, lodash.words = words, lodash.wrap = wrap, lodash.xor = xor, lodash.xorBy = xorBy, lodash.xorWith = xorWith, lodash.zip = zip, lodash.zipObject = zipObject, lodash.zipObjectDeep = zipObjectDeep, lodash.zipWith = zipWith, lodash.extend = assignIn, lodash.extendWith = assignInWith, mixin(lodash, lodash), lodash.add = add, lodash.attempt = attempt, lodash.camelCase = camelCase, lodash.capitalize = capitalize, lodash.ceil = ceil, lodash.clamp = clamp, lodash.clone = clone, lodash.cloneDeep = cloneDeep, lodash.cloneDeepWith = cloneDeepWith, lodash.cloneWith = cloneWith, lodash.deburr = deburr, lodash.endsWith = endsWith, lodash.eq = eq, lodash.escape = escape, lodash.escapeRegExp = escapeRegExp, lodash.every = every, lodash.find = find, lodash.findIndex = findIndex, lodash.findKey = findKey, lodash.findLast = findLast, lodash.findLastIndex = findLastIndex, lodash.findLastKey = findLastKey, lodash.floor = floor, lodash.forEac
vendor: 4,214 bytes, lines 3981-3990
3981h = forEach, lodash.forEachRight = forEachRight, lodash.forIn = forIn, lodash.forInRight = forInRight, lodash.forOwn = forOwn, lodash.forOwnRight = forOwnRight, lodash.get = get, lodash.gt = gt, lodash.gte = gte, lodash.has = has, lodash.hasIn = hasIn, lodash.head = head, lodash.identity = identity, lodash.includes = includes, lodash.indexOf = indexOf, lodash.inRange = inRange, lodash.invoke = invoke, lodash.isArguments = isArguments, 3982 lodash.isArray = isArray, lodash.isArrayLike = isArrayLike, lodash.isArrayLikeObject = isArrayLikeObject, lodash.isBoolean = isBoolean, lodash.isDate = isDate, lodash.isElement = isElement, lodash.isEmpty = isEmpty, lodash.isEqual = isEqual, lodash.isEqualWith = isEqualWith, lodash.isError = isError, lodash.isFinite = isFinite, lodash.isFunction = isFunction, lodash.isInteger = isInteger, lodash.isLength = isLength, lodash.isMatch = isMatch, lodash.isMatchWith = isMatchWith, lodash.isNaN = isNaN, lodash.isNative = isNative, lodash.isNil = isNil, lodash.isNull = isNull, lodash.isNumber = isNumber, lodash.isObject = isObject, lodash.isObjectLike = isObjectLike, lodash.isPlainObject = isPlainObject, lodash.isRegExp = isRegExp, lodash.isSafeInteger = isSafeInteger, lodash.isString = isString, lodash.isSymbol = isSymbol, lodash.isTypedArray = isTypedArray, lodash.isUndefined = isUndefined, lodash.join = join, lodash.kebabCase = kebabCase, lodash.last = last, lodash.lastIndexOf = lastIndexOf, lodash.lowerCase = lowerCase, lodash.lowerFirst = lowerFirst, lodash.lt = lt, lodash.lte = lte, lodash.max = max, lodash.maxBy = maxBy, lodash.mean = mean, lodash.min = min, lodash.minBy = minBy, lodash.noConflict = noConflict, lodash.noop = noop, lodash.now = now, lodash.pad = pad, lodash.padEnd = padEnd, lodash.padStart = padStart, lodash.parseInt = parseInt, lodash.random = random, lodash.reduce = reduce, lodash.reduceRight = reduceRight, lodash.repeat = repeat, lodash.replace = replace, lodash.result = result, lodash.round = round, lodash.runInContext = runInContext, lodash.sample = sample, lodash.size = size, lodash.snakeCase = snakeCase, lodash.some = some, lodash.sortedIndex = sortedIndex, lodash.sortedIndexBy = sortedIndexBy, lodash.sortedIndexOf = sortedIndexOf, lodash.sortedLastIndex = sortedLastIndex, lodash.sortedLastIndexBy = sortedLastIndexBy, lodash.sortedLastIndexOf = sortedLastIndexOf, lodash.startCase = startCase, lodash.startsWith = startsWith, lodash.subtract = subtract, lodash.sum = sum, lodash.sumBy = sumBy, lodash.template = template, lodash.times = times, lodash.toInteger = toInteger, lodash.toLength = toLength, lodash.toLower = toLower, lodash.toNumber = toNumber, lodash.toSafeInteger = toSafeInteger, lodash.toString = toString, lodash.toUpper = toUpper, lodash.trim = trim, lodash.trimEnd = trimEnd, lodash.trimStart = trimStart, lodash.truncate = truncate, lodash.unescape = unescape, lodash.uniqueId = uniqueId, lodash.upperCase = upperCase, lodash.upperFirst = upperFirst, lodash.each = forEach, lodash.eachRight = forEachRight, lodash.first = head, mixin(lodash, function() { var source = {}; return baseForOwn(lodash, function(func, methodName) { hasOwnProperty.call(lodash.prototype, methodName) || (source[methodName] = func) }), source }(), { chain: !1 }), lodash.VERSION = VERSION, arrayEach(["bind", "bindKey", "curry", "curryRight", "partial", "partialRight"], function(methodName) { lodash[methodName].placeholder = lodash }), arrayEach(["drop", "take"], function(methodName, index) { 3983 LazyWrapper.prototype[methodName] = function(n) { 3984 var filtered = this.__filtered__; 3985 if (filtered && !index) return new LazyWrapper(this); 3986 n = n === undefined ? 1 : nativeMax(toInteger(n), 0); 3987 var result = this.clone(); 3988 return filtered ? result.__takeCount__ = nativeMin(n, result.__takeCount__) : result.__views__.push({ size: nativeMin(n, MAX_ARRAY_LENGTH), type: methodName + (result.__dir__ < 0 ? "Right" : "") }), result 3989 }, LazyWrapper.prototype[methodName + "Right"] = function(n) { return this.reverse()[methodName](n).reverse() } 3990 }
vendor: 3,456 bytes, lines 3990-4014
3990), arrayEach(["filter", "map", "takeWhile"], function(methodName, index) { 3991 var type = index + 1, 3992 isFilter = type == LAZY_FILTER_FLAG || type == LAZY_WHILE_FLAG; 3993 LazyWrapper.prototype[methodName] = function(iteratee) { var result = this.clone(); return result.__iteratees__.push({ iteratee: getIteratee(iteratee, 3), type: type }), result.__filtered__ = result.__filtered__ || isFilter, result } 3994 }), arrayEach(["head", "last"], function(methodName, index) { 3995 var takeName = "take" + (index ? "Right" : ""); 3996 LazyWrapper.prototype[methodName] = function() { return this[takeName](1).value()[0] } 3997 }), arrayEach(["initial", "tail"], function(methodName, index) { 3998 var dropName = "drop" + (index ? "" : "Right"); 3999 LazyWrapper.prototype[methodName] = function() { return this.__filtered__ ? new LazyWrapper(this) : this[dropName](1) } 4000 }), LazyWrapper.prototype.compact = function() { return this.filter(identity) }, LazyWrapper.prototype.find = function(predicate) { return this.filter(predicate).head() }, LazyWrapper.prototype.findLast = function(predicate) { return this.reverse().find(predicate) }, LazyWrapper.prototype.invokeMap = rest(function(path, args) { return "function" == typeof path ? new LazyWrapper(this) : this.map(function(value) { return baseInvoke(value, path, args) }) }), LazyWrapper.prototype.reject = function(predicate) { return predicate = getIteratee(predicate, 3), this.filter(function(value) { return !predicate(value) }) }, LazyWrapper.prototype.slice = function(start, end) { start = toInteger(start); var result = this; return result.__filtered__ && (start > 0 || end < 0) ? new LazyWrapper(result) : (start < 0 ? result = result.takeRight(-start) : start && (result = result.drop(start)), end !== undefined && (end = toInteger(end), result = end < 0 ? result.dropRight(-end) : result.take(end - start)), result) }, LazyWrapper.prototype.takeRightWhile = function(predicate) { return this.reverse().takeWhile(predicate).reverse() }, LazyWrapper.prototype.toArray = function() { return this.take(MAX_ARRAY_LENGTH) }, baseForOwn(LazyWrapper.prototype, function(func, methodName) { 4001 var checkIteratee = /^(?:filter|find|map|reject)|While$/.test(methodName), 4002 isTaker = /^(?:head|last)$/.test(methodName), 4003 lodashFunc = lodash[isTaker ? "take" + ("last" == methodName ? "Right" : "") : methodName], 4004 retUnwrapped = isTaker || /^find/.test(methodName); 4005 lodashFunc && (lodash.prototype[methodName] = function() { 4006 var value = this.__wrapped__, 4007 args = isTaker ? [1] : arguments, 4008 isLazy = value instanceof LazyWrapper, 4009 iteratee = args[0], 4010 useLazy = isLazy || isArray(value), 4011 interceptor = function(value) { var result = lodashFunc.apply(lodash, arrayPush([value], args)); return isTaker && chainAll ? result[0] : result }; 4012 useLazy && checkIteratee && "function" == typeof iteratee && 1 != iteratee.length && (isLazy = useLazy = !1); 4013 var chainAll = this.__chain__, 4014 isHybrid = !!this.__actions__.length,
4015 isUnwrapped = retUnwrapped && !chainAll, 4016 onlyLazy = isLazy && !isHybrid; 4017 if (!retUnwrapped && useLazy) { value = onlyLazy ? value : new LazyWrapper(this); var result = func.apply(value, args); return result.__actions__.push({ func: thru, args: [interceptor], thisArg: undefined }), new LodashWrapper(result, chainAll) } 4018 return isUnwrapped && onlyLazy ? func.apply(this, args) : (result = this.thru(interceptor), isUnwrapped ? isTaker ? result.value()[0] : result.value() : result) 4019 }) 4020 }), arrayEach(["pop", "push", "shift", "sort", "splice", "unshift"], function(methodName) { 4021 var func = arrayProto[methodName], 4022 chainName = /^(?:push|sort|unshift)$/.test(methodName) ? "tap" : "thru", 4023 retUnwrapped = /^(?:pop|shift)$/.test(methodName); 4024 lodash.prototype[methodName] = function() { var args = arguments; return retUnwrapped && !this.__chain__ ? func.apply(this.value(), args) : this[chainName](function(value) { return func.apply(value, args) }) } 4025 }), baseForOwn(LazyWrapper.prototype, function(func, methodName) { 4026 var lodashFunc = lodash[methodName]; 4027 if (lodashFunc) { 4028 var key = lodashFunc.name + "", 4029 names = realNames[key] || (realNames[key] = []); 4030 names.push({ name: methodName, func: lodashFunc }) 4031 } 4032 }), realNames[createHybridWrapper(undefined, BIND_KEY_FLAG).name] = [{ name: "wrapper", func: undefined }], LazyWrapper.prototype.clone = lazyClone, LazyWrapper.prototype.reverse = lazyReverse, LazyWrapper.prototype.value = lazyValue, lodash.prototype.at = wrapperAt, lodash.prototype.chain = wrapperChain, lodash.prototype.commit = wrapperCommit, lodash.prototype.flatMap = wrapperFlatMap, lodash.prototype.next = wrapperNext, lodash.prototype.plant = wrapperPlant, lodash.prototype.reverse = wrapperReverse, lodash.prototype.toJSON = lodash.prototype.valueOf = lodash.prototype.value = wrapperValue, iteratorSymbol && (lodash.prototype[iteratorSymbol] = wrapperToIterator), lodash 4033 } 4034 var undefined, VERSION = "4.2.1", 4035 BIND_FLAG = 1, 4036 BIND_KEY_FLAG = 2, 4037 CURRY_BOUND_FLAG = 4, 4038 CURRY_FLAG = 8, 4039 CURRY_RIGHT_FLAG = 16, 4040 PARTIAL_FLAG = 32, 4041 PARTIAL_RIGHT_FLAG = 64, 4042 ARY_FLAG = 128, 4043 REARG_FLAG = 256, 4044 FLIP_FLAG = 512, 4045 UNORDERED_COMPARE_FLAG = 1, 4046 PARTIAL_COMPARE_FLAG = 2, 4047 DEFAULT_TRUNC_LENGTH = 30, 4048 DEFAULT_TRUNC_OMISSION = "...", 4049 HOT_COUNT = 150, 4050 HOT_SPAN = 16, 4051 LARGE_ARRAY_SIZE = 200, 4052 LAZY_FILTER_FLAG = 1, 4053 LAZY_MAP_FLAG = 2, 4054 LAZY_WHILE_FLAG = 3, 4055 FUNC_ERROR_TEXT = "Expected a function", 4056 HASH_UNDEFINED = "__lodash_hash_undefined__", 4057 INFINITY = 1 / 0, 4058 MAX_SAFE_INTEGER = 9007199254740991, 4059 MAX_INTEGER = 1.7976931348623157e308, 4060 NAN = NaN, 4061 MAX_ARRAY_LENGTH = 4294967295, 4062 MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1, 4063 HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1, 4064 PLACEHOLDER = "__lodash_placeholder__", 4065 argsTag = "[object Arguments]", 4066 arrayTag = "[object Array]", 4067 boolTag = "[object Boolean]", 4068 dateTag = "[object Date]", 4069 errorTag = "[object Error]", 4070 funcTag = "[object Function]", 4071 genTag = "[object GeneratorFunction]", 4072 mapTag = "[object Map]", 4073 numberTag = "[object Number]", 4074 objectTag = "[object Object]", 4075 regexpTag = "[object RegExp]", 4076 setTag = "[object Set]", 4077 stringTag = "[object String]", 4078 symbolTag = "[object Symbol]", 4079 weakMapTag = "[object WeakMap]", 4080 arrayBufferTag = "[object ArrayBuffer]", 4081 float32Tag = "[object Float32Array]",
vendor: 4,389 bytes, lines 4082-4156
4082 float64Tag = "[object Float64Array]", 4083 int8Tag = "[object Int8Array]", 4084 int16Tag = "[object Int16Array]", 4085 int32Tag = "[object Int32Array]", 4086 uint8Tag = "[object Uint8Array]", 4087 uint8ClampedTag = "[object Uint8ClampedArray]", 4088 uint16Tag = "[object Uint16Array]", 4089 uint32Tag = "[object Uint32Array]", 4090 reEmptyStringLeading = /\b__p \+= '';/g, 4091 reEmptyStringMiddle = /\b(__p \+=) '' \+/g, 4092 reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g, 4093 reEscapedHtml = /&(?:amp|lt|gt|quot|#39|#96);/g, 4094 reUnescapedHtml = /[&<>"'`]/g, 4095 reHasEscapedHtml = RegExp(reEscapedHtml.source), 4096 reHasUnescapedHtml = RegExp(reUnescapedHtml.source), 4097 reEscape = /<%-([\s\S]+?)%>/g, 4098 reEvaluate = /<%([\s\S]+?)%>/g, 4099 reInterpolate = /<%=([\s\S]+?)%>/g, 4100 reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, 4101 reIsPlainProp = /^\w*$/, 4102 rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]/g, 4103 reRegExpChar = /[\\^$.*+?()[\]{}|]/g, 4104 reHasRegExpChar = RegExp(reRegExpChar.source), 4105 reTrim = /^\s+|\s+$/g, 4106 reTrimStart = /^\s+/, 4107 reTrimEnd = /\s+$/, 4108 reEscapeChar = /\\(\\)?/g, 4109 reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g, 4110 reFlags = /\w*$/, 4111 reHasHexPrefix = /^0x/i, 4112 reIsBadHex = /^[-+]0x[0-9a-f]+$/i, 4113 reIsBinary = /^0b[01]+$/i, 4114 reIsHostCtor = /^\[object .+?Constructor\]$/, 4115 reIsOctal = /^0o[0-7]+$/i, 4116 reIsUint = /^(?:0|[1-9]\d*)$/, 4117 reLatin1 = /[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g, 4118 reNoMatch = /($^)/, 4119 reUnescapedString = /['\n\r\u2028\u2029\\]/g, 4120 rsAstralRange = "\\ud800-\\udfff", 4121 rsComboMarksRange = "\\u0300-\\u036f\\ufe20-\\ufe23", 4122 rsComboSymbolsRange = "\\u20d0-\\u20f0", 4123 rsDingbatRange = "\\u2700-\\u27bf", 4124 rsLowerRange = "a-z\\xdf-\\xf6\\xf8-\\xff", 4125 rsMathOpRange = "\\xac\\xb1\\xd7\\xf7", 4126 rsNonCharRange = "\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf", 4127 rsQuoteRange = "\\u2018\\u2019\\u201c\\u201d", 4128 rsSpaceRange = " \\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", 4129 rsUpperRange = "A-Z\\xc0-\\xd6\\xd8-\\xde", 4130 rsVarRange = "\\ufe0e\\ufe0f", 4131 rsBreakRange = rsMathOpRange + rsNonCharRange + rsQuoteRange + rsSpaceRange, 4132 rsAstral = "[" + rsAstralRange + "]", 4133 rsBreak = "[" + rsBreakRange + "]", 4134 rsCombo = "[" + rsComboMarksRange + rsComboSymbolsRange + "]", 4135 rsDigits = "\\d+", 4136 rsDingbat = "[" + rsDingbatRange + "]", 4137 rsLower = "[" + rsLowerRange + "]", 4138 rsMisc = "[^" + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + "]", 4139 rsFitz = "\\ud83c[\\udffb-\\udfff]", 4140 rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")", 4141 rsNonAstral = "[^" + rsAstralRange + "]", 4142 rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}", 4143 rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]", 4144 rsUpper = "[" + rsUpperRange + "]", 4145 rsZWJ = "\\u200d", 4146 rsLowerMisc = "(?:" + rsLower + "|" + rsMisc + ")", 4147 rsUpperMisc = "(?:" + rsUpper + "|" + rsMisc + ")", 4148 reOptMod = rsModifier + "?", 4149 rsOptVar = "[" + rsVarRange + "]?", 4150 rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*", 4151 rsSeq = rsOptVar + reOptMod + rsOptJoin, 4152 rsEmoji = "(?:" + [rsDingbat, rsRegional, rsSurrPair].join("|") + ")" + rsSeq, 4153 rsSymbol = "(?:" + [rsNonAstral + rsCombo + "?", rsCombo, rsRegional, rsSurrPair, rsAstral].join("|") + ")", 4154 reComboMark = RegExp(rsCombo, "g"), 4155 reComplexSymbol = RegExp(rsFitz + "(?=" + rsFitz + ")|" + rsSymbol + rsSeq, "g"), 4156 reHasComplexSymbol = RegExp("[" + rsZWJ + rsAstralRange + rsComboMarksRange + rsComboSymbol
4156sRange + rsVarRange + "]"), 4157 reBasicWord = /[a-zA-Z0-9]+/g, 4158 reComplexWord = RegExp([rsUpper + "?" + rsLower + "+(?=" + [rsBreak, rsUpper, "$"].join("|") + ")", rsUpperMisc + "+(?=" + [rsBreak, rsUpper + rsLowerMisc, "$"].join("|") + ")", rsUpper + "?" + rsLowerMisc + "+", rsUpper + "+", rsDigits, rsEmoji].join("|"), "g"), 4159 reHasComplexWord = /[a-z][A-Z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/, 4160 contextProps = ["Array", "Date", "Error", "Float32Array", "Float64Array", "Function", "Int8Array", "Int16Array", "Int32Array", "Map", "Math", "Object", "Reflect", "RegExp", "Set", "String", "Symbol", "TypeError", "Uint8Array", "Uint8ClampedArray", "Uint16Array", "Uint32Array", "WeakMap", "_", "clearTimeout", "isFinite", "parseInt", "setTimeout"], 4161 templateCounter = -1, 4162 typedArrayTags = {}; 4163 typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = !0, typedArrayTags[argsTag] = typedArrayTags[arrayTag] = typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = typedArrayTags[dateTag] = typedArrayTags[errorTag] = typedArrayTags[funcTag] = typedArrayTags[mapTag] = typedArrayTags[numberTag] = typedArrayTags[objectTag] = typedArrayTags[regexpTag] = typedArrayTags[setTag] = typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = !1; 4164 var cloneableTags = {}; 4165 cloneableTags[argsTag] = cloneableTags[arrayTag] = cloneableTags[arrayBufferTag] = cloneableTags[boolTag] = cloneableTags[dateTag] = cloneableTags[float32Tag] = cloneableTags[float64Tag] = cloneableTags[int8Tag] = cloneableTags[int16Tag] = cloneableTags[int32Tag] = cloneableTags[mapTag] = cloneableTags[numberTag] = cloneableTags[objectTag] = cloneableTags[regexpTag] = cloneableTags[setTag] = cloneableTags[stringTag] = cloneableTags[symbolTag] = cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = !0, cloneableTags[errorTag] = cloneableTags[funcTag] = cloneableTags[weakMapTag] = !1; 4166 var deburredLetters = { "Ãâ¬": "A", "ÃÂ": "A", "Ãâ": "A", "ÃÆ": "A", "Ãâ": "A", "Ãâ¦": "A", "à ": "a", "á": "a", "â": "a", "ã": "a", "ä": "a", "ÃÂ¥": "a", "Ãâ¡": "C", "ç": "c", "ÃÂ": "D", "ð": "d", "ÃË": "E", "Ãâ°": "E", "ÃÅ ": "E", "Ãâ¹": "E", "è": "e", "é": "e", "ê": "e", "ë": "e", "ÃÅ": "I", "ÃÂ": "I", "ÃŽ": "I", "ÃÂ": "I", "ì": "i", "ÃÂ": "i", "î": "i", "ï": "i", "Ãâ": "N", "ñ": "n", "Ãâ": "O", "Ãâ": "O", "Ãâ": "O", "Ãâ¢": "O", "Ãâ": "O", "ÃË": "O", "ò": "o", "ó": "o", "ô": "o", "õ": "o", "ö": "o", "ø": "o", "Ãâ¢": "U", "ÃÅ¡": "U", "Ãâº": "U", "ÃÅ": "U", "ù": "u", "ú": "u", "û": "u", "ü": "u", "ÃÂ": "Y", "ý": "y", "ÿ": "y", "Ãâ ": "Ae", "æ": "ae", "Þ": "Th", "þ": "th", "ß": "ss" }, 4167 htmlEscapes = { "&": "&", "<": "<", ">": ">", '"': """, "'": "'", "`": "`" }, 4168 htmlUnescapes = { "&": "&", "<": "<", ">": ">", """: '"', "'": "'", "`": "`" }, 4169 objectTypes = { function: !0, object: !0 }, 4170 stringEscapes = { "\\": "\\", "'": "'", "\n": "n", "\r": "r", "\u2028": "u2028", "\u2029": "u2029" }, 4171 freeParseFloat = parseFloat, 4172 freeParseInt = parseInt, 4173 freeExports = objectTypes[typeof exports] && exports && !exports.nodeType ? exports : null, 4174 freeModule = objectTypes[typeof module] && module && !module.nodeType ? module : null, 4175 freeGlobal = checkGlobal(freeExports && freeModule && "object" == typeof global && global), 4176 freeSelf = checkGlobal(objectTypes[typeof self] && self), 4177 freeWindow = checkGlobal(objectTypes[typeof window] && window), 4178 moduleExports = freeModule && freeModule.exports === freeExports ? freeExports : null, 4179 thisGlobal = checkGlobal(objectTypes[typeof this] && this), 4180 root = freeGlobal || freeWindow !== (thisGlobal && thisGlobal.window) && freeWindow || freeSelf || thisGlobal || Function("return this")(), 4181 _ = runInContext(); 4182 (freeWindow || freeSelf || {})._ = _, "function" == typeof define && "object" == typeof define.amd && define.amd ? define(function() { return _ }) : freeExports && freeModule ? (moduleExports && ((freeModule.exports = _)._ = _), freeExports._ = _) : root._ = _ 4183 }.call(this), 4184 function(window) { 4185 function isArraylike(obj) { 4186 var length = obj.length, 4187 type = $.type(obj); 4188 return "function" !== type && !$.isWindow(obj) && (!(1 !== obj.nodeType || !length) || ("array" === type || 0 === length || "number" == typeof length && length > 0 && length - 1 in obj)) 4189 } 4190 if (!window.jQuery) { 4191 var $ = function(selector, context) { return new $.fn.init(selector, context) }; 4192 $.isWindow = function(obj) { return null != obj && obj == obj.window }, $.type = function(obj) { return null == obj ? obj + "" : "object" == typeof obj || "function" == typeof obj ? class2type[toString.call(obj)] || "object" : typeof obj }, $.isArray = Array.isArray || function(obj) { return "array" === $.type(obj) }, $.isPlainObject = function(obj) { var key; if (!obj || "object" !== $.type(obj) || obj.nodeType || $.isWindow(obj)) return !1; try { if (obj.constructor && !hasOwn.call(obj, "constructor") && !hasOwn.call(obj.constructor.prototype, "isPrototypeOf")) return !1 } catch (e) { return !1 } for (key in obj); return void 0 === key || hasOwn.call(obj, key) }, $.each = function(obj, callback, args) { 4193 var value, i = 0, 4194 length = obj.length, 4195 isArray = isArraylike(obj); 4196 if (args) { 4197 if (isArray) 4198 for (; i < length && (value = callback.apply(obj[i], args), value !== !1); i++); 4199 else 4200 for (i in obj) 4201 if (value = callback.apply(obj[i], args), value === !1) break 4202 } else if (isArray) 4203 for (; i < length && (value = callback.call(obj[i], i, obj[i]), value !== !1); i++); 4204 else 4205 for (i in obj) 4206 if (value = callback.call(obj[i], i, obj[i]), value === !1) break; return obj 4207 }, $.data = function(node, key, value) { 4208 if (void 0 === value) { 4209 var id = node[$.expando],
vendor: 77,257 bytes, lines 4210-4905
4210 store = id && cache[id]; 4211 if (void 0 === key) return store; 4212 if (store && key in store) return store[key] 4213 } else if (void 0 !== key) { var id = node[$.expando] || (node[$.expando] = ++$.uuid); return cache[id] = cache[id] || {}, cache[id][key] = value, value } 4214 }, $.removeData = function(node, keys) { 4215 var id = node[$.expando], 4216 store = id && cache[id]; 4217 store && $.each(keys, function(_, key) { delete store[key] }) 4218 }, $.extend = function() { 4219 var src, copyIsArray, copy, name, options, clone, target = arguments[0] || {}, 4220 i = 1, 4221 length = arguments.length, 4222 deep = !1; 4223 for ("boolean" == typeof target && (deep = target, target = arguments[i] || {}, i++), "object" != typeof target && "function" !== $.type(target) && (target = {}), i === length && (target = this, i--); i < length; i++) 4224 if (null != (options = arguments[i])) 4225 for (name in options) src = target[name], copy = options[name], target !== copy && (deep && copy && ($.isPlainObject(copy) || (copyIsArray = $.isArray(copy))) ? (copyIsArray ? (copyIsArray = !1, clone = src && $.isArray(src) ? src : []) : clone = src && $.isPlainObject(src) ? src : {}, target[name] = $.extend(deep, clone, copy)) : void 0 !== copy && (target[name] = copy)); 4226 return target 4227 }, $.queue = function(elem, type, data) { 4228 function $makeArray(arr, results) { 4229 var ret = results || []; 4230 return null != arr && (isArraylike(Object(arr)) ? ! function(first, second) { 4231 for (var len = +second.length, j = 0, i = first.length; j < len;) first[i++] = second[j++]; 4232 if (len !== len) 4233 for (; void 0 !== second[j];) first[i++] = second[j++]; 4234 return first.length = i, first 4235 }(ret, "string" == typeof arr ? [arr] : arr) : [].push.call(ret, arr)), ret 4236 } 4237 if (elem) { type = (type || "fx") + "queue"; var q = $.data(elem, type); return data ? (!q || $.isArray(data) ? q = $.data(elem, type, $makeArray(data)) : q.push(data), q) : q || [] } 4238 }, $.dequeue = function(elems, type) { 4239 $.each(elems.nodeType ? [elems] : elems, function(i, elem) { 4240 type = type || "fx"; 4241 var queue = $.queue(elem, type), 4242 fn = queue.shift(); 4243 "inprogress" === fn && (fn = queue.shift()), fn && ("fx" === type && queue.unshift("inprogress"), fn.call(elem, function() { $.dequeue(elem, type) })) 4244 }) 4245 }, $.fn = $.prototype = { 4246 init: function(selector) { if (selector.nodeType) return this[0] = selector, this; throw new Error("Not a DOM node.") }, 4247 offset: function() { var box = this[0].getBoundingClientRect ? this[0].getBoundingClientRect() : { top: 0, left: 0 }; return { top: box.top + (window.pageYOffset || document.scrollTop || 0) - (document.clientTop || 0), left: box.left + (window.pageXOffset || document.scrollLeft || 0) - (document.clientLeft || 0) } }, 4248 position: function() { 4249 function offsetParent() { for (var offsetParent = this.offsetParent || document; offsetParent && "html" === !offsetParent.nodeType.toLowerCase && "static" === offsetParent.style.position;) offsetParent = offsetParent.offsetParent; return offsetParent || document } 4250 var elem = this[0], 4251 offsetParent = offsetParent.apply(elem), 4252 offset = this.offset(), 4253 parentOffset = /^(?:body|html)$/i.test(offsetParent.nodeName) ? { top: 0, left: 0 } : $(offsetParent).offset(); 4254 return offset.top -= parseFloat(elem.style.marginTop) || 0, offset.left -= parseFloat(elem.style.marginLeft) || 0, offsetParent.style && (parentOffset.top += parseFloat(offsetParent.style.borderTopWidth) || 0, parentOffset.left += parseFloat(offsetParent.style.borderLeftWidth) || 0), { top: offset.top - parentOffset.top, left: offset.left - parentOffset.left } 4255 } 4256 }; 4257 var cache = {}; 4258 $.expando = "velocity" + (new Date).getTime(), $.uuid = 0; 4259 for (var class2type = {}, hasOwn = class2type.hasOwnProperty, toString = class2type.toString, types = "Boolean Number String Function Array Date RegExp Object Error".split(" "), i = 0; i < types.length; i++) class2type["[object " + types[i] + "]"] = types[i].toLowerCase(); 4260 $.fn.init.prototype = $.fn, window.Velocity = { Utilities: $ } 4261 } 4262 }(window), 4263 function(factory) { "object" == typeof module && "object" == typeof module.exports ? module.exports = factory() : "function" == typeof define && define.amd ? define(factory) : factory() }(function() { 4264 return function(global, window, document, undefined) { 4265 function compactSparseArray(array) { 4266 for (var index = -1, length = array ? array.length : 0, result = []; ++index < length;) { 4267 var value = array[index]; 4268 value && result.push(value) 4269 } 4270 return result 4271 } 4272 4273 function sanitizeElements(elements) { return Type.isWrapped(elements) ? elements = [].slice.call(elements) : Type.isNode(elements) && (elements = [elements]), elements } 4274 4275 function Data(element) { var response = $.data(element, "velocity"); return null === response ? undefined : response } 4276 4277 function generateStep(steps) { return function(p) { return Math.round(p * steps) * (1 / steps) } } 4278 4279 function generateBezier(mX1, mY1, mX2, mY2) { 4280 function A(aA1, aA2) { return 1 - 3 * aA2 + 3 * aA1 } 4281 4282 function B(aA1, aA2) { return 3 * aA2 - 6 * aA1 } 4283 4284 function C(aA1) { return 3 * aA1 } 4285 4286 function calcBezier(aT, aA1, aA2) { return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT } 4287 4288 function getSlope(aT, aA1, aA2) { return 3 * A(aA1, aA2) * aT * aT + 2 * B(aA1, aA2) * aT + C(aA1) } 4289 4290 function newtonRaphsonIterate(aX, aGuessT) { 4291 for (var i = 0; i < NEWTON_ITERATIONS; ++i) { 4292 var currentSlope = getSlope(aGuessT, mX1, mX2); 4293 if (0 === currentSlope) return aGuessT; 4294 var currentX = calcBezier(aGuessT, mX1, mX2) - aX; 4295 aGuessT -= currentX / currentSlope 4296 } 4297 return aGuessT 4298 } 4299 4300 function calcSampleValues() { for (var i = 0; i < kSplineTableSize; ++i) mSampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2) } 4301 4302 function binarySubdivide(aX, aA, aB) { 4303 var currentX, currentT, i = 0; 4304 do currentT = aA + (aB - aA) / 2, currentX = calcBezier(currentT, mX1, mX2) - aX, currentX > 0 ? aB = currentT : aA = currentT; while (Math.abs(currentX) > SUBDIVISION_PRECISION && ++i < SUBDIVISION_MAX_ITERATIONS); 4305 return currentT 4306 } 4307 4308 function getTForX(aX) { 4309 for (var intervalStart = 0, currentSample = 1, lastSample = kSplineTableSize - 1; currentSample != lastSample && mSampleValues[currentSample] <= aX; ++currentSample) intervalStart += kSampleStepSize; 4310 --currentSample; 4311 var dist = (aX - mSampleValues[currentSample]) / (mSampleValues[currentSample + 1] - mSampleValues[currentSample]), 4312 guessForT = intervalStart + dist * kSampleStepSize, 4313 initialSlope = getSlope(guessForT, mX1, mX2); 4314 return initialSlope >= NEWTON_MIN_SLOPE ? newtonRaphsonIterate(aX, guessForT) : 0 == initialSlope ? guessForT : binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize) 4315 } 4316 4317 function precompute() { _precomputed = !0, mX1 == mY1 && mX2 == mY2 || calcSampleValues() } 4318 var NEWTON_ITERATIONS = 4, 4319 NEWTON_MIN_SLOPE = .001, 4320 SUBDIVISION_PRECISION = 1e-7, 4321 SUBDIVISION_MAX_ITERATIONS = 10, 4322 kSplineTableSize = 11, 4323 kSampleStepSize = 1 / (kSplineTableSize - 1), 4324 float32ArraySupported = "Float32Array" in window; 4325 if (4 !== arguments.length) return !1; 4326 for (var i = 0; i < 4; ++i) 4327 if ("number" != typeof arguments[i] || isNaN(arguments[i]) || !isFinite(arguments[i])) return !1; 4328 mX1 = Math.min(mX1, 1), mX2 = Math.min(mX2, 1), mX1 = Math.max(mX1, 0), mX2 = Math.max(mX2, 0); 4329 var mSampleValues = float32ArraySupported ? new Float32Array(kSplineTableSize) : new Array(kSplineTableSize), 4330 _precomputed = !1, 4331 f = function(aX) { return _precomputed || precompute(), mX1 === mY1 && mX2 === mY2 ? aX : 0 === aX ? 0 : 1 === aX ? 1 : calcBezier(getTForX(aX), mY1, mY2) }; 4332 f.getControlPoints = function() { return [{ x: mX1, y: mY1 }, { x: mX2, y: mY2 }] }; 4333 var str = "generateBezier(" + [mX1, mY1, mX2, mY2] + ")"; 4334 return f.toString = function() { return str }, f 4335 } 4336 4337 function getEasing(value, duration) { var easing = value; return Type.isString(value) ? Velocity.Easings[value] || (easing = !1) : easing = Type.isArray(value) && 1 === value.length ? generateStep.apply(null, value) : Type.isArray(value) && 2 === value.length ? generateSpringRK4.apply(null, value.concat([duration])) : !(!Type.isArray(value) || 4 !== value.length) && generateBezier.apply(null, value), easing === !1 && (easing = Velocity.Easings[Velocity.defaults.easing] ? Velocity.defaults.easing : EASING_DEFAULT), easing } 4338 4339 function tick(timestamp) { 4340 if (timestamp) { 4341 var timeCurrent = (new Date).getTime(), 4342 callsLength = Velocity.State.calls.length; 4343 callsLength > 1e4 && (Velocity.State.calls = compactSparseArray(Velocity.State.calls)); 4344 for (var i = 0; i < callsLength; i++) 4345 if (Velocity.State.calls[i]) { 4346 var callContainer = Velocity.State.calls[i], 4347 call = callContainer[0], 4348 opts = callContainer[2], 4349 timeStart = callContainer[3], 4350 firstTick = !!timeStart, 4351 tweenDummyValue = null; 4352 timeStart || (timeStart = Velocity.State.calls[i][3] = timeCurrent - 16); 4353 for (var percentComplete = Math.min((timeCurrent - timeStart) / opts.duration, 1), j = 0, callLength = call.length; j < callLength; j++) { 4354 var tweensContainer = call[j], 4355 element = tweensContainer.element; 4356 if (Data(element)) { 4357 var transformPropertyExists = !1; 4358 if (opts.display !== undefined && null !== opts.display && "none" !== opts.display) { 4359 if ("flex" === opts.display) { 4360 var flexValues = ["-webkit-box", "-moz-box", "-ms-flexbox", "-webkit-flex"]; 4361 $.each(flexValues, function(i, flexValue) { CSS.setPropertyValue(element, "display", flexValue) }) 4362 } 4363 CSS.setPropertyValue(element, "display", opts.display) 4364 } 4365 opts.visibility !== undefined && "hidden" !== opts.visibility && CSS.setPropertyValue(element, "visibility", opts.visibility); 4366 for (var property in tweensContainer) 4367 if ("element" !== property) { 4368 var currentValue, tween = tweensContainer[property], 4369 easing = Type.isString(tween.easing) ? Velocity.Easings[tween.easing] : tween.easing; 4370 if (1 === percentComplete) currentValue = tween.endValue; 4371 else { var tweenDelta = tween.endValue - tween.startValue; if (currentValue = tween.startValue + tweenDelta * easing(percentComplete, opts, tweenDelta), !firstTick && currentValue === tween.currentValue) continue } 4372 if (tween.currentValue = currentValue, "tween" === property) tweenDummyValue = currentValue; 4373 else { 4374 if (CSS.Hooks.registered[property]) { 4375 var hookRoot = CSS.Hooks.getRoot(property), 4376 rootPropertyValueCache = Data(element).rootPropertyValueCache[hookRoot]; 4377 rootPropertyValueCache && (tween.rootPropertyValue = rootPropertyValueCache) 4378 } 4379 var adjustedSetData = CSS.setPropertyValue(element, property, tween.currentValue + (0 === parseFloat(currentValue) ? "" : tween.unitType), tween.rootPropertyValue, tween.scrollData); 4380 CSS.Hooks.registered[property] && (CSS.Normalizations.registered[hookRoot] ? Data(element).rootPropertyValueCache[hookRoot] = CSS.Normalizations.registered[hookRoot]("extract", null, adjustedSetData[1]) : Data(element).rootPropertyValueCache[hookRoot] = adjustedSetData[1]), "transform" === adjustedSetData[0] && (transformPropertyExists = !0) 4381 } 4382 } 4383 opts.mobileHA && Data(element).transformCache.translate3d === undefined && (Data(element).transformCache.translate3d = "(0px, 0px, 0px)", transformPropertyExists = !0), transformPropertyExists && CSS.flushTransformCache(element) 4384 } 4385 } 4386 opts.display !== undefined && "none" !== opts.display && (Velocity.State.calls[i][2].display = !1), opts.visibility !== undefined && "hidden" !== opts.visibility && (Velocity.State.calls[i][2].visibility = !1), opts.progress && opts.progress.call(callContainer[1], callContainer[1], percentComplete, Math.max(0, timeStart + opts.duration - timeCurrent), timeStart, tweenDummyValue), 1 === percentComplete && completeCall(i) 4387 } 4388 } 4389 Velocity.State.isTicking && ticker(tick) 4390 } 4391 4392 function completeCall(callIndex, isStopped) { 4393 if (!Velocity.State.calls[callIndex]) return !1; 4394 for (var call = Velocity.State.calls[callIndex][0], elements = Velocity.State.calls[callIndex][1], opts = Velocity.State.calls[callIndex][2], resolver = Velocity.State.calls[callIndex][4], remainingCallsExist = !1, i = 0, callLength = call.length; i < callLength; i++) { 4395 var element = call[i].element; 4396 if (isStopped || opts.loop || ("none" === opts.display && CSS.setPropertyValue(element, "display", opts.display), "hidden" === opts.visibility && CSS.setPropertyValue(element, "visibility", opts.visibility)), opts.loop !== !0 && ($.queue(element)[1] === undefined || !/\.velocityQueueEntryFlag/i.test($.queue(element)[1])) && Data(element)) { 4397 Data(element).isAnimating = !1, Data(element).rootPropertyValueCache = {}; 4398 var transformHAPropertyExists = !1; 4399 $.each(CSS.Lists.transforms3D, function(i, transformName) { 4400 var defaultValue = /^scale/.test(transformName) ? 1 : 0, 4401 currentValue = Data(element).transformCache[transformName]; 4402 Data(element).transformCache[transformName] !== undefined && new RegExp("^\\(" + defaultValue + "[^.]").test(currentValue) && (transformHAPropertyExists = !0, delete Data(element).transformCache[transformName]) 4403 }), opts.mobileHA && (transformHAPropertyExists = !0, delete Data(element).transformCache.translate3d), transformHAPropertyExists && CSS.flushTransformCache(element), CSS.Values.removeClass(element, "velocity-animating") 4404 } 4405 if (!isStopped && opts.complete && !opts.loop && i === callLength - 1) try { opts.complete.call(elements, elements) } catch (error) { setTimeout(function() { throw error }, 1) } 4406 resolver && opts.loop !== !0 && resolver(elements), Data(element) && opts.loop === !0 && !isStopped && ($.each(Data(element).tweensContainer, function(propertyName, tweenContainer) { /^rotate/.test(propertyName) && 360 === parseFloat(tweenContainer.endValue) && (tweenContainer.endValue = 0, tweenContainer.startValue = 360), /^backgroundPosition/.test(propertyName) && 100 === parseFloat(tweenContainer.endValue) && "%" === tweenContainer.unitType && (tweenContainer.endValue = 0, tweenContainer.startValue = 100) }), Velocity(element, "reverse", { loop: !0, delay: opts.delay })), opts.queue !== !1 && $.dequeue(element, opts.queue) 4407 } 4408 Velocity.State.calls[callIndex] = !1; 4409 for (var j = 0, callsLength = Velocity.State.calls.length; j < callsLength; j++) 4410 if (Velocity.State.calls[j] !== !1) { remainingCallsExist = !0; break } 4411 remainingCallsExist === !1 && (Velocity.State.isTicking = !1, delete Velocity.State.calls, Velocity.State.calls = []) 4412 } 4413 var $, IE = function() { if (document.documentMode) return document.documentMode; for (var i = 7; i > 4; i--) { var div = document.createElement("div"); if (div.innerHTML = "<!--[if IE " + i + "]><span></span><![endif]-->", div.getElementsByTagName("span").length) return div = null, i } return undefined }(), 4414 rAFShim = function() { var timeLast = 0; return window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || function(callback) { var timeDelta, timeCurrent = (new Date).getTime(); return timeDelta = Math.max(0, 16 - (timeCurrent - timeLast)), timeLast = timeCurrent + timeDelta, setTimeout(function() { callback(timeCurrent + timeDelta) }, timeDelta) } }(), 4415 Type = { isString: function(variable) { return "string" == typeof variable }, isArray: Array.isArray || function(variable) { return "[object Array]" === Object.prototype.toString.call(variable) }, isFunction: function(variable) { return "[object Function]" === Object.prototype.toString.call(variable) }, isNode: function(variable) { return variable && variable.nodeType }, isNodeList: function(variable) { return "object" == typeof variable && /^\[object (HTMLCollection|NodeList|Object)\]$/.test(Object.prototype.toString.call(variable)) && variable.length !== undefined && (0 === variable.length || "object" == typeof variable[0] && variable[0].nodeType > 0) }, isWrapped: function(variable) { return variable && (variable.jquery || window.Zepto && window.Zepto.zepto.isZ(variable)) }, isSVG: function(variable) { return window.SVGElement && variable instanceof window.SVGElement }, isEmptyObject: function(variable) { for (var name in variable) return !1; return !0 } }, 4416 isJQuery = !1; 4417 if (global.fn && global.fn.jquery ? ($ = global, isJQuery = !0) : $ = window.Velocity.Utilities, IE <= 8 && !isJQuery) throw new Error("Velocity: IE8 and below require jQuery to be loaded before Velocity."); 4418 if (IE <= 7) return void(jQuery.fn.velocity = jQuery.fn.animate); 4419 var DURATION_DEFAULT = 400, 4420 EASING_DEFAULT = "swing", 4421 Velocity = { State: { isMobile: /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent), isAndroid: /Android/i.test(navigator.userAgent), isGingerbread: /Android 2\.3\.[3-7]/i.test(navigator.userAgent), isChrome: window.chrome, isFirefox: /Firefox/i.test(navigator.userAgent), prefixElement: document.createElement("div"), prefixMatches: {}, scrollAnchor: null, scrollPropertyLeft: null, scrollPropertyTop: null, isTicking: !1, calls: [] }, CSS: {}, Utilities: $, Redirects: {}, Easings: {}, Promise: window.Promise, defaults: { queue: "", duration: DURATION_DEFAULT, easing: EASING_DEFAULT, begin: undefined, complete: undefined, progress: undefined, display: undefined, visibility: undefined, loop: !1, delay: !1, mobileHA: !0, _cacheValues: !0 }, init: function(element) { $.data(element, "velocity", { isSVG: Type.isSVG(element), isAnimating: !1, computedStyle: null, tweensContainer: null, rootPropertyValueCache: {}, transformCache: {} }) }, hook: null, mock: !1, version: { major: 1, minor: 2, patch: 2 }, debug: !1 }; 4422 window.pageYOffset !== undefined ? (Velocity.State.scrollAnchor = window, 4423 Velocity.State.scrollPropertyLeft = "pageXOffset", Velocity.State.scrollPropertyTop = "pageYOffset") : (Velocity.State.scrollAnchor = document.documentElement || document.body.parentNode || document.body, Velocity.State.scrollPropertyLeft = "scrollLeft", Velocity.State.scrollPropertyTop = "scrollTop"); 4424 var generateSpringRK4 = function() { 4425 function springAccelerationForState(state) { return -state.tension * state.x - state.friction * state.v } 4426 4427 function springEvaluateStateWithDerivative(initialState, dt, derivative) { var state = { x: initialState.x + derivative.dx * dt, v: initialState.v + derivative.dv * dt, tension: initialState.tension, friction: initialState.friction }; return { dx: state.v, dv: springAccelerationForState(state) } } 4428 4429 function springIntegrateState(state, dt) { 4430 var a = { dx: state.v, dv: springAccelerationForState(state) }, 4431 b = springEvaluateStateWithDerivative(state, .5 * dt, a), 4432 c = springEvaluateStateWithDerivative(state, .5 * dt, b), 4433 d = springEvaluateStateWithDerivative(state, dt, c), 4434 dxdt = 1 / 6 * (a.dx + 2 * (b.dx + c.dx) + d.dx), 4435 dvdt = 1 / 6 * (a.dv + 2 * (b.dv + c.dv) + d.dv); 4436 return state.x = state.x + dxdt * dt, state.v = state.v + dvdt * dt, state 4437 } 4438 return function springRK4Factory(tension, friction, duration) { 4439 var have_duration, dt, last_state, initState = { x: -1, v: 0, tension: null, friction: null }, 4440 path = [0], 4441 time_lapsed = 0, 4442 tolerance = 1e-4, 4443 DT = .016; 4444 for (tension = parseFloat(tension) || 500, friction = parseFloat(friction) || 20, duration = duration || null, initState.tension = tension, initState.friction = friction, have_duration = null !== duration, have_duration ? (time_lapsed = springRK4Factory(tension, friction), dt = time_lapsed / duration * DT) : dt = DT;;) 4445 if (last_state = springIntegrateState(last_state || initState, dt), path.push(1 + last_state.x), time_lapsed += 16, !(Math.abs(last_state.x) > tolerance && Math.abs(last_state.v) > tolerance)) break; 4446 return have_duration ? function(percentComplete) { return path[percentComplete * (path.length - 1) | 0] } : time_lapsed 4447 } 4448 }(); 4449 Velocity.Easings = { linear: function(p) { return p }, swing: function(p) { return .5 - Math.cos(p * Math.PI) / 2 }, spring: function(p) { return 1 - Math.cos(4.5 * p * Math.PI) * Math.exp(6 * -p) } }, $.each([ 4450 ["ease", [.25, .1, .25, 1]], 4451 ["ease-in", [.42, 0, 1, 1]], 4452 ["ease-out", [0, 0, .58, 1]], 4453 ["ease-in-out", [.42, 0, .58, 1]], 4454 ["easeInSine", [.47, 0, .745, .715]], 4455 ["easeOutSine", [.39, .575, .565, 1]], 4456 ["easeInOutSine", [.445, .05, .55, .95]], 4457 ["easeInQuad", [.55, .085, .68, .53]], 4458 ["easeOutQuad", [.25, .46, .45, .94]], 4459 ["easeInOutQuad", [.455, .03, .515, .955]], 4460 ["easeInCubic", [.55, .055, .675, .19]], 4461 ["easeOutCubic", [.215, .61, .355, 1]], 4462 ["easeInOutCubic", [.645, .045, .355, 1]], 4463 ["easeInQuart", [.895, .03, .685, .22]], 4464 ["easeOutQuart", [.165, .84, .44, 1]], 4465 ["easeInOutQuart", [.77, 0, .175, 1]], 4466 ["easeInQuint", [.755, .05, .855, .06]], 4467 ["easeOutQuint", [.23, 1, .32, 1]], 4468 ["easeInOutQuint", [.86, 0, .07, 1]], 4469 ["easeInExpo", [.95, .05, .795, .035]], 4470 ["easeOutExpo", [.19, 1, .22, 1]], 4471 ["easeInOutExpo", [1, 0, 0, 1]], 4472 ["easeInCirc", [.6, .04, .98, .335]], 4473 ["easeOutCirc", [.075, .82, .165, 1]], 4474 ["easeInOutCirc", [.785, .135, .15, .86]] 4475 ], function(i, easingArray) { Velocity.Easings[easingArray[0]] = generateBezier.apply(null, easingArray[1]) }); 4476 var CSS = Velocity.CSS = { 4477 RegEx: { isHex: /^#([A-f\d]{3}){1,2}$/i, valueUnwrap: /^[A-z]+\((.*)\)$/i, wrappedValueAlreadyExtracted: /[0-9.]+ [0-9.]+ [0-9.]+( [0-9.]+)?/, valueSplit: /([A-z]+\(.+\))|(([A-z0-9#-.]+?)(?=\s|$))/gi }, 4478 Lists: { colors: ["fill", "stroke", "stopColor", "color", "backgroundColor", "borderColor", "borderTopColor", "borderRightColor", "borderBottomColor", "borderLeftColor", "outlineColor"], transformsBase: ["translateX", "translateY", "scale", "scaleX", "scaleY", "skewX", "skewY", "rotateZ"], transforms3D: ["transformPerspective", "translateZ", "scaleZ", "rotateX", "rotateY"] }, 4479 Hooks: { 4480 templates: { textShadow: ["Color X Y Blur", "black 0px 0px 0px"], boxShadow: ["Color X Y Blur Spread", "black 0px 0px 0px 0px"], clip: ["Top Right Bottom Left", "0px 0px 0px 0px"], backgroundPosition: ["X Y", "0% 0%"], transformOrigin: ["X Y Z", "50% 50% 0px"], perspectiveOrigin: ["X Y", "50% 50%"] }, 4481 registered: {}, 4482 register: function() { 4483 for (var i = 0; i < CSS.Lists.colors.length; i++) { 4484 var rgbComponents = "color" === CSS.Lists.colors[i] ? "0 0 0 1" : "255 255 255 1"; 4485 CSS.Hooks.templates[CSS.Lists.colors[i]] = ["Red Green Blue Alpha", rgbComponents] 4486 } 4487 var rootProperty, hookTemplate, hookNames; 4488 if (IE) 4489 for (rootProperty in CSS.Hooks.templates) { hookTemplate = CSS.Hooks.templates[rootProperty], hookNames = hookTemplate[0].split(" "); var defaultValues = hookTemplate[1].match(CSS.RegEx.valueSplit); "Color" === hookNames[0] && (hookNames.push(hookNames.shift()), defaultValues.push(defaultValues.shift()), CSS.Hooks.templates[rootProperty] = [hookNames.join(" "), defaultValues.join(" ")]) } 4490 for (rootProperty in CSS.Hooks.templates) { 4491 hookTemplate = CSS.Hooks.templates[rootProperty], hookNames = hookTemplate[0].split(" "); 4492 for (var i in hookNames) { 4493 var fullHookName = rootProperty + hookNames[i], 4494 hookPosition = i; 4495 CSS.Hooks.registered[fullHookName] = [rootProperty, hookPosition] 4496 } 4497 } 4498 }, 4499 getRoot: function(property) { var hookData = CSS.Hooks.registered[property]; return hookData ? hookData[0] : property }, 4500 cleanRootPropertyValue: function(rootProperty, rootPropertyValue) { return CSS.RegEx.valueUnwrap.test(rootPropertyValue) && (rootPropertyValue = rootPropertyValue.match(CSS.RegEx.valueUnwrap)[1]), CSS.Values.isCSSNullValue(rootPropertyValue) && (rootPropertyValue = CSS.Hooks.templates[rootProperty][1]), rootPropertyValue }, 4501 extractValue: function(fullHookName, rootPropertyValue) { 4502 var hookData = CSS.Hooks.registered[fullHookName]; 4503 if (hookData) { 4504 var hookRoot = hookData[0], 4505 hookPosition = hookData[1]; 4506 return rootPropertyValue = CSS.Hooks.cleanRootPropertyValue(hookRoot, rootPropertyValue), rootPropertyValue.toString().match(CSS.RegEx.valueSplit)[hookPosition] 4507 } 4508 return rootPropertyValue 4509 }, 4510 injectValue: function(fullHookName, hookValue, rootPropertyValue) { 4511 var hookData = CSS.Hooks.registered[fullHookName]; 4512 if (hookData) { 4513 var rootPropertyValueParts, rootPropertyValueUpdated, hookRoot = hookData[0], 4514 hookPosition = hookData[1]; 4515 return rootPropertyValue = CSS.Hooks.cleanRootPropertyValue(hookRoot, rootPropertyValue), rootPropertyValueParts = rootPropertyValue.toString().match(CSS.RegEx.valueSplit), rootPropertyValueParts[hookPosition] = hookValue, rootPropertyValueUpdated = rootPropertyValueParts.join(" ") 4516 } 4517 return rootPropertyValue 4518 } 4519 }, 4520 Normalizations: { 4521 registered: { 4522 clip: function(type, element, propertyValue) { 4523 switch (type) { 4524 case "name": 4525 return "clip"; 4526 case "extract": 4527 var extracted; 4528 return CSS.RegEx.wrappedValueAlreadyExtracted.test(propertyValue) ? extracted = propertyValue : (extracted = propertyValue.toString().match(CSS.RegEx.valueUnwrap), extracted = extracted ? extracted[1].replace(/,(\s+)?/g, " ") : propertyValue), extracted; 4529 case "inject": 4530 return "rect(" + propertyValue + ")" 4531 } 4532 }, 4533 blur: function(type, element, propertyValue) { 4534 switch (type) { 4535 case "name": 4536 return Velocity.State.isFirefox ? "filter" : "-webkit-filter"; 4537 case "extract": 4538 var extracted = parseFloat(propertyValue); 4539 if (!extracted && 0 !== extracted) { 4540 var blurComponent = propertyValue.toString().match(/blur\(([0-9]+[A-z]+)\)/i); 4541 extracted = blurComponent ? blurComponent[1] : 0 4542 } 4543 return extracted; 4544 case "inject": 4545 return parseFloat(propertyValue) ? "blur(" + propertyValue + ")" : "none" 4546 } 4547 }, 4548 opacity: function(type, element, propertyValue) { 4549 if (IE <= 8) switch (type) { 4550 case "name": 4551 return "filter"; 4552 case "extract": 4553 var extracted = propertyValue.toString().match(/alpha\(opacity=(.*)\)/i); 4554 return propertyValue = extracted ? extracted[1] / 100 : 1; 4555 case "inject": 4556 return element.style.zoom = 1, parseFloat(propertyValue) >= 1 ? "" : "alpha(opacity=" + parseInt(100 * parseFloat(propertyValue), 10) + ")" 4557 } else switch (type) { 4558 case "name": 4559 return "opacity"; 4560 case "extract": 4561 return propertyValue; 4562 case "inject": 4563 return propertyValue 4564 } 4565 } 4566 }, 4567 register: function() { 4568 IE <= 9 || Velocity.State.isGingerbread || (CSS.Lists.transformsBase = CSS.Lists.transformsBase.concat(CSS.Lists.transforms3D)); 4569 for (var i = 0; i < CSS.Lists.transformsBase.length; i++) ! function() { 4570 var transformName = CSS.Lists.transformsBase[i]; 4571 CSS.Normalizations.registered[transformName] = function(type, element, propertyValue) { 4572 switch (type) { 4573 case "name": 4574 return "transform"; 4575 case "extract": 4576 return Data(element) === undefined || Data(element).transformCache[transformName] === undefined ? /^scale/i.test(transformName) ? 1 : 0 : Data(element).transformCache[transformName].replace(/[()]/g, ""); 4577 case "inject": 4578 var invalid = !1; 4579 switch (transformName.substr(0, transformName.length - 1)) { 4580 case "translate": 4581 invalid = !/(%|px|em|rem|vw|vh|\d)$/i.test(propertyValue); 4582 break; 4583 case "scal": 4584 case "scale": 4585 Velocity.State.isAndroid && Data(element).transformCache[transformName] === undefined && propertyValue < 1 && (propertyValue = 1), invalid = !/(\d)$/i.test(propertyValue); 4586 break; 4587 case "skew": 4588 invalid = !/(deg|\d)$/i.test(propertyValue); 4589 break; 4590 case "rotate": 4591 invalid = !/(deg|\d)$/i.test(propertyValue) 4592 } 4593 return invalid || (Data(element).transformCache[transformName] = "(" + propertyValue + ")"), Data(element).transformCache[transformName] 4594 } 4595 } 4596 }(); 4597 for (var i = 0; i < CSS.Lists.colors.length; i++) ! function() { 4598 var colorName = CSS.Lists.colors[i]; 4599 CSS.Normalizations.registered[colorName] = function(type, element, propertyValue) { 4600 switch (type) { 4601 case "name": 4602 return colorName; 4603 case "extract": 4604 var extracted; 4605 if (CSS.RegEx.wrappedValueAlreadyExtracted.test(propertyValue)) extracted = propertyValue; 4606 else { var converted, colorNames = { black: "rgb(0, 0, 0)", blue: "rgb(0, 0, 255)", gray: "rgb(128, 128, 128)", green: "rgb(0, 128, 0)", red: "rgb(255, 0, 0)", white: "rgb(255, 255, 255)" }; /^[A-z]+$/i.test(propertyValue) ? converted = colorNames[propertyValue] !== undefined ? colorNames[propertyValue] : colorNames.black : CSS.RegEx.isHex.test(propertyValue) ? converted = "rgb(" + CSS.Values.hexToRgb(propertyValue).join(" ") + ")" : /^rgba?\(/i.test(propertyValue) || (converted = colorNames.black), extracted = (converted || propertyValue).toString().match(CSS.RegEx.valueUnwrap)[1].replace(/,(\s+)?/g, " ") } 4607 return IE <= 8 || 3 !== extracted.split(" ").length || (extracted += " 1"), extracted; 4608 case "inject": 4609 return IE <= 8 ? 4 === propertyValue.split(" ").length && (propertyValue = propertyValue.split(/\s+/).slice(0, 3).join(" ")) : 3 === propertyValue.split(" ").length && (propertyValue += " 1"), (IE <= 8 ? "rgb" : "rgba") + "(" + propertyValue.replace(/\s+/g, ",").replace(/\.(\d)+(?=,)/g, "") + ")" 4610 } 4611 } 4612 }() 4613 } 4614 }, 4615 Names: { camelCase: function(property) { return property.replace(/-(\w)/g, function(match, subMatch) { return subMatch.toUpperCase() }) }, SVGAttribute: function(property) { var SVGAttributes = "width|height|x|y|cx|cy|r|rx|ry|x1|x2|y1|y2"; return (IE || Velocity.State.isAndroid && !Velocity.State.isChrome) && (SVGAttributes += "|transform"), new RegExp("^(" + SVGAttributes + ")$", "i").test(property) }, prefixCheck: function(property) { if (Velocity.State.prefixMatches[property]) return [Velocity.State.prefixMatches[property], !0]; for (var vendors = ["", "Webkit", "Moz", "ms", "O"], i = 0, vendorsLength = vendors.length; i < vendorsLength; i++) { var propertyPrefixed; if (propertyPrefixed = 0 === i ? property : vendors[i] + property.replace(/^\w/, function(match) { return match.toUpperCase() }), Type.isString(Velocity.State.prefixElement.style[propertyPrefixed])) return Velocity.State.prefixMatches[property] = propertyPrefixed, [propertyPrefixed, !0] } return [property, !1] } }, 4616 Values: { 4617 hexToRgb: function(hex) { 4618 var rgbParts, shortformRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i, 4619 longformRegex = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i; 4620 return hex = hex.replace(shortformRegex, function(m, r, g, b) { return r + r + g + g + b + b }), rgbParts = longformRegex.exec(hex), rgbParts ? [parseInt(rgbParts[1], 16), parseInt(rgbParts[2], 16), parseInt(rgbParts[3], 16)] : [0, 0, 0] 4621 }, 4622 isCSSNullValue: function(value) { return 0 == value || /^(none|auto|transparent|(rgba\(0, ?0, ?0, ?0\)))$/i.test(value) }, 4623 getUnitType: function(property) { return /^(rotate|skew)/i.test(property) ? "deg" : /(^(scale|scaleX|scaleY|scaleZ|alpha|flexGrow|flexHeight|zIndex|fontWeight)$)|((opacity|red|green|blue|alpha)$)/i.test(property) ? "" : "px" }, 4624 getDisplayType: function(element) { var tagName = element && element.tagName.toString().toLowerCase(); return /^(b|big|i|small|tt|abbr|acronym|cite|code|dfn|em|kbd|strong|samp|var|a|bdo|br|img|map|object|q|script|span|sub|sup|button|input|label|select|textarea)$/i.test(tagName) ? "inline" : /^(li)$/i.test(tagName) ? "list-item" : /^(tr)$/i.test(tagName) ? "table-row" : /^(table)$/i.test(tagName) ? "table" : /^(tbody)$/i.test(tagName) ? "table-row-group" : "block" }, 4625 addClass: function(element, className) { element.classList ? element.classList.add(className) : element.className += (element.className.length ? " " : "") + className }, 4626 removeClass: function(element, className) { element.classList ? element.classList.remove(className) : element.className = element.className.toString().replace(new RegExp("(^|\\s)" + className.split(" ").join("|") + "(\\s|$)", "gi"), " ") } 4627 }, 4628 getPropertyValue: function(element, property, rootPropertyValue, forceStyleLookup) { 4629 function computePropertyValue(element, property) { 4630 function revertDisplay() { toggleDisplay && CSS.setPropertyValue(element, "display", "none") } 4631 var computedValue = 0; 4632 if (IE <= 8) computedValue = $.css(element, property); 4633 else { 4634 var toggleDisplay = !1; 4635 if (/^(width|height)$/.test(property) && 0 === CSS.getPropertyValue(element, "display") && (toggleDisplay = !0, CSS.setPropertyValue(element, "display", CSS.Values.getDisplayType(element))), !forceStyleLookup) { if ("height" === property && "border-box" !== CSS.getPropertyValue(element, "boxSizing").toString().toLowerCase()) { var contentBoxHeight = element.offsetHeight - (parseFloat(CSS.getPropertyValue(element, "borderTopWidth")) || 0) - (parseFloat(CSS.getPropertyValue(element, "borderBottomWidth")) || 0) - (parseFloat(CSS.getPropertyValue(element, "paddingTop")) || 0) - (parseFloat(CSS.getPropertyValue(element, "paddingBottom")) || 0); return revertDisplay(), contentBoxHeight } if ("width" === property && "border-box" !== CSS.getPropertyValue(element, "boxSizing").toString().toLowerCase()) { var contentBoxWidth = element.offsetWidth - (parseFloat(CSS.getPropertyValue(element, "borderLeftWidth")) || 0) - (parseFloat(CSS.getPropertyValue(element, "borderRightWidth")) || 0) - (parseFloat(CSS.getPropertyValue(element, "paddingLeft")) || 0) - (parseFloat(CSS.getPropertyValue(element, "paddingRight")) || 0); return revertDisplay(), contentBoxWidth } } 4636 var computedStyle; 4637 computedStyle = Data(element) === undefined ? window.getComputedStyle(element, null) : Data(element).computedStyle ? Data(element).computedStyle : Data(element).computedStyle = window.getComputedStyle(element, null), "borderColor" === property && (property = "borderTopColor"), computedValue = 9 === IE && "filter" === property ? computedStyle.getPropertyValue(property) : computedStyle[property], "" !== computedValue && null !== computedValue || (computedValue = element.style[property]), revertDisplay() 4638 } 4639 if ("auto" === computedValue && /^(top|right|bottom|left)$/i.test(property)) { 4640 var position = computePropertyValue(element, "position"); 4641 ("fixed" === position || "absolute" === position && /top|left/i.test(property)) && (computedValue = $(element).position()[property] + "px") 4642 } 4643 return computedValue 4644 } 4645 var propertyValue; 4646 if (CSS.Hooks.registered[property]) { 4647 var hook = property, 4648 hookRoot = CSS.Hooks.getRoot(hook); 4649 rootPropertyValue === undefined && (rootPropertyValue = CSS.getPropertyValue(element, CSS.Names.prefixCheck(hookRoot)[0])), CSS.Normalizations.registered[hookRoot] && (rootPropertyValue = CSS.Normalizations.registered[hookRoot]("extract", element, rootPropertyValue)), propertyValue = CSS.Hooks.extractValue(hook, rootPropertyValue) 4650 } else if (CSS.Normalizations.registered[property]) { 4651 var normalizedPropertyName, normalizedPropertyValue; 4652 normalizedPropertyName = CSS.Normalizations.registered[property]("name", element), "transform" !== normalizedPropertyName && (normalizedPropertyValue = computePropertyValue(element, CSS.Names.prefixCheck(normalizedPropertyName)[0]), CSS.Values.isCSSNullValue(normalizedPropertyValue) && CSS.Hooks.templates[property] && (normalizedPropertyValue = CSS.Hooks.templates[property][1])), propertyValue = CSS.Normalizations.registered[property]("extract", element, normalizedPropertyValue) 4653 } 4654 if (!/^[\d-]/.test(propertyValue)) 4655 if (Data(element) && Data(element).isSVG && CSS.Names.SVGAttribute(property)) 4656 if (/^(height|width)$/i.test(property)) try { propertyValue = element.getBBox()[property] } catch (error) { propertyValue = 0 } else propertyValue = element.getAttribute(property); 4657 else propertyValue = computePropertyValue(element, CSS.Names.prefixCheck(property)[0]); 4658 return CSS.Values.isCSSNullValue(propertyValue) && (propertyValue = 0), Velocity.debug >= 2 && console.log("Get " + property + ": " + propertyValue), propertyValue 4659 }, 4660 setPropertyValue: function(element, property, propertyValue, rootPropertyValue, scrollData) { 4661 var propertyName = property; 4662 if ("scroll" === property) scrollData.container ? scrollData.container["scroll" + scrollData.direction] = propertyValue : "Left" === scrollData.direction ? window.scrollTo(propertyValue, scrollData.alternateValue) : window.scrollTo(scrollData.alternateValue, propertyValue); 4663 else if (CSS.Normalizations.registered[property] && "transform" === CSS.Normalizations.registered[property]("name", element)) CSS.Normalizations.registered[property]("inject", element, propertyValue), propertyName = "transform", propertyValue = Data(element).transformCache[property]; 4664 else { 4665 if (CSS.Hooks.registered[property]) { 4666 var hookName = property, 4667 hookRoot = CSS.Hooks.getRoot(property); 4668 rootPropertyValue = rootPropertyValue || CSS.getPropertyValue(element, hookRoot), propertyValue = CSS.Hooks.injectValue(hookName, propertyValue, rootPropertyValue), property = hookRoot 4669 } 4670 if (CSS.Normalizations.registered[property] && (propertyValue = CSS.Normalizations.registered[property]("inject", element, propertyValue), property = CSS.Normalizations.registered[property]("name", element)), propertyName = CSS.Names.prefixCheck(property)[0], IE <= 8) try { element.style[propertyName] = propertyValue } catch (error) { Velocity.debug && console.log("Browser does not support [" + propertyValue + "] for [" + propertyName + "]") } else Data(element) && Data(element).isSVG && CSS.Names.SVGAttribute(property) ? element.setAttribute(property, propertyValue) : element.style[propertyName] = propertyValue; 4671 Velocity.debug >= 2 && console.log("Set " + property + " (" + propertyName + "): " + propertyValue) 4672 } 4673 return [propertyName, propertyValue] 4674 }, 4675 flushTransformCache: function(element) { 4676 function getTransformFloat(transformProperty) { return parseFloat(CSS.getPropertyValue(element, transformProperty)) } 4677 var transformString = ""; 4678 if ((IE || Velocity.State.isAndroid && !Velocity.State.isChrome) && Data(element).isSVG) { 4679 var SVGTransforms = { translate: [getTransformFloat("translateX"), getTransformFloat("translateY")], skewX: [getTransformFloat("skewX")], skewY: [getTransformFloat("skewY")], scale: 1 !== getTransformFloat("scale") ? [getTransformFloat("scale"), getTransformFloat("scale")] : [getTransformFloat("scaleX"), getTransformFloat("scaleY")], rotate: [getTransformFloat("rotateZ"), 0, 0] }; 4680 $.each(Data(element).transformCache, function(transformName) { /^translate/i.test(transformName) ? transformName = "translate" : /^scale/i.test(transformName) ? transformName = "scale" : /^rotate/i.test(transformName) && (transformName = "rotate"), SVGTransforms[transformName] && (transformString += transformName + "(" + SVGTransforms[transformName].join(" ") + ") ", delete SVGTransforms[transformName]) }) 4681 } else { 4682 var transformValue, perspective; 4683 $.each(Data(element).transformCache, function(transformName) { return transformValue = Data(element).transformCache[transformName], "transformPerspective" === transformName ? (perspective = transformValue, !0) : (9 === IE && "rotateZ" === transformName && (transformName = "rotate"), void(transformString += transformName + transformValue + " ")) }), perspective && (transformString = "perspective" + perspective + " " + transformString) 4684 } 4685 CSS.setPropertyValue(element, "transform", transformString) 4686 } 4687 }; 4688 CSS.Hooks.register(), CSS.Normalizations.register(), Velocity.hook = function(elements, arg2, arg3) { 4689 var value = undefined; 4690 return elements = sanitizeElements(elements), $.each(elements, function(i, element) { 4691 if (Data(element) === undefined && Velocity.init(element), arg3 === undefined) value === undefined && (value = Velocity.CSS.getPropertyValue(element, arg2)); 4692 else { var adjustedSet = Velocity.CSS.setPropertyValue(element, arg2, arg3); "transform" === adjustedSet[0] && Velocity.CSS.flushTransformCache(element), value = adjustedSet } 4693 }), value 4694 }; 4695 var animate = function() { 4696 function getChain() { return isUtility ? promiseData.promise || null : elementsWrapped } 4697 4698 function processElement() { 4699 function buildQueue(next) { 4700 function parsePropertyValue(valueData, skipResolvingEasing) { 4701 var endValue = undefined, 4702 easing = undefined, 4703 startValue = undefined; 4704 return Type.isArray(valueData) ? (endValue = valueData[0], !Type.isArray(valueData[1]) && /^[\d-]/.test(valueData[1]) || Type.isFunction(valueData[1]) || CSS.RegEx.isHex.test(valueData[1]) ? startValue = valueData[1] : (Type.isString(valueData[1]) && !CSS.RegEx.isHex.test(valueData[1]) || Type.isArray(valueData[1])) && (easing = skipResolvingEasing ? valueData[1] : getEasing(valueData[1], opts.duration), valueData[2] !== undefined && (startValue = valueData[2]))) : endValue = valueData, skipResolvingEasing || (easing = easing || opts.easing), Type.isFunction(endValue) && (endValue = endValue.call(element, elementsIndex, elementsLength)), Type.isFunction(startValue) && (startValue = startValue.call(element, elementsIndex, elementsLength)), [endValue || 0, easing, startValue] 4705 } 4706 4707 function separateValue(property, value) { var unitType, numericValue; return numericValue = (value || "0").toString().toLowerCase().replace(/[%A-z]+$/, function(match) { return unitType = match, "" }), unitType || (unitType = CSS.Values.getUnitType(property)), [numericValue, unitType] } 4708 4709 function calculateUnitRatios() { 4710 var sameRatioIndicators = { myParent: element.parentNode || document.body, position: CSS.getPropertyValue(element, "position"), fontSize: CSS.getPropertyValue(element, "fontSize") }, 4711 samePercentRatio = sameRatioIndicators.position === callUnitConversionData.lastPosition && sameRatioIndicators.myParent === callUnitConversionData.lastParent, 4712 sameEmRatio = sameRatioIndicators.fontSize === callUnitConversionData.lastFontSize; 4713 callUnitConversionData.lastParent = sameRatioIndicators.myParent, callUnitConversionData.lastPosition = sameRatioIndicators.position, callUnitConversionData.lastFontSize = sameRatioIndicators.fontSize; 4714 var measurement = 100, 4715 unitRatios = {}; 4716 if (sameEmRatio && samePercentRatio) unitRatios.emToPx = callUnitConversionData.lastEmToPx, unitRatios.percentToPxWidth = callUnitConversionData.lastPercentToPxWidth, unitRatios.percentToPxHeight = callUnitConversionData.lastPercentToPxHeight; 4717 else { 4718 var dummy = Data(element).isSVG ? document.createElementNS("http://www.w3.org/2000/svg", "rect") : document.createElement("div"); 4719 Velocity.init(dummy), sameRatioIndicators.myParent.appendChild(dummy), $.each(["overflow", "overflowX", "overflowY"], function(i, property) { Velocity.CSS.setPropertyValue(dummy, property, "hidden") }), Velocity.CSS.setPropertyValue(dummy, "position", sameRatioIndicators.position), Velocity.CSS.setPropertyValue(dummy, "fontSize", sameRatioIndicators.fontSize), Velocity.CSS.setPropertyValue(dummy, "boxSizing", "content-box"), $.each(["minWidth", "maxWidth", "width", "minHeight", "maxHeight", "height"], function(i, property) { Velocity.CSS.setPropertyValue(dummy, property, measurement + "%") }), Velocity.CSS.setPropertyValue(dummy, "paddingLeft", measurement + "em"), unitRatios.percentToPxWidth = callUnitConversionData.lastPercentToPxWidth = (parseFloat(CSS.getPropertyValue(dummy, "width", null, !0)) || 1) / measurement, unitRatios.percentToPxHeight = callUnitConversionData.lastPercentToPxHeight = (parseFloat(CSS.getPropertyValue(dummy, "height", null, !0)) || 1) / measurement, unitRatios.emToPx = callUnitConversionData.lastEmToPx = (parseFloat(CSS.getPropertyValue(dummy, "paddingLeft")) || 1) / measurement, sameRatioIndicators.myParent.removeChild(dummy) 4720 } 4721 return null === callUnitConversionData.remToPx && (callUnitConversionData.remToPx = parseFloat(CSS.getPropertyValue(document.body, "fontSize")) || 16), null === callUnitConversionData.vwToPx && (callUnitConversionData.vwToPx = parseFloat(window.innerWidth) / 100, callUnitConversionData.vhToPx = parseFloat(window.innerHeight) / 100), unitRatios.remToPx = callUnitConversionData.remToPx, unitRatios.vwToPx = callUnitConversionData.vwToPx, unitRatios.vhToPx = callUnitConversionData.vhToPx, Velocity.debug >= 1 && console.log("Unit ratios: " + JSON.stringify(unitRatios), element), unitRatios 4722 } 4723 if (opts.begin && 0 === elementsIndex) try { opts.begin.call(elements, elements) } catch (error) { setTimeout(function() { throw error }, 1) } 4724 if ("scroll" === action) { 4725 var scrollPositionCurrent, scrollPositionCurrentAlternate, scrollPositionEnd, scrollDirection = /^x$/i.test(opts.axis) ? "Left" : "Top", 4726 scrollOffset = parseFloat(opts.offset) || 0; 4727 opts.container ? Type.isWrapped(opts.container) || Type.isNode(opts.container) ? (opts.container = opts.container[0] || opts.container, scrollPositionCurrent = opts.container["scroll" + scrollDirection], scrollPositionEnd = scrollPositionCurrent + $(element).position()[scrollDirection.toLowerCase()] + scrollOffset) : opts.container = null : (scrollPositionCurrent = Velocity.State.scrollAnchor[Velocity.State["scrollProperty" + scrollDirection]], scrollPositionCurrentAlternate = Velocity.State.scrollAnchor[Velocity.State["scrollProperty" + ("Left" === scrollDirection ? "Top" : "Left")]], scrollPositionEnd = $(element).offset()[scrollDirection.toLowerCase()] + scrollOffset), tweensContainer = { scroll: { rootPropertyValue: !1, startValue: scrollPositionCurrent, currentValue: scrollPositionCurrent, endValue: scrollPositionEnd, unitType: "", easing: opts.easing, scrollData: { container: opts.container, direction: scrollDirection, alternateValue: scrollPositionCurrentAlternate } }, element: element }, Velocity.debug && console.log("tweensContainer (scroll): ", tweensContainer.scroll, element) 4728 } else if ("reverse" === action) { 4729 if (!Data(element).tweensContainer) return void $.dequeue(element, opts.queue); 4730 "none" === Data(element).opts.display && (Data(element).opts.display = "auto"), "hidden" === Data(element).opts.visibility && (Data(element).opts.visibility = "visible"), Data(element).opts.loop = !1, Data(element).opts.begin = null, Data(element).opts.complete = null, options.easing || delete opts.easing, options.duration || delete opts.duration, opts = $.extend({}, Data(element).opts, opts); 4731 var lastTweensContainer = $.extend(!0, {}, Data(element).tweensContainer); 4732 for (var lastTween in lastTweensContainer) 4733 if ("element" !== lastTween) { 4734 var lastStartValue = lastTweensContainer[lastTween].startValue; 4735 lastTweensContainer[lastTween].startValue = lastTweensContainer[lastTween].currentValue = lastTweensContainer[lastTween].endValue, lastTweensContainer[lastTween].endValue = lastStartValue, Type.isEmptyObject(options) || (lastTweensContainer[lastTween].easing = opts.easing), Velocity.debug && console.log("reverse tweensContainer (" + lastTween + "): " + JSON.stringify(lastTweensContainer[lastTween]), element) 4736 } 4737 tweensContainer = lastTweensContainer 4738 } else if ("start" === action) { 4739 var lastTweensContainer; 4740 Data(element).tweensContainer && Data(element).isAnimating === !0 && (lastTweensContainer = Data(element).tweensContainer), $.each(propertiesMap, function(property, value) { 4741 if (RegExp("^" + CSS.Lists.colors.join("$|^") + "$").test(property)) { 4742 var valueData = parsePropertyValue(value, !0), 4743 endValue = valueData[0], 4744 easing = valueData[1], 4745 startValue = valueData[2]; 4746 if (CSS.RegEx.isHex.test(endValue)) { 4747 for (var colorComponents = ["Red", "Green", "Blue"], endValueRGB = CSS.Values.hexToRgb(endValue), startValueRGB = startValue ? CSS.Values.hexToRgb(startValue) : undefined, i = 0; i < colorComponents.length; i++) { 4748 var dataArray = [endValueRGB[i]]; 4749 easing && dataArray.push(easing), startValueRGB !== undefined && dataArray.push(startValueRGB[i]), propertiesMap[property + colorComponents[i]] = dataArray 4750 } 4751 delete propertiesMap[property] 4752 } 4753 } 4754 }); 4755 for (var property in propertiesMap) { 4756 var valueData = parsePropertyValue(propertiesMap[property]), 4757 endValue = valueData[0], 4758 easing = valueData[1], 4759 startValue = valueData[2]; 4760 property = CSS.Names.camelCase(property); 4761 var rootProperty = CSS.Hooks.getRoot(property), 4762 rootPropertyValue = !1; 4763 if (Data(element).isSVG || "tween" === rootProperty || CSS.Names.prefixCheck(rootProperty)[1] !== !1 || CSS.Normalizations.registered[rootProperty] !== undefined) { 4764 (opts.display !== undefined && null !== opts.display && "none" !== opts.display || opts.visibility !== undefined && "hidden" !== opts.visibility) && /opacity|filter/.test(property) && !startValue && 0 !== endValue && (startValue = 0), opts._cacheValues && lastTweensContainer && lastTweensContainer[property] ? (startValue === undefined && (startValue = lastTweensContainer[property].endValue + lastTweensContainer[property].unitType), rootPropertyValue = Data(element).rootPropertyValueCache[rootProperty]) : CSS.Hooks.registered[property] ? startValue === undefined ? (rootPropertyValue = CSS.getPropertyValue(element, rootProperty), startValue = CSS.getPropertyValue(element, property, rootPropertyValue)) : rootPropertyValue = CSS.Hooks.templates[rootProperty][1] : startValue === undefined && (startValue = CSS.getPropertyValue(element, property)); 4765 var separatedValue, endValueUnitType, startValueUnitType, operator = !1; 4766 if (separatedValue = separateValue(property, startValue), startValue = separatedValue[0], startValueUnitType = separatedValue[1], separatedValue = separateValue(property, endValue), endValue = separatedValue[0].replace(/^([+-\/*])=/, function(match, subMatch) { return operator = subMatch, "" }), endValueUnitType = separatedValue[1], startValue = parseFloat(startValue) || 0, endValue = parseFloat(endValue) || 0, "%" === endValueUnitType && (/^(fontSize|lineHeight)$/.test(property) ? (endValue /= 100, endValueUnitType = "em") : /^scale/.test(property) ? (endValue /= 100, endValueUnitType = "") : /(Red|Green|Blue)$/i.test(property) && (endValue = endValue / 100 * 255, endValueUnitType = "")), /[\/*]/.test(operator)) endValueUnitType = startValueUnitType; 4767 else if (startValueUnitType !== endValueUnitType && 0 !== startValue) 4768 if (0 === endValue) endValueUnitType = startValueUnitType; 4769 else { 4770 elementUnitConversionData = elementUnitConversionData || calculateUnitRatios(); 4771 var axis = /margin|padding|left|right|width|text|word|letter/i.test(property) || /X$/.test(property) || "x" === property ? "x" : "y"; 4772 switch (startValueUnitType) { 4773 case "%": 4774 startValue *= "x" === axis ? elementUnitConversionData.percentToPxWidth : elementUnitConversionData.percentToPxHeight; 4775 break; 4776 case "px": 4777 break; 4778 default: 4779 startValue *= elementUnitConversionData[startValueUnitType + "ToPx"] 4780 } 4781 switch (endValueUnitType) { 4782 case "%": 4783 startValue *= 1 / ("x" === axis ? elementUnitConversionData.percentToPxWidth : elementUnitConversionData.percentToPxHeight); 4784 break; 4785 case "px": 4786 break; 4787 default: 4788 startValue *= 1 / elementUnitConversionData[endValueUnitType + "ToPx"] 4789 } 4790 } 4791 switch (operator) { 4792 case "+": 4793 endValue = startValue + endValue; 4794 break; 4795 case "-": 4796 endValue = startValue - endValue; 4797 break; 4798 case "*": 4799 endValue *= startValue; 4800 break; 4801 case "/": 4802 endValue = startValue / endValue 4803 } 4804 tweensContainer[property] = { rootPropertyValue: rootPropertyValue, startValue: startValue, currentValue: startValue, endValue: endValue, unitType: endValueUnitType, easing: easing }, Velocity.debug && console.log("tweensContainer (" + property + "): " + JSON.stringify(tweensContainer[property]), element) 4805 } else Velocity.debug && console.log("Skipping [" + rootProperty + "] due to a lack of browser support.") 4806 } 4807 tweensContainer.element = element 4808 } 4809 tweensContainer.element && (CSS.Values.addClass(element, "velocity-animating"), call.push(tweensContainer), "" === opts.queue && (Data(element).tweensContainer = tweensContainer, Data(element).opts = opts), Data(element).isAnimating = !0, elementsIndex === elementsLength - 1 ? (Velocity.State.calls.push([call, elements, opts, null, promiseData.resolver]), Velocity.State.isTicking === !1 && (Velocity.State.isTicking = !0, tick())) : elementsIndex++) 4810 } 4811 var elementUnitConversionData, element = this, 4812 opts = $.extend({}, Velocity.defaults, options), 4813 tweensContainer = {}; 4814 switch (Data(element) === undefined && Velocity.init(element), parseFloat(opts.delay) && opts.queue !== !1 && $.queue(element, opts.queue, function(next) { Velocity.velocityQueueEntryFlag = !0, Data(element).delayTimer = { setTimeout: setTimeout(next, parseFloat(opts.delay)), next: next } }), opts.duration.toString().toLowerCase()) { 4815 case "fast": 4816 opts.duration = 200; 4817 break; 4818 case "normal": 4819 opts.duration = DURATION_DEFAULT; 4820 break; 4821 case "slow": 4822 opts.duration = 600; 4823 break; 4824 default: 4825 opts.duration = parseFloat(opts.duration) || 1 4826 } 4827 Velocity.mock !== !1 && (Velocity.mock === !0 ? opts.duration = opts.delay = 1 : (opts.duration *= parseFloat(Velocity.mock) || 1, opts.delay *= parseFloat(Velocity.mock) || 1)), opts.easing = getEasing(opts.easing, opts.duration), opts.begin && !Type.isFunction(opts.begin) && (opts.begin = null), opts.progress && !Type.isFunction(opts.progress) && (opts.progress = null), opts.complete && !Type.isFunction(opts.complete) && (opts.complete = null), opts.display !== undefined && null !== opts.display && (opts.display = opts.display.toString().toLowerCase(), "auto" === opts.display && (opts.display = Velocity.CSS.Values.getDisplayType(element))), opts.visibility !== undefined && null !== opts.visibility && (opts.visibility = opts.visibility.toString().toLowerCase()), opts.mobileHA = opts.mobileHA && Velocity.State.isMobile && !Velocity.State.isGingerbread, opts.queue === !1 ? opts.delay ? setTimeout(buildQueue, opts.delay) : buildQueue() : $.queue(element, opts.queue, function(next, clearQueue) { return clearQueue === !0 ? (promiseData.promise && promiseData.resolver(elements), !0) : (Velocity.velocityQueueEntryFlag = !0, void buildQueue(next)) }), "" !== opts.queue && "fx" !== opts.queue || "inprogress" === $.queue(element)[0] || $.dequeue(element) 4828 } 4829 var isUtility, elementsWrapped, argumentIndex, elements, propertiesMap, options, syntacticSugar = arguments[0] && (arguments[0].p || $.isPlainObject(arguments[0].properties) && !arguments[0].properties.names || Type.isString(arguments[0].properties)); 4830 if (Type.isWrapped(this) ? (isUtility = !1, argumentIndex = 0, elements = this, elementsWrapped = this) : (isUtility = !0, argumentIndex = 1, elements = syntacticSugar ? arguments[0].elements || arguments[0].e : arguments[0]), elements = sanitizeElements(elements)) { 4831 syntacticSugar ? (propertiesMap = arguments[0].properties || arguments[0].p, options = arguments[0].options || arguments[0].o) : (propertiesMap = arguments[argumentIndex], options = arguments[argumentIndex + 1]); 4832 var elementsLength = elements.length, 4833 elementsIndex = 0; 4834 if (!/^(stop|finish|finishAll)$/i.test(propertiesMap) && !$.isPlainObject(options)) { 4835 var startingArgumentPosition = argumentIndex + 1; 4836 options = {}; 4837 for (var i = startingArgumentPosition; i < arguments.length; i++) Type.isArray(arguments[i]) || !/^(fast|normal|slow)$/i.test(arguments[i]) && !/^\d/.test(arguments[i]) ? Type.isString(arguments[i]) || Type.isArray(arguments[i]) ? options.easing = arguments[i] : Type.isFunction(arguments[i]) && (options.complete = arguments[i]) : options.duration = arguments[i] 4838 } 4839 var promiseData = { promise: null, resolver: null, rejecter: null }; 4840 isUtility && Velocity.Promise && (promiseData.promise = new Velocity.Promise(function(resolve, reject) { promiseData.resolver = resolve, promiseData.rejecter = reject })); 4841 var action; 4842 switch (propertiesMap) { 4843 case "scroll": 4844 action = "scroll"; 4845 break; 4846 case "reverse": 4847 action = "reverse"; 4848 break; 4849 case "finish": 4850 case "finishAll": 4851 case "stop": 4852 $.each(elements, function(i, element) { Data(element) && Data(element).delayTimer && (clearTimeout(Data(element).delayTimer.setTimeout), Data(element).delayTimer.next && Data(element).delayTimer.next(), delete Data(element).delayTimer), "finishAll" !== propertiesMap || options !== !0 && !Type.isString(options) || ($.each($.queue(element, Type.isString(options) ? options : ""), function(_, item) { Type.isFunction(item) && item() }), $.queue(element, Type.isString(options) ? options : "", [])) }); 4853 var callsToStop = []; 4854 return $.each(Velocity.State.calls, function(i, activeCall) { activeCall && $.each(activeCall[1], function(k, activeElement) { var queueName = options === undefined ? "" : options; return queueName !== !0 && activeCall[2].queue !== queueName && (options !== undefined || activeCall[2].queue !== !1) || void $.each(elements, function(l, element) { element === activeElement && ((options === !0 || Type.isString(options)) && ($.each($.queue(element, Type.isString(options) ? options : ""), function(_, item) { Type.isFunction(item) && item(null, !0) }), $.queue(element, Type.isString(options) ? options : "", [])), "stop" === propertiesMap ? (Data(element) && Data(element).tweensContainer && queueName !== !1 && $.each(Data(element).tweensContainer, function(m, activeTween) { activeTween.endValue = activeTween.currentValue }), callsToStop.push(i)) : "finish" !== propertiesMap && "finishAll" !== propertiesMap || (activeCall[2].duration = 1)) }) }) }), "stop" === propertiesMap && ($.each(callsToStop, function(i, j) { completeCall(j, !0) }), promiseData.promise && promiseData.resolver(elements)), getChain(); 4855 default: 4856 if (!$.isPlainObject(propertiesMap) || Type.isEmptyObject(propertiesMap)) { 4857 if (Type.isString(propertiesMap) && Velocity.Redirects[propertiesMap]) { 4858 var opts = $.extend({}, options), 4859 durationOriginal = opts.duration, 4860 delayOriginal = opts.delay || 0; 4861 return opts.backwards === !0 && (elements = $.extend(!0, [], elements).reverse()), $.each(elements, function(elementIndex, element) { parseFloat(opts.stagger) ? opts.delay = delayOriginal + parseFloat(opts.stagger) * elementIndex : Type.isFunction(opts.stagger) && (opts.delay = delayOriginal + opts.stagger.call(element, elementIndex, elementsLength)), opts.drag && (opts.duration = parseFloat(durationOriginal) || (/^(callout|transition)/.test(propertiesMap) ? 1e3 : DURATION_DEFAULT), opts.duration = Math.max(opts.duration * (opts.backwards ? 1 - elementIndex / elementsLength : (elementIndex + 1) / elementsLength), .75 * opts.duration, 200)), Velocity.Redirects[propertiesMap].call(element, element, opts || {}, elementIndex, elementsLength, elements, promiseData.promise ? promiseData : undefined) }), getChain() 4862 } 4863 var abortError = "Velocity: First argument (" + propertiesMap + ") was not a property map, a known action, or a registered redirect. Aborting."; 4864 return promiseData.promise ? promiseData.rejecter(new Error(abortError)) : console.log(abortError), getChain() 4865 } 4866 action = "start" 4867 } 4868 var callUnitConversionData = { lastParent: null, lastPosition: null, lastFontSize: null, lastPercentToPxWidth: null, lastPercentToPxHeight: null, lastEmToPx: null, remToPx: null, vwToPx: null, vhToPx: null }, 4869 call = []; 4870 $.each(elements, function(i, element) { Type.isNode(element) && processElement.call(element) }); 4871 var reverseCallsCount, opts = $.extend({}, Velocity.defaults, options); 4872 if (opts.loop = parseInt(opts.loop), reverseCallsCount = 2 * opts.loop - 1, opts.loop) 4873 for (var x = 0; x < reverseCallsCount; x++) { 4874 var reverseOptions = { delay: opts.delay, progress: opts.progress }; 4875 x === reverseCallsCount - 1 && (reverseOptions.display = opts.display, reverseOptions.visibility = opts.visibility, reverseOptions.complete = opts.complete), animate(elements, "reverse", reverseOptions) 4876 } 4877 return getChain() 4878 } 4879 }; 4880 Velocity = $.extend(animate, Velocity), Velocity.animate = animate; 4881 var ticker = window.requestAnimationFrame || rAFShim; 4882 return Velocity.State.isMobile || document.hidden === undefined || document.addEventListener("visibilitychange", function() { document.hidden ? (ticker = function(callback) { return setTimeout(function() { callback(!0) }, 16) }, tick()) : ticker = window.requestAnimationFrame || rAFShim }), global.Velocity = Velocity, global !== window && (global.fn.velocity = animate, global.fn.velocity.defaults = Velocity.defaults), $.each(["Down", "Up"], function(i, direction) { 4883 Velocity.Redirects["slide" + direction] = function(element, options, elementsIndex, elementsSize, elements, promiseData) { 4884 var opts = $.extend({}, options), 4885 begin = opts.begin, 4886 complete = opts.complete, 4887 computedValues = { height: "", marginTop: "", marginBottom: "", paddingTop: "", paddingBottom: "" }, 4888 inlineValues = {}; 4889 opts.display === undefined && (opts.display = "Down" === direction ? "inline" === Velocity.CSS.Values.getDisplayType(element) ? "inline-block" : "block" : "none"), opts.begin = function() { 4890 begin && begin.call(elements, elements); 4891 for (var property in computedValues) { 4892 inlineValues[property] = element.style[property]; 4893 var propertyValue = Velocity.CSS.getPropertyValue(element, property); 4894 computedValues[property] = "Down" === direction ? [propertyValue, 0] : [0, propertyValue] 4895 } 4896 inlineValues.overflow = element.style.overflow, element.style.overflow = "hidden" 4897 }, opts.complete = function() { 4898 for (var property in inlineValues) element.style[property] = inlineValues[property]; 4899 complete && complete.call(elements, elements), promiseData && promiseData.resolver(elements) 4900 }, Velocity(element, computedValues, opts) 4901 } 4902 }), $.each(["In", "Out"], function(i, direction) { 4903 Velocity.Redirects["fade" + direction] = function(element, options, elementsIndex, elementsSize, elements, promiseData) { 4904 var opts = $.extend({}, options), 4905 propertiesMap = { opacity: "In" === direction ? 1 : 0 },
4906 originalComplete = opts.complete; 4907 elementsIndex !== elementsSize - 1 ? opts.complete = opts.begin = null : opts.complete = function() { originalComplete && originalComplete.call(elements, elements), promiseData && promiseData.resolver(elements) }, opts.display === undefined && (opts.display = "In" === direction ? "auto" : "none"), Velocity(this, propertiesMap, opts) 4908 } 4909 }), Velocity 4910 }(window.jQuery || window.Zepto || window, window, document) 4911 }), 4912 function(factory) { "function" == typeof require && "object" == typeof exports ? module.exports = factory() : "function" == typeof define && define.amd ? define(["velocity"], factory) : factory() }(function() { 4913 return function(global, window, document, undefined) { 4914 function greaterSemver(primary, secondary) { 4915 var versionInts = []; 4916 return !(!primary || !secondary) && ($.each([primary, secondary], function(i, versionObject) { 4917 var versionIntsComponents = []; 4918 $.each(versionObject, function(component, value) { 4919 for (; value.toString().length < 5;) value = "0" + value; 4920 versionIntsComponents.push(value) 4921 }), versionInts.push(versionIntsComponents.join("")) 4922 }), parseFloat(versionInts[0]) > parseFloat(versionInts[1])) 4923 } 4924 if (!global.Velocity || !global.Velocity.Utilities) return void(window.console && console.log("Velocity UI Pack: Velocity must be loaded first. Aborting.")); 4925 var Velocity = global.Velocity, 4926 $ = Velocity.Utilities, 4927 velocityVersion = Velocity.version, 4928 requiredVersion = { major: 1, minor: 1, patch: 0 }; 4929 if (greaterSemver(requiredVersion, velocityVersion)) { var abortError = "Velocity UI Pack: You need to update Velocity (jquery.velocity.js) to a newer version. Visit http://github.com/julianshapiro/velocity."; throw alert(abortError), new Error(abortError) } 4930 Velocity.RegisterEffect = Velocity.RegisterUI = function(effectName, properties) { 4931 function animateParentHeight(elements, direction, totalDuration, stagger) { 4932 var parentNode, totalHeightDelta = 0; 4933 $.each(elements.nodeType ? [elements] : elements, function(i, element) { stagger && (totalDuration += i * stagger), parentNode = element.parentNode, $.each(["height", "paddingTop", "paddingBottom", "marginTop", "marginBottom"], function(i, property) { totalHeightDelta += parseFloat(Velocity.CSS.getPropertyValue(element, property)) }) }), Velocity.animate(parentNode, { height: ("In" === direction ? "+" : "-") + "=" + totalHeightDelta }, { queue: !1, easing: "ease-in-out", duration: totalDuration * ("In" === direction ? .6 : 1) }) 4934 } 4935 return Velocity.Redirects[effectName] = function(element, redirectOptions, elementsIndex, elementsSize, elements, promiseData) { 4936 function injectFinalCallbacks() { redirectOptions.display !== undefined && "none" !== redirectOptions.display || !/Out$/.test(effectName) || $.each(elements.nodeType ? [elements] : elements, function(i, element) { Velocity.CSS.setPropertyValue(element, "display", "none") }), redirectOptions.complete && redirectOptions.complete.call(elements, elements), promiseData && promiseData.resolver(elements || element) } 4937 var finalElement = elementsIndex === elementsSize - 1; 4938 "function" == typeof properties.defaultDuration ? properties.defaultDuration = properties.defaultDuration.call(elements, elements) : properties.defaultDuration = parseFloat(properties.defaultDuration); 4939 for (var callIndex = 0; callIndex < properties.calls.length; callIndex++) { 4940 var call = properties.calls[callIndex], 4941 propertyMap = call[0], 4942 redirectDuration = redirectOptions.duration || properties.defaultDuration || 1e3, 4943 durationPercentage = call[1], 4944 callOptions = call[2] || {}, 4945 opts = {}; 4946 if (opts.duration = redirectDuration * (durationPercentage || 1), opts.queue = redirectOptions.queue || "", opts.easing = callOptions.easing || "ease", opts.delay
vendor: 6,427 bytes, lines 4946-5060
4946= parseFloat(callOptions.delay) || 0, opts._cacheValues = callOptions._cacheValues || !0, 0 === callIndex) { 4947 if (opts.delay += parseFloat(redirectOptions.delay) || 0, 0 === elementsIndex && (opts.begin = function() { 4948 redirectOptions.begin && redirectOptions.begin.call(elements, elements); 4949 var direction = effectName.match(/(In|Out)$/); 4950 direction && "In" === direction[0] && propertyMap.opacity !== undefined && $.each(elements.nodeType ? [elements] : elements, function(i, element) { Velocity.CSS.setPropertyValue(element, "opacity", 0) }), redirectOptions.animateParentHeight && direction && animateParentHeight(elements, direction[0], redirectDuration + opts.delay, redirectOptions.stagger) 4951 }), null !== redirectOptions.display) 4952 if (redirectOptions.display !== undefined && "none" !== redirectOptions.display) opts.display = redirectOptions.display; 4953 else if (/In$/.test(effectName)) { 4954 var defaultDisplay = Velocity.CSS.Values.getDisplayType(element); 4955 opts.display = "inline" === defaultDisplay ? "inline-block" : defaultDisplay 4956 } 4957 redirectOptions.visibility && "hidden" !== redirectOptions.visibility && (opts.visibility = redirectOptions.visibility) 4958 } 4959 callIndex === properties.calls.length - 1 && (opts.complete = function() { 4960 if (properties.reset) { 4961 for (var resetProperty in properties.reset) { 4962 var resetValue = properties.reset[resetProperty]; 4963 Velocity.CSS.Hooks.registered[resetProperty] !== undefined || "string" != typeof resetValue && "number" != typeof resetValue || (properties.reset[resetProperty] = [properties.reset[resetProperty], properties.reset[resetProperty]]) 4964 } 4965 var resetOptions = { duration: 0, queue: !1 }; 4966 finalElement && (resetOptions.complete = injectFinalCallbacks), Velocity.animate(element, properties.reset, resetOptions) 4967 } else finalElement && injectFinalCallbacks() 4968 }, "hidden" === redirectOptions.visibility && (opts.visibility = redirectOptions.visibility)), Velocity.animate(element, propertyMap, opts) 4969 } 4970 }, Velocity 4971 }, Velocity.RegisterEffect.packagedEffects = { 4972 "callout.bounce": { 4973 defaultDuration: 550, 4974 calls: [ 4975 [{ translateY: -30 }, .25], 4976 [{ translateY: 0 }, .125], 4977 [{ translateY: -15 }, .125], 4978 [{ translateY: 0 }, .25] 4979 ] 4980 }, 4981 "callout.shake": { 4982 defaultDuration: 800, 4983 calls: [ 4984 [{ translateX: -11 }, .125], 4985 [{ translateX: 11 }, .125], 4986 [{ translateX: -11 }, .125], 4987 [{ translateX: 11 }, .125], 4988 [{ translateX: -11 }, .125], 4989 [{ translateX: 11 }, .125], 4990 [{ translateX: -11 }, .125], 4991 [{ translateX: 0 }, .125] 4992 ] 4993 }, 4994 "callout.flash": { 4995 defaultDuration: 1100, 4996 calls: [ 4997 [{ opacity: [0, "easeInOutQuad", 1] }, .25], 4998 [{ opacity: [1, "easeInOutQuad"] }, .25], 4999 [{ opacity: [0, "easeInOutQuad"] }, .25], 5000 [{ opacity: [1, "easeInOutQuad"] }, .25] 5001 ] 5002 }, 5003 "callout.pulse": { 5004 defaultDuration: 825, 5005 calls: [ 5006 [{ scaleX: 1.1, scaleY: 1.1 }, .5, { easing: "easeInExpo" }], 5007 [{ scaleX: 1, scaleY: 1 }, .5] 5008 ] 5009 }, 5010 "callout.swing": { 5011 defaultDuration: 950, 5012 calls: [ 5013 [{ rotateZ: 15 }, .2], 5014 [{ rotateZ: -10 }, .2], 5015 [{ rotateZ: 5 }, .2], 5016 [{ rotateZ: -5 }, .2], 5017 [{ rotateZ: 0 }, .2] 5018 ] 5019 }, 5020 "callout.tada": { 5021 defaultDuration: 1e3, 5022 calls: [ 5023 [{ scaleX: .9, scaleY: .9, rotateZ: -3 }, .1], 5024 [{ scaleX: 1.1, scaleY: 1.1, rotateZ: 3 }, .1], 5025 [{ scaleX: 1.1, scaleY: 1.1, rotateZ: -3 }, .1], 5026 ["reverse", .125], 5027 ["reverse", .125], 5028 ["reverse", .125], 5029 ["reverse", .125], 5030 ["reverse", .125], 5031 [{ scaleX: 1, scaleY: 1, rotateZ: 0 }, .2] 5032 ] 5033 }, 5034 "transition.fadeIn": { 5035 defaultDuration: 500, 5036 calls: [ 5037 [{ opacity: [1, 0] }] 5038 ] 5039 }, 5040 "transition.fadeOut": { 5041 defaultDuration: 500, 5042 calls: [ 5043 [{ opacity: [0, 1] }] 5044 ] 5045 }, 5046 "transition.flipXIn": { 5047 defaultDuration: 700, 5048 calls: [ 5049 [{ opacity: [1, 0], transformPerspective: [800, 800], rotateY: [0, -55] }] 5050 ], 5051 reset: { transformPerspective: 0 } 5052 }, 5053 "transition.flipXOut": { 5054 defaultDuration: 700, 5055 calls: [ 5056 [{ opacity: [0, 1], transformPerspective: [800, 800], rotateY: 55 }] 5057 ], 5058 reset: { transformPerspective: 0, rotateY: 0 } 5059 }, 5060 "transition.flipYIn": {
vendor: 4,257 bytes, lines 5061-5142
5061 defaultDuration: 800, 5062 calls: [ 5063 [{ opacity: [1, 0], transformPerspective: [800, 800], rotateX: [0, -45] }] 5064 ], 5065 reset: { transformPerspective: 0 } 5066 }, 5067 "transition.flipYOut": { 5068 defaultDuration: 800, 5069 calls: [ 5070 [{ opacity: [0, 1], transformPerspective: [800, 800], rotateX: 25 }] 5071 ], 5072 reset: { transformPerspective: 0, rotateX: 0 } 5073 }, 5074 "transition.flipBounceXIn": { 5075 defaultDuration: 900, 5076 calls: [ 5077 [{ opacity: [.725, 0], transformPerspective: [400, 400], rotateY: [-10, 90] }, .5], 5078 [{ opacity: .8, rotateY: 10 }, .25], 5079 [{ opacity: 1, rotateY: 0 }, .25] 5080 ], 5081 reset: { transformPerspective: 0 } 5082 }, 5083 "transition.flipBounceXOut": { 5084 defaultDuration: 800, 5085 calls: [ 5086 [{ opacity: [.9, 1], transformPerspective: [400, 400], rotateY: -10 }, .5], 5087 [{ opacity: 0, rotateY: 90 }, .5] 5088 ], 5089 reset: { transformPerspective: 0, rotateY: 0 } 5090 }, 5091 "transition.flipBounceYIn": { 5092 defaultDuration: 850, 5093 calls: [ 5094 [{ opacity: [.725, 0], transformPerspective: [400, 400], rotateX: [-10, 90] }, .5], 5095 [{ opacity: .8, rotateX: 10 }, .25], 5096 [{ opacity: 1, rotateX: 0 }, .25] 5097 ], 5098 reset: { transformPerspective: 0 } 5099 }, 5100 "transition.flipBounceYOut": { 5101 defaultDuration: 800, 5102 calls: [ 5103 [{ opacity: [.9, 1], transformPerspective: [400, 400], rotateX: -15 }, .5], 5104 [{ opacity: 0, rotateX: 90 }, .5] 5105 ], 5106 reset: { transformPerspective: 0, rotateX: 0 } 5107 }, 5108 "transition.swoopIn": { 5109 defaultDuration: 850, 5110 calls: [ 5111 [{ opacity: [1, 0], transformOriginX: ["100%", "50%"], transformOriginY: ["100%", "100%"], scaleX: [1, 0], scaleY: [1, 0], translateX: [0, -700], translateZ: 0 }] 5112 ], 5113 reset: { transformOriginX: "50%", transformOriginY: "50%" } 5114 }, 5115 "transition.swoopOut": { 5116 defaultDuration: 850, 5117 calls: [ 5118 [{ opacity: [0, 1], transformOriginX: ["50%", "100%"], transformOriginY: ["100%", "100%"], scaleX: 0, scaleY: 0, translateX: -700, translateZ: 0 }] 5119 ], 5120 reset: { transformOriginX: "50%", transformOriginY: "50%", scaleX: 1, scaleY: 1, translateX: 0 } 5121 }, 5122 "transition.whirlIn": { 5123 defaultDuration: 850, 5124 calls: [ 5125 [{ opacity: [1, 0], transformOriginX: ["50%", "50%"], transformOriginY: ["50%", "50%"], scaleX: [1, 0], scaleY: [1, 0], rotateY: [0, 160] }, 1, { easing: "easeInOutSine" }] 5126 ] 5127 }, 5128 "transition.whirlOut": { 5129 defaultDuration: 750, 5130 calls: [ 5131 [{ opacity: [0, "easeInOutQuint", 1], transformOriginX: ["50%", "50%"], transformOriginY: ["50%", "50%"], scaleX: 0, scaleY: 0, rotateY: 160 }, 1, { easing: "swing" }] 5132 ], 5133 reset: { scaleX: 1, scaleY: 1, rotateY: 0 } 5134 }, 5135 "transition.shrinkIn": { 5136 defaultDuration: 750, 5137 calls: [ 5138 [{ opacity: [1, 0], transformOriginX: ["50%", "50%"], transformOriginY: ["50%", "50%"], scaleX: [1, 1.5], scaleY: [1, 1.5], translateZ: 0 }] 5139 ] 5140 }, 5141 "transition.shrinkOut": { 5142 defaultDuration: 600,
vendor: 4,524 bytes, lines 5143-5241
5143 calls: [ 5144 [{ opacity: [0, 1], transformOriginX: ["50%", "50%"], transformOriginY: ["50%", "50%"], scaleX: 1.3, scaleY: 1.3, translateZ: 0 }] 5145 ], 5146 reset: { scaleX: 1, scaleY: 1 } 5147 }, 5148 "transition.expandIn": { 5149 defaultDuration: 700, 5150 calls: [ 5151 [{ opacity: [1, 0], transformOriginX: ["50%", "50%"], transformOriginY: ["50%", "50%"], scaleX: [1, .625], scaleY: [1, .625], translateZ: 0 }] 5152 ] 5153 }, 5154 "transition.expandOut": { 5155 defaultDuration: 700, 5156 calls: [ 5157 [{ opacity: [0, 1], transformOriginX: ["50%", "50%"], transformOriginY: ["50%", "50%"], scaleX: .5, scaleY: .5, translateZ: 0 }] 5158 ], 5159 reset: { scaleX: 1, scaleY: 1 } 5160 }, 5161 "transition.bounceIn": { 5162 defaultDuration: 800, 5163 calls: [ 5164 [{ opacity: [1, 0], scaleX: [1.05, .3], scaleY: [1.05, .3] }, .4], 5165 [{ scaleX: .9, scaleY: .9, translateZ: 0 }, .2], 5166 [{ scaleX: 1, scaleY: 1 }, .5] 5167 ] 5168 }, 5169 "transition.bounceOut": { 5170 defaultDuration: 800, 5171 calls: [ 5172 [{ scaleX: .95, scaleY: .95 }, .35], 5173 [{ scaleX: 1.1, scaleY: 1.1, translateZ: 0 }, .35], 5174 [{ opacity: [0, 1], scaleX: .3, scaleY: .3 }, .3] 5175 ], 5176 reset: { scaleX: 1, scaleY: 1 } 5177 }, 5178 "transition.bounceUpIn": { 5179 defaultDuration: 800, 5180 calls: [ 5181 [{ opacity: [1, 0], translateY: [-30, 1e3] }, .6, { easing: "easeOutCirc" }], 5182 [{ translateY: 10 }, .2], 5183 [{ translateY: 0 }, .2] 5184 ] 5185 }, 5186 "transition.bounceUpOut": { 5187 defaultDuration: 1e3, 5188 calls: [ 5189 [{ translateY: 20 }, .2], 5190 [{ opacity: [0, "easeInCirc", 1], translateY: -1e3 }, .8] 5191 ], 5192 reset: { translateY: 0 } 5193 }, 5194 "transition.bounceDownIn": { 5195 defaultDuration: 800, 5196 calls: [ 5197 [{ opacity: [1, 0], translateY: [30, -1e3] }, .6, { easing: "easeOutCirc" }], 5198 [{ translateY: -10 }, .2], 5199 [{ translateY: 0 }, .2] 5200 ] 5201 }, 5202 "transition.bounceDownOut": { 5203 defaultDuration: 1e3, 5204 calls: [ 5205 [{ translateY: -20 }, .2], 5206 [{ opacity: [0, "easeInCirc", 1], translateY: 1e3 }, .8] 5207 ], 5208 reset: { translateY: 0 } 5209 }, 5210 "transition.bounceLeftIn": { 5211 defaultDuration: 750, 5212 calls: [ 5213 [{ opacity: [1, 0], translateX: [30, -1250] }, .6, { easing: "easeOutCirc" }], 5214 [{ translateX: -10 }, .2], 5215 [{ translateX: 0 }, .2] 5216 ] 5217 }, 5218 "transition.bounceLeftOut": { 5219 defaultDuration: 750, 5220 calls: [ 5221 [{ translateX: 30 }, .2], 5222 [{ opacity: [0, "easeInCirc", 1], translateX: -1250 }, .8] 5223 ], 5224 reset: { translateX: 0 } 5225 }, 5226 "transition.bounceRightIn": { 5227 defaultDuration: 750, 5228 calls: [ 5229 [{ opacity: [1, 0], translateX: [-30, 1250] }, .6, { easing: "easeOutCirc" }], 5230 [{ translateX: 10 }, .2], 5231 [{ translateX: 0 }, .2] 5232 ] 5233 }, 5234 "transition.bounceRightOut": { 5235 defaultDuration: 750, 5236 calls: [ 5237 [{ translateX: -30 }, .2], 5238 [{ opacity: [0, "easeInCirc", 1], translateX: 1250 }, .8] 5239 ], 5240 reset: { translateX: 0 } 5241 },
5242 "transition.slideUpIn": { 5243 defaultDuration: 900, 5244 calls: [ 5245 [{ opacity: [1, 0], translateY: [0, 20], translateZ: 0 }] 5246 ] 5247 }, 5248 "transition.slideUpOut": { 5249 defaultDuration: 900, 5250 calls: [ 5251 [{ opacity: [0, 1], translateY: -20, translateZ: 0 }] 5252 ], 5253 reset: { translateY: 0 } 5254 }, 5255 "transition.slideDownIn": { 5256 defaultDuration: 900, 5257 calls: [ 5258 [{ opacity: [1, 0], translateY: [0, -20], translateZ: 0 }] 5259 ] 5260 }, 5261 "transition.slideDownOut": { 5262 defaultDuration: 900, 5263 calls: [ 5264 [{ opacity: [0, 1], translateY: 20, translateZ: 0 }] 5265 ], 5266 reset: { translateY: 0 } 5267 }, 5268 "transition.slideLeftIn": { 5269 defaultDuration: 1e3, 5270 calls: [ 5271 [{ opacity: [1, 0], translateX: [0, -20], translateZ: 0 }] 5272 ] 5273 }, 5274 "transition.slideLeftOut": { 5275 defaultDuration: 1050, 5276 calls: [ 5277 [{ opacity: [0, 1], translateX: -20, translateZ: 0 }] 5278 ], 5279 reset: { translateX: 0 } 5280 }, 5281 "transition.slideRightIn": { 5282 defaultDuration: 1e3, 5283 calls: [ 5284 [{ opacity: [1, 0], translateX: [0, 20], translateZ: 0 }] 5285 ] 5286 }, 5287 "transition.slideRightOut": { 5288 defaultDuration: 1050, 5289 calls: [ 5290 [{ opacity: [0, 1], translateX: 20, translateZ: 0 }] 5291 ], 5292 reset: { translateX: 0 } 5293 }, 5294 "transition.slideUpBigIn": { 5295 defaultDuration: 850, 5296 calls: [ 5297 [{ opacity: [1, 0], translateY: [0, 75], translateZ: 0 }] 5298 ] 5299 }, 5300 "transition.slideUpBigOut": { 5301 defaultDuration: 800, 5302 calls: [ 5303 [{ opacity: [0, 1], translateY: -75, translateZ: 0 }] 5304 ], 5305 reset: { translateY: 0 } 5306 }, 5307 "transition.slideDownBigIn": { 5308 defaultDuration: 850, 5309 calls: [ 5310 [{ opacity: [1, 0], translateY: [0, -75], translateZ: 0 }] 5311 ] 5312 }, 5313 "transition.slideDownBigOut": { 5314 defaultDuration: 800, 5315 calls: [ 5316 [{ opacity: [0, 1], translateY: 75, translateZ: 0 }] 5317 ], 5318 reset: { translateY: 0 } 5319 }, 5320 "transition.slideLeftBigIn": { 5321 defaultDuration: 800, 5322 calls: [ 5323 [{ opacity: [1, 0], translateX: [0, -75], translateZ: 0 }] 5324 ] 5325 }, 5326 "transition.slideLeftBigOut": { 5327 defaultDuration: 750, 5328 calls: [ 5329 [{ opacity: [0, 1], translateX: -75, translateZ: 0 }] 5330 ], 5331 reset: { translateX: 0 } 5332 }, 5333 "transition.slideRightBigIn": { 5334 defaultDuration: 800, 5335 calls: [ 5336 [{ opacity: [1, 0], translateX: [0, 75], translateZ: 0 }] 5337 ] 5338 }, 5339 "transition.slideRightBigOut": { 5340 defaultDuration: 750, 5341 calls: [ 5342 [{ opacity: [0, 1], translateX: 75, translateZ: 0 }] 5343 ], 5344 reset: { translateX: 0 } 5345 }, 5346 "transition.perspectiveUpIn": {
5347 defaultDuration: 800, 5348 calls: [ 5349 [{ opacity: [1, 0], transformPerspective: [800, 800], transformOriginX: [0, 0], transformOriginY: ["100%", "100%"], rotateX: [0, -180] }] 5350 ], 5351 reset: { transformPerspective: 0, transformOriginX: "50%", transformOriginY: "50%" } 5352 }, 5353 "transition.perspectiveUpOut": { 5354 defaultDuration: 850, 5355 calls: [ 5356 [{ opacity: [0, 1], transformPerspective: [800, 800], transformOriginX: [0, 0], transformOriginY: ["100%", "100%"], rotateX: -180 }] 5357 ], 5358 reset: { transformPerspective: 0, transformOriginX: "50%", transformOriginY: "50%", rotateX: 0 } 5359 }, 5360 "transition.perspectiveDownIn": { 5361 defaultDuration: 800, 5362 calls: [ 5363 [{ opacity: [1, 0], transformPerspective: [800, 800], transformOriginX: [0, 0], transformOriginY: [0, 0], rotateX: [0, 180] }] 5364 ], 5365 reset: { transformPerspective: 0, transformOriginX: "50%", transformOriginY: "50%" } 5366 }, 5367 "transition.perspectiveDownOut": { 5368 defaultDuration: 850, 5369 calls: [ 5370 [{ opacity: [0, 1], transformPerspective: [800, 800], transformOriginX: [0, 0], transformOriginY: [0, 0], rotateX: 180 }] 5371 ], 5372 reset: { transformPerspective: 0, transformOriginX: "50%", transformOriginY: "50%", rotateX: 0 } 5373 }, 5374 "transition.perspectiveLeftIn": { 5375 defaultDuration: 950, 5376 calls: [ 5377 [{ opacity: [1, 0], transformPerspective: [2e3, 2e3], transformOriginX: [0, 0], transformOriginY: [0, 0], rotateY: [0, -180] }] 5378 ], 5379 reset: { transformPerspective: 0, transformOriginX: "50%", transformOriginY: "50%" } 5380 }, 5381 "transition.perspectiveLeftOut": { 5382 defaultDuration: 950, 5383 calls: [ 5384 [{ opacity: [0, 1], transformPerspective: [2e3, 2e3], transformOriginX: [0, 0], transformOriginY: [0, 0], rotateY: -180 }] 5385 ], 5386 reset: { transformPerspective: 0, transformOriginX: "50%", transformOriginY: "50%", rotateY: 0 } 5387 }, 5388 "transition.perspectiveRightIn": { 5389 defaultDuration: 950, 5390 calls: [ 5391 [{ opacity: [1, 0], transformPerspective: [2e3, 2e3], transformOriginX: ["100%", "100%"], transformOriginY: [0, 0], rotateY: [0, 180] }] 5392 ], 5393 reset: { transformPerspective: 0, transformOriginX: "50%", transformOriginY: "50%" } 5394 }, 5395 "transition.perspectiveRightOut": { 5396 defaultDuration: 950, 5397 calls: [ 5398 [{ opacity: [0, 1], transformPerspective: [2e3, 2e3], transformOriginX: ["100%", "100%"], transformOriginY: [0, 0], rotateY: 180 }] 5399 ], 5400 reset: { transformPerspective: 0, transformOriginX: "50%", transformOriginY: "50%", rotateY: 0 } 5401 } 5402 }; 5403 for (var effectName in Velocity.RegisterEffect.packagedEffects) Velocity.RegisterEffect(effectName, Velocity.RegisterEffect.packagedEffects[effectName]); 5404 Velocity.RunSequence = function(originalSequence) { 5405 var sequence = $.extend(!0, [], originalSequence); 5406 sequence.length > 1 && ($.each(sequence.reverse(), function(i, currentCall) { 5407 var nextCall = sequence[i + 1]; 5408 if (nextCall) { 5409 var currentCallOptions = currentCall.o || currentCall.options, 5410 nextCallOptions = nextCall.o || nextCall.options, 5411 timing = currentCallOptions && currentCallOptions.sequenceQueue === !1 ? "begin" : "complete", 5412 callbackOriginal = nextCallOptions && nextCallOptions[timing], 5413 options = {}; 5414 options[timing] = function() { 5415 var nextCallElements = nextCall.e || nextCall.elements, 5416 elements = nextCallElements.nodeType ? [nextCallElements] : nextCallElements; 5417 callbackOriginal && callbackOriginal.call(elements, elements), Velocity(currentCall) 5418 }, nextCall.o ? nextCall.o = $.extend({}, nextCallOptions, options) : nextCall.options = $.extend({}, nextCallOptions, options) 5419 } 5420 }), sequence.reverse()), Velocity(sequence[0]) 5421 } 5422 }(window.jQuery || window.Zepto || window, window, document) 5423 }), 5424 function(global, factory) { "object" == typeof exports && "undefined" != typeof module ? module.exports = factory() : "function" == typeof define && define.amd ? define(factory) : global.moment = factory() }(this, function() { 5425 "use strict"; 5426 5427 function utils_hooks__hooks() { return hookCallback.apply(null, arguments) } 5428 5429 function setHookCallback(callback) { hookCallback = callback } 5430 5431 function isArray(input) { return input instanceof Array || "[object Array]" === Object.prototype.toString.call(input) } 5432 5433 function isObject(input) { return null != input && "[object Object]" === Object.prototype.toString.call(input) } 5434 5435 function isObjectEmpty(obj) { var k; for (k in obj) return !1; return !0 } 5436 5437 function isDate(input) { return input instanceof Date || "[object Date]" === Object.prototype.toString.call(input) } 5438 5439 function map(arr, fn) { var i, res = []; for (i = 0; i < arr.length; ++i) res.push(fn(arr[i], i)); return res } 5440 5441 function hasOwnProp(a, b) { return Object.prototype.hasOwnProperty.call(a, b) } 5442 5443 function extend(a, b) { for (var i in b) hasOwnProp(b, i) && (a[i] = b[i]); return hasOwnProp(b, "toString") && (a.toString = b.toString), hasOwnProp(b, "valueOf") && (a.valueOf = b.valueOf), a } 5444 5445 function create_utc__createUTC(input, format, locale, strict) { return createLocalOrUTC(in
vendor: 6,388 bytes, lines 5445-5534
5445put, format, locale, strict, !0).utc() } 5446 5447 function defaultParsingFlags() { return { empty: !1, unusedTokens: [], unusedInput: [], overflow: -2, charsLeftOver: 0, nullInput: !1, invalidMonth: null, invalidFormat: !1, userInvalidated: !1, iso: !1, parsedDateParts: [], meridiem: null } } 5448 5449 function getParsingFlags(m) { return null == m._pf && (m._pf = defaultParsingFlags()), m._pf } 5450 5451 function valid__isValid(m) { 5452 if (null == m._isValid) { 5453 var flags = getParsingFlags(m), 5454 parsedParts = some.call(flags.parsedDateParts, function(i) { return null != i }), 5455 isNowValid = !isNaN(m._d.getTime()) && flags.overflow < 0 && !flags.empty && !flags.invalidMonth && !flags.invalidWeekday && !flags.nullInput && !flags.invalidFormat && !flags.userInvalidated && (!flags.meridiem || flags.meridiem && parsedParts); 5456 if (m._strict && (isNowValid = isNowValid && 0 === flags.charsLeftOver && 0 === flags.unusedTokens.length && void 0 === flags.bigHour), null != Object.isFrozen && Object.isFrozen(m)) return isNowValid; 5457 m._isValid = isNowValid 5458 } 5459 return m._isValid 5460 } 5461 5462 function valid__createInvalid(flags) { var m = create_utc__createUTC(NaN); return null != flags ? extend(getParsingFlags(m), flags) : getParsingFlags(m).userInvalidated = !0, m } 5463 5464 function isUndefined(input) { return void 0 === input } 5465 5466 function copyConfig(to, from) { 5467 var i, prop, val; 5468 if (isUndefined(from._isAMomentObject) || (to._isAMomentObject = from._isAMomentObject), isUndefined(from._i) || (to._i = from._i), isUndefined(from._f) || (to._f = from._f), isUndefined(from._l) || (to._l = from._l), isUndefined(from._strict) || (to._strict = from._strict), isUndefined(from._tzm) || (to._tzm = from._tzm), isUndefined(from._isUTC) || (to._isUTC = from._isUTC), isUndefined(from._offset) || (to._offset = from._offset), isUndefined(from._pf) || (to._pf = getParsingFlags(from)), isUndefined(from._locale) || (to._locale = from._locale), momentProperties.length > 0) 5469 for (i in momentProperties) prop = momentProperties[i], val = from[prop], isUndefined(val) || (to[prop] = val); 5470 return to 5471 } 5472 5473 function Moment(config) { copyConfig(this, config), this._d = new Date(null != config._d ? config._d.getTime() : NaN), updateInProgress === !1 && (updateInProgress = !0, utils_hooks__hooks.updateOffset(this), updateInProgress = !1) } 5474 5475 function isMoment(obj) { return obj instanceof Moment || null != obj && null != obj._isAMomentObject } 5476 5477 function absFloor(number) { return number < 0 ? Math.ceil(number) || 0 : Math.floor(number) } 5478 5479 function toInt(argumentForCoercion) { 5480 var coercedNumber = +argumentForCoercion, 5481 value = 0; 5482 return 0 !== coercedNumber && isFinite(coercedNumber) && (value = absFloor(coercedNumber)), value 5483 } 5484 5485 function compareArrays(array1, array2, dontConvert) { 5486 var i, len = Math.min(array1.length, array2.length), 5487 lengthDiff = Math.abs(array1.length - array2.length), 5488 diffs = 0; 5489 for (i = 0; i < len; i++)(dontConvert && array1[i] !== array2[i] || !dontConvert && toInt(array1[i]) !== toInt(array2[i])) && diffs++; 5490 return diffs + lengthDiff 5491 } 5492 5493 function warn(msg) { utils_hooks__hooks.suppressDeprecationWarnings === !1 && "undefined" != typeof console && console.warn && console.warn("Deprecation warning: " + msg) } 5494 5495 function deprecate(msg, fn) { 5496 var firstTime = !0; 5497 return extend(function() { 5498 if (null != utils_hooks__hooks.deprecationHandler && utils_hooks__hooks.deprecationHandler(null, msg), firstTime) { 5499 for (var arg, args = [], i = 0; i < arguments.length; i++) { 5500 if (arg = "", "object" == typeof arguments[i]) { 5501 arg += "\n[" + i + "] "; 5502 for (var key in arguments[0]) arg += key + ": " + arguments[0][key] + ", "; 5503 arg = arg.slice(0, -2) 5504 } else arg = arguments[i]; 5505 args.push(arg) 5506 } 5507 warn(msg + "\nArguments: " + Array.prototype.slice.call(args).join("") + "\n" + (new Error).stack), firstTime = !1 5508 } 5509 return fn.apply(this, arguments) 5510 }, fn) 5511 } 5512 5513 function deprecateSimple(name, msg) { null != utils_hooks__hooks.deprecationHandler && utils_hooks__hooks.deprecationHandler(name, msg), deprecations[name] || (warn(msg), deprecations[name] = !0) } 5514 5515 function isFunction(input) { return input instanceof Function || "[object Function]" === Object.prototype.toString.call(input) } 5516 5517 function locale_set__set(config) { 5518 var prop, i; 5519 for (i in config) prop = config[i], isFunction(prop) ? this[i] = prop : this["_" + i] = prop; 5520 this._config = config, this._ordinalParseLenient = new RegExp(this._ordinalParse.source + "|" + /\d{1,2}/.source) 5521 } 5522 5523 function mergeConfigs(parentConfig, childConfig) { var prop, res = extend({}, parentConfig); for (prop in childConfig) hasOwnProp(childConfig, prop) && (isObject(parentConfig[prop]) && isObject(childConfig[prop]) ? (res[prop] = {}, extend(res[prop], parentConfig[prop]), extend(res[prop], childConfig[prop])) : null != childConfig[prop] ? res[prop] = childConfig[prop] : delete res[prop]); for (prop in parentConfig) hasOwnProp(parentConfig, prop) && !hasOwnProp(childConfig, prop) && isObject(parentConfig[prop]) && (res[prop] = extend({}, res[prop])); return res } 5524 5525 function Locale(config) { null != config && this.set(config) } 5526 5527 function locale_calendar__calendar(key, mom, now) { var output = this._calendar[key] || this._calendar.sameElse; return isFunction(output) ? output.call(mom, now) : output } 5528 5529 function longDateFormat(key) { 5530 var format = this._longDateFormat[key], 5531 formatUpper = this._longDateFormat[key.toUpperCase()]; 5532 return format || !formatUpper ? format : (this._longDateFormat[key] = formatUpper.replace(/MMMM|MM|DD|dddd/g, function(val) { return val.slice(1) }), this._longDateFormat[key]) 5533 } 5534
vendor: 44,105 bytes, lines 5535-5986
5535 function invalidDate() { return this._invalidDate } 5536 5537 function ordinal(number) { return this._ordinal.replace("%d", number) } 5538 5539 function relative__relativeTime(number, withoutSuffix, string, isFuture) { var output = this._relativeTime[string]; return isFunction(output) ? output(number, withoutSuffix, string, isFuture) : output.replace(/%d/i, number) } 5540 5541 function pastFuture(diff, output) { var format = this._relativeTime[diff > 0 ? "future" : "past"]; return isFunction(format) ? format(output) : format.replace(/%s/i, output) } 5542 5543 function addUnitAlias(unit, shorthand) { 5544 var lowerCase = unit.toLowerCase(); 5545 aliases[lowerCase] = aliases[lowerCase + "s"] = aliases[shorthand] = unit 5546 } 5547 5548 function normalizeUnits(units) { return "string" == typeof units ? aliases[units] || aliases[units.toLowerCase()] : void 0 } 5549 5550 function normalizeObjectUnits(inputObject) { var normalizedProp, prop, normalizedInput = {}; for (prop in inputObject) hasOwnProp(inputObject, prop) && (normalizedProp = normalizeUnits(prop), normalizedProp && (normalizedInput[normalizedProp] = inputObject[prop])); return normalizedInput } 5551 5552 function addUnitPriority(unit, priority) { priorities[unit] = priority } 5553 5554 function getPrioritizedUnits(unitsObj) { var units = []; for (var u in unitsObj) units.push({ unit: u, priority: priorities[u] }); return units.sort(function(a, b) { return a.priority - b.priority }), units } 5555 5556 function makeGetSet(unit, keepTime) { return function(value) { return null != value ? (get_set__set(this, unit, value), utils_hooks__hooks.updateOffset(this, keepTime), this) : get_set__get(this, unit) } } 5557 5558 function get_set__get(mom, unit) { return mom.isValid() ? mom._d["get" + (mom._isUTC ? "UTC" : "") + unit]() : NaN } 5559 5560 function get_set__set(mom, unit, value) { mom.isValid() && mom._d["set" + (mom._isUTC ? "UTC" : "") + unit](value) } 5561 5562 function stringGet(units) { return units = normalizeUnits(units), isFunction(this[units]) ? this[units]() : this } 5563 5564 function stringSet(units, value) { if ("object" == typeof units) { units = normalizeObjectUnits(units); for (var prioritized = getPrioritizedUnits(units), i = 0; i < prioritized.length; i++) this[prioritized[i].unit](units[prioritized[i].unit]) } else if (units = normalizeUnits(units), isFunction(this[units])) return this[units](value); return this } 5565 5566 function zeroFill(number, targetLength, forceSign) { 5567 var absNumber = "" + Math.abs(number), 5568 zerosToFill = targetLength - absNumber.length, 5569 sign = number >= 0; 5570 return (sign ? forceSign ? "+" : "" : "-") + Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) + absNumber 5571 } 5572 5573 function addFormatToken(token, padded, ordinal, callback) { var func = callback; "string" == typeof callback && (func = function() { return this[callback]() }), token && (formatTokenFunctions[token] = func), padded && (formatTokenFunctions[padded[0]] = function() { return zeroFill(func.apply(this, arguments), padded[1], padded[2]) }), ordinal && (formatTokenFunctions[ordinal] = function() { return this.localeData().ordinal(func.apply(this, arguments), token) }) } 5574 5575 function removeFormattingTokens(input) { return input.match(/\[[\s\S]/) ? input.replace(/^\[|\]$/g, "") : input.replace(/\\/g, "") } 5576 5577 function makeFormatFunction(format) { var i, length, array = format.match(formattingTokens); for (i = 0, length = array.length; i < length; i++) formatTokenFunctions[array[i]] ? array[i] = formatTokenFunctions[array[i]] : array[i] = removeFormattingTokens(array[i]); return function(mom) { var i, output = ""; for (i = 0; i < length; i++) output += array[i] instanceof Function ? array[i].call(mom, format) : array[i]; return output } } 5578 5579 function formatMoment(m, format) { 5580 return m.isValid() ? (format = expandFormat(format, m.localeData()), 5581 formatFunctions[format] = formatFunctions[format] || makeFormatFunction(format), formatFunctions[format](m)) : m.localeData().invalidDate() 5582 } 5583 5584 function expandFormat(format, locale) { 5585 function replaceLongDateFormatTokens(input) { return locale.longDateFormat(input) || input } 5586 var i = 5; 5587 for (localFormattingTokens.lastIndex = 0; i >= 0 && localFormattingTokens.test(format);) format = format.replace(localFormattingTokens, replaceLongDateFormatTokens), localFormattingTokens.lastIndex = 0, i -= 1; 5588 return format 5589 } 5590 5591 function addRegexToken(token, regex, strictRegex) { regexes[token] = isFunction(regex) ? regex : function(isStrict, localeData) { return isStrict && strictRegex ? strictRegex : regex } } 5592 5593 function getParseRegexForToken(token, config) { return hasOwnProp(regexes, token) ? regexes[token](config._strict, config._locale) : new RegExp(unescapeFormat(token)) } 5594 5595 function unescapeFormat(s) { return regexEscape(s.replace("\\", "").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function(matched, p1, p2, p3, p4) { return p1 || p2 || p3 || p4 })) } 5596 5597 function regexEscape(s) { return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&") } 5598 5599 function addParseToken(token, callback) { var i, func = callback; for ("string" == typeof token && (token = [token]), "number" == typeof callback && (func = function(input, array) { array[callback] = toInt(input) }), i = 0; i < token.length; i++) tokens[token[i]] = func } 5600 5601 function addWeekParseToken(token, callback) { addParseToken(token, function(input, array, config, token) { config._w = config._w || {}, callback(input, config._w, config, token) }) } 5602 5603 function addTimeToArrayFromToken(token, input, config) { null != input && hasOwnProp(tokens, token) && tokens[token](input, config._a, config, token) } 5604 5605 function daysInMonth(year, month) { return new Date(Date.UTC(year, month + 1, 0)).getUTCDate() } 5606 5607 function localeMonths(m, format) { return m ? isArray(this._months) ? this._months[m.month()] : this._months[(this._months.isFormat || MONTHS_IN_FORMAT).test(format) ? "format" : "standalone"][m.month()] : this._months } 5608 5609 function localeMonthsShort(m, format) { return m ? isArray(this._monthsShort) ? this._monthsShort[m.month()] : this._monthsShort[MONTHS_IN_FORMAT.test(format) ? "format" : "standalone"][m.month()] : this._monthsShort } 5610 5611 function units_month__handleStrictParse(monthName, format, strict) { 5612 var i, ii, mom, llc = monthName.toLocaleLowerCase(); 5613 if (!this._monthsParse) 5614 for (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = [], i = 0; i < 12; ++i) mom = create_utc__createUTC([2e3, i]), this._shortMonthsParse[i] = this.monthsShort(mom, "").toLocaleLowerCase(), this._longMonthsParse[i] = this.months(mom, "").toLocaleLowerCase(); 5615 return strict ? "MMM" === format ? (ii = indexOf.call(this._shortMonthsParse, llc), ii !== -1 ? ii : null) : (ii = indexOf.call(this._longMonthsParse, llc), ii !== -1 ? ii : null) : "MMM" === format ? (ii = indexOf.call(this._shortMonthsParse, llc), ii !== -1 ? ii : (ii = indexOf.call(this._longMonthsParse, llc), ii !== -1 ? ii : null)) : (ii = indexOf.call(this._longMonthsParse, llc), ii !== -1 ? ii : (ii = indexOf.call(this._shortMonthsParse, llc), ii !== -1 ? ii : null)) 5616 } 5617 5618 function localeMonthsParse(monthName, format, strict) { var i, mom, regex; if (this._monthsParseExact) return units_month__handleStrictParse.call(this, monthName, format, strict); for (this._monthsParse || (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = []), i = 0; i < 12; i++) { if (mom = create_utc__createUTC([2e3, i]), strict && !this._longMonthsParse[i] && (this._longMonthsParse[i] = new RegExp("^" + this.months(mom, "").replace(".", "") + "$", "i"), this._shortMonthsParse[i] = new RegExp("^" + this.monthsShort(mom, "").replace(".", "") + "$", "i")), strict || this._monthsParse[i] || (regex = "^" + this.months(mom, "") + "|^" + this.monthsShort(mom, ""), this._monthsParse[i] = new RegExp(regex.replace(".", ""), "i")), strict && "MMMM" === format && this._longMonthsParse[i].test(monthName)) return i; if (strict && "MMM" === format && this._shortMonthsParse[i].test(monthName)) return i; if (!strict && this._monthsParse[i].test(monthName)) return i } } 5619 5620 function setMonth(mom, value) { 5621 var dayOfMonth; 5622 if (!mom.isValid()) return mom; 5623 if ("string" == typeof value) 5624 if (/^\d+$/.test(value)) value = toInt(value); 5625 else if (value = mom.localeData().monthsParse(value), "number" != typeof value) return mom; 5626 return dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value)), mom._d["set" + (mom._isUTC ? "UTC" : "") + "Month"](value, dayOfMonth), mom 5627 } 5628 5629 function getSetMonth(value) { return null != value ? (setMonth(this, value), utils_hooks__hooks.updateOffset(this, !0), this) : get_set__get(this, "Month") } 5630 5631 function getDaysInMonth() { return daysInMonth(this.year(), this.month()) } 5632 5633 function monthsShortRegex(isStrict) { return this._monthsParseExact ? (hasOwnProp(this, "_monthsRegex") || computeMonthsParse.call(this), isStrict ? this._monthsShortStrictRegex : this._monthsShortRegex) : (hasOwnProp(this, "_monthsShortRegex") || (this._monthsShortRegex = defaultMonthsShortRegex), this._monthsShortStrictRegex && isStrict ? this._monthsShortStrictRegex : this._monthsShortRegex) } 5634 5635 function units_month__monthsRegex(isStrict) { return this._monthsParseExact ? (hasOwnProp(this, "_monthsRegex") || computeMonthsParse.call(this), isStrict ? this._monthsStrictRegex : this._monthsRegex) : (hasOwnProp(this, "_monthsRegex") || (this._monthsRegex = defaultMonthsRegex), this._monthsStrictRegex && isStrict ? this._monthsStrictRegex : this._monthsRegex) } 5636 5637 function computeMonthsParse() { 5638 function cmpLenRev(a, b) { return b.length - a.length } 5639 var i, mom, shortPieces = [], 5640 longPieces = [], 5641 mixedPieces = []; 5642 for (i = 0; i < 12; i++) mom = create_utc__createUTC([2e3, i]), shortPieces.push(this.monthsShort(mom, "")), longPieces.push(this.months(mom, "")), mixedPieces.push(this.months(mom, "")), mixedPieces.push(this.monthsShort(mom, "")); 5643 for (shortPieces.sort(cmpLenRev), longPieces.sort(cmpLenRev), mixedPieces.sort(cmpLenRev), i = 0; i < 12; i++) shortPieces[i] = regexEscape(shortPieces[i]), longPieces[i] = regexEscape(longPieces[i]); 5644 for (i = 0; i < 24; i++) mixedPieces[i] = regexEscape(mixedPieces[i]); 5645 this._monthsRegex = new RegExp("^(" + mixedPieces.join("|") + ")", "i"), this._monthsShortRegex = this._monthsRegex, this._monthsStrictRegex = new RegExp("^(" + longPieces.join("|") + ")", "i"), this._monthsShortStrictRegex = new RegExp("^(" + shortPieces.join("|") + ")", "i") 5646 } 5647 5648 function daysInYear(year) { return isLeapYear(year) ? 366 : 365 } 5649 5650 function isLeapYear(year) { return year % 4 === 0 && year % 100 !== 0 || year % 400 === 0 } 5651 5652 function getIsLeapYear() { return isLeapYear(this.year()) } 5653 5654 function createDate(y, m, d, h, M, s, ms) { var date = new Date(y, m, d, h, M, s, ms); return y < 100 && y >= 0 && isFinite(date.getFullYear()) && date.setFullYear(y), date } 5655 5656 function createUTCDate(y) { var date = new Date(Date.UTC.apply(null, arguments)); return y < 100 && y >= 0 && isFinite(date.getUTCFullYear()) && date.setUTCFullYear(y), date } 5657 5658 function firstWeekOffset(year, dow, doy) { 5659 var fwd = 7 + dow - doy, 5660 fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7; 5661 return -fwdlw + fwd - 1 5662 } 5663 5664 function dayOfYearFromWeeks(year, week, weekday, dow, doy) { 5665 var resYear, resDayOfYear, localWeekday = (7 + weekday - dow) % 7, 5666 weekOffset = firstWeekOffset(year, dow, doy), 5667 dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset; 5668 return dayOfYear <= 0 ? (resYear = year - 1, resDayOfYear = daysInYear(resYear) + dayOfYear) : dayOfYear > daysInYear(year) ? (resYear = year + 1, resDayOfYear = dayOfYear - daysInYear(year)) : (resYear = year, resDayOfYear = dayOfYear), { year: resYear, dayOfYear: resDayOfYear } 5669 } 5670 5671 function weekOfYear(mom, dow, doy) { 5672 var resWeek, resYear, weekOffset = firstWeekOffset(mom.year(), dow, doy), 5673 week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1; 5674 return week < 1 ? (resYear = mom.year() - 1, resWeek = week + weeksInYear(resYear, dow, doy)) : week > weeksInYear(mom.year(), dow, doy) ? (resWeek = week - weeksInYear(mom.year(), dow, doy), resYear = mom.year() + 1) : (resYear = mom.year(), resWeek = week), { week: resWeek, year: resYear } 5675 } 5676 5677 function weeksInYear(year, dow, doy) { 5678 var weekOffset = firstWeekOffset(year, dow, doy), 5679 weekOffsetNext = firstWeekOffset(year + 1, dow, doy); 5680 return (daysInYear(year) - weekOffset + weekOffsetNext) / 7 5681 } 5682 5683 function localeWeek(mom) { return weekOfYear(mom, this._week.dow, this._week.doy).week } 5684 5685 function localeFirstDayOfWeek() { return this._week.dow } 5686 5687 function localeFirstDayOfYear() { return this._week.doy } 5688 5689 function getSetWeek(input) { var week = this.localeData().week(this); return null == input ? week : this.add(7 * (input - week), "d") } 5690 5691 function getSetISOWeek(input) { var week = weekOfYear(this, 1, 4).week; return null == input ? week : this.add(7 * (input - week), "d") } 5692 5693 function parseWeekday(input, locale) { return "string" != typeof input ? input : isNaN(input) ? (input = locale.weekdaysParse(input), "number" == typeof input ? input : null) : parseInt(input, 10) } 5694 5695 function parseIsoWeekday(input, locale) { return "string" == typeof input ? locale.weekdaysParse(input) % 7 || 7 : isNaN(input) ? null : input } 5696 5697 function localeWeekdays(m, format) { return m ? isArray(this._weekdays) ? this._weekdays[m.day()] : this._weekdays[this._weekdays.isFormat.test(format) ? "format" : "standalone"][m.day()] : this._weekdays } 5698 5699 function localeWeekdaysShort(m) { return m ? this._weekdaysShort[m.day()] : this._weekdaysShort } 5700 5701 function localeWeekdaysMin(m) { return m ? this._weekdaysMin[m.day()] : this._weekdaysMin } 5702 5703 function day_of_week__handleStrictParse(weekdayName, format, strict) { 5704 var i, ii, mom, llc = weekdayName.toLocaleLowerCase(); 5705 if (!this._weekdaysParse) 5706 for (this._weekdaysParse = [], this._shortWeekdaysParse = [], this._minWeekdaysParse = [], i = 0; i < 7; ++i) mom = create_utc__createUTC([2e3, 1]).day(i), this._minWeekdaysParse[i] = this.weekdaysMin(mom, "").toLocaleLowerCase(), this._shortWeekdaysParse[i] = this.weekdaysShort(mom, "").toLocaleLowerCase(), this._weekdaysParse[i] = this.weekdays(mom, "").toLocaleLowerCase(); 5707 return strict ? "dddd" === format ? (ii = indexOf.call(this._weekdaysParse, llc), ii !== -1 ? ii : null) : "ddd" === format ? (ii = indexOf.call(this._shortWeekdaysParse, llc), ii !== -1 ? ii : null) : (ii = indexOf.call(this._minWeekdaysParse, llc), ii !== -1 ? ii : null) : "dddd" === format ? (ii = indexOf.call(this._weekdaysParse, llc), ii !== -1 ? ii : (ii = indexOf.call(this._shortWeekdaysParse, llc), ii !== -1 ? ii : (ii = indexOf.call(this._minWeekdaysParse, llc), ii !== -1 ? ii : null))) : "ddd" === format ? (ii = indexOf.call(this._shortWeekdaysParse, llc), ii !== -1 ? ii : (ii = indexOf.call(this._weekdaysParse, llc), ii !== -1 ? ii : (ii = indexOf.call(this._minWeekdaysParse, llc), ii !== -1 ? ii : null))) : (ii = indexOf.call(this._minWeekdaysParse, llc), ii !== -1 ? ii : (ii = indexOf.call(this._weekdaysParse, llc), ii !== -1 ? ii : (ii = indexOf.call(this._shortWeekdaysParse, llc), ii !== -1 ? ii : null))) 5708 } 5709 5710 function localeWeekdaysParse(weekdayName, format, strict) { var i, mom, regex; if (this._weekdaysParseExact) return day_of_week__handleStrictParse.call(this, weekdayName, format, strict); for (this._weekdaysParse || (this._weekdaysParse = [], this._minWeekdaysParse = [], this._shortWeekdaysParse = [], this._fullWeekdaysParse = []), i = 0; i < 7; i++) { if (mom = create_utc__createUTC([2e3, 1]).day(i), strict && !this._fullWeekdaysParse[i] && (this._fullWeekdaysParse[i] = new RegExp("^" + this.weekdays(mom, "").replace(".", ".?") + "$", "i"), this._shortWeekdaysParse[i] = new RegExp("^" + this.weekdaysShort(mom, "").replace(".", ".?") + "$", "i"), this._minWeekdaysParse[i] = new RegExp("^" + this.weekdaysMin(mom, "").replace(".", ".?") + "$", "i")), this._weekdaysParse[i] || (regex = "^" + this.weekdays(mom, "") + "|^" + this.weekdaysShort(mom, "") + "|^" + this.weekdaysMin(mom, ""), this._weekdaysParse[i] = new RegExp(regex.replace(".", ""), "i")), strict && "dddd" === format && this._fullWeekdaysParse[i].test(weekdayName)) return i; if (strict && "ddd" === format && this._shortWeekdaysParse[i].test(weekdayName)) return i; if (strict && "dd" === format && this._minWeekdaysParse[i].test(weekdayName)) return i; if (!strict && this._weekdaysParse[i].test(weekdayName)) return i } } 5711 5712 function getSetDayOfWeek(input) { if (!this.isValid()) return null != input ? this : NaN; var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay(); return null != input ? (input = parseWeekday(input, this.localeData()), this.add(input - day, "d")) : day } 5713 5714 function getSetLocaleDayOfWeek(input) { if (!this.isValid()) return null != input ? this : NaN; var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7; return null == input ? weekday : this.add(input - weekday, "d") } 5715 5716 function getSetISODayOfWeek(input) { if (!this.isValid()) return null != input ? this : NaN; if (null != input) { var weekday = parseIsoWeekday(input, this.localeData()); return this.day(this.day() % 7 ? weekday : weekday - 7) } return this.day() || 7 } 5717 5718 function weekdaysRegex(isStrict) { return this._weekdaysParseExact ? (hasOwnProp(this, "_weekdaysRegex") || computeWeekdaysParse.call(this), isStrict ? this._weekdaysStrictRegex : this._weekdaysRegex) : (hasOwnProp(this, "_weekdaysRegex") || (this._weekdaysRegex = defaultWeekdaysRegex), this._weekdaysStrictRegex && isStrict ? this._weekdaysStrictRegex : this._weekdaysRegex) } 5719 5720 function weekdaysShortRegex(isStrict) { return this._weekdaysParseExact ? (hasOwnProp(this, "_weekdaysRegex") || computeWeekdaysParse.call(this), isStrict ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex) : (hasOwnProp(this, "_weekdaysShortRegex") || (this._weekdaysShortRegex = defaultWeekdaysShortRegex), this._weekdaysShortStrictRegex && isStrict ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex) } 5721 5722 function weekdaysMinRegex(isStrict) { return this._weekdaysParseExact ? (hasOwnProp(this, "_weekdaysRegex") || computeWeekdaysParse.call(this), isStrict ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex) : (hasOwnProp(this, "_weekdaysMinRegex") || (this._weekdaysMinRegex = defaultWeekdaysMinRegex), this._weekdaysMinStrictRegex && isStrict ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex) } 5723 5724 function computeWeekdaysParse() { 5725 function cmpLenRev(a, b) { return b.length - a.length } 5726 var i, mom, minp, shortp, longp, minPieces = [], 5727 shortPieces = [], 5728 longPieces = [], 5729 mixedPieces = []; 5730 for (i = 0; i < 7; i++) mom = create_utc__createUTC([2e3, 1]).day(i), minp = this.weekdaysMin(mom, ""), shortp = this.weekdaysShort(mom, ""), longp = this.weekdays(mom, ""), minPieces.push(minp), shortPieces.push(shortp), longPieces.push(longp), mixedPieces.push(minp), mixedPieces.push(shortp), mixedPieces.push(longp); 5731 for (minPieces.sort(cmpLenRev), shortPieces.sort(cmpLenRev), longPieces.sort(cmpLenRev), mixedPieces.sort(cmpLenRev), i = 0; i < 7; i++) shortPieces[i] = regexEscape(shortPieces[i]), longPieces[i] = regexEscape(longPieces[i]), mixedPieces[i] = regexEscape(mixedPieces[i]); 5732 this._weekdaysRegex = new RegExp("^(" + mixedPieces.join("|") + ")", "i"), this._weekdaysShortRegex = this._weekdaysRegex, this._weekdaysMinRegex = this._weekdaysRegex, this._weekdaysStrictRegex = new RegExp("^(" + longPieces.join("|") + ")", "i"), this._weekdaysShortStrictRegex = new RegExp("^(" + shortPieces.join("|") + ")", "i"), this._weekdaysMinStrictRegex = new RegExp("^(" + minPieces.join("|") + ")", "i") 5733 } 5734 5735 function hFormat() { return this.hours() % 12 || 12 } 5736 5737 function kFormat() { return this.hours() || 24 } 5738 5739 function meridiem(token, lowercase) { addFormatToken(token, 0, 0, function() { return this.localeData().meridiem(this.hours(), this.minutes(), lowercase) }) } 5740 5741 function matchMeridiem(isStrict, locale) { return locale._meridiemParse } 5742 5743 function localeIsPM(input) { return "p" === (input + "").toLowerCase().charAt(0) } 5744 5745 function localeMeridiem(hours, minutes, isLower) { return hours > 11 ? isLower ? "pm" : "PM" : isLower ? "am" : "AM" } 5746 5747 function normalizeLocale(key) { return key ? key.toLowerCase().replace("_", "-") : key } 5748 5749 function chooseLocale(names) { 5750 for (var j, next, locale, split, i = 0; i < names.length;) { 5751 for (split = normalizeLocale(names[i]).split("-"), j = split.length, next = normalizeLocale(names[i + 1]), next = next ? next.split("-") : null; j > 0;) { 5752 if (locale = loadLocale(split.slice(0, j).join("-"))) return locale; 5753 if (next && next.length >= j && compareArrays(split, next, !0) >= j - 1) break; 5754 j-- 5755 } 5756 i++ 5757 } 5758 return null 5759 } 5760 5761 function loadLocale(name) { 5762 var oldLocale = null; 5763 if (!locales[name] && "undefined" != typeof module && module && module.exports) try { oldLocale = globalLocale._abbr, require("./locale/" + name), locale_locales__getSetGlobalLocale(oldLocale) } catch (e) {} 5764 return locales[name] 5765 } 5766 5767 function locale_locales__getSetGlobalLocale(key, values) { var data; return key && (data = isUndefined(values) ? locale_locales__getLocale(key) : defineLocale(key, values), data && (globalLocale = data)), globalLocale._abbr } 5768 5769 function defineLocale(name, config) { if (null !== config) { var parentConfig = baseConfig; return config.abbr = name, null != locales[name] ? (deprecateSimple("defineLocaleOverride", "use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."), parentConfig = locales[name]._config) : null != config.parentLocale && (null != locales[config.parentLocale] ? parentConfig = locales[config.parentLocale]._config : deprecateSimple("parentLocaleUndefined", "specified parentLocale is not defined yet. See http://momentjs.com/guides/#/warnings/parent-locale/")), locales[name] = new Locale(mergeConfigs(parentConfig, config)), locale_locales__getSetGlobalLocale(name), locales[name] } return delete locales[name], null } 5770 5771 function updateLocale(name, config) { 5772 if (null != config) { 5773 var locale, parentConfig = baseConfig; 5774 null != locales[name] && (parentConfig = locales[name]._config), config = mergeConfigs(parentConfig, config), locale = new Locale(config), locale.parentLocale = locales[name], locales[name] = locale, locale_locales__getSetGlobalLocale(name) 5775 } else null != locales[name] && (null != locales[name].parentLocale ? locales[name] = locales[name].parentLocale : null != locales[name] && delete locales[name]); 5776 return locales[name] 5777 } 5778 5779 function locale_locales__getLocale(key) { 5780 var locale; 5781 if (key && key._locale && key._locale._abbr && (key = key._locale._abbr), !key) return globalLocale; 5782 if (!isArray(key)) { 5783 if (locale = loadLocale(key)) return locale; 5784 key = [key] 5785 } 5786 return chooseLocale(key) 5787 } 5788 5789 function locale_locales__listLocales() { return keys(locales) } 5790 5791 function checkOverflow(m) { var overflow, a = m._a; return a && getParsingFlags(m).overflow === -2 && (overflow = a[MONTH] < 0 || a[MONTH] > 11 ? MONTH : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ? DATE : a[HOUR] < 0 || a[HOUR] > 24 || 24 === a[HOUR] && (0 !== a[MINUTE] || 0 !== a[SECOND] || 0 !== a[MILLISECOND]) ? HOUR : a[MINUTE] < 0 || a[MINUTE] > 59 ? MINUTE : a[SECOND] < 0 || a[SECOND] > 59 ? SECOND : a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND : -1, getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE) && (overflow = DATE), getParsingFlags(m)._overflowWeeks && overflow === -1 && (overflow = WEEK), getParsingFlags(m)._overflowWeekday && overflow === -1 && (overflow = WEEKDAY), getParsingFlags(m).overflow = overflow), m } 5792 5793 function configFromISO(config) { 5794 var i, l, allowTime, dateFormat, timeFormat, tzFormat, string = config._i, 5795 match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string); 5796 if (match) { 5797 for (getParsingFlags(config).iso = !0, i = 0, l = isoDates.length; i < l; i++) 5798 if (isoDates[i][1].exec(match[1])) { dateFormat = isoDates[i][0], allowTime = isoDates[i][2] !== !1; break } 5799 if (null == dateFormat) return void(config._isValid = !1); 5800 if (match[3]) { 5801 for (i = 0, l = isoTimes.length; i < l; i++) 5802 if (isoTimes[i][1].exec(match[3])) { timeFormat = (match[2] || " ") + isoTimes[i][0]; break } 5803 if (null == timeFormat) return void(config._isValid = !1) 5804 } 5805 if (!allowTime && null != timeFormat) return void(config._isValid = !1); 5806 if (match[4]) { 5807 if (!tzRegex.exec(match[4])) return void(config._isValid = !1); 5808 tzFormat = "Z" 5809 } 5810 config._f = dateFormat + (timeFormat || "") + (tzFormat || ""), configFromStringAndFormat(config) 5811 } else config._isValid = !1 5812 } 5813 5814 function configFromString(config) { var matched = aspNetJsonRegex.exec(config._i); return null !== matched ? void(config._d = new Date(+matched[1])) : (configFromISO(config), void(config._isValid === !1 && (delete config._isValid, utils_hooks__hooks.createFromInputFallback(config)))) } 5815 5816 function defaults(a, b, c) { return null != a ? a : null != b ? b : c } 5817 5818 function currentDateArray(config) { var nowValue = new Date(utils_hooks__hooks.now()); return config._useUTC ? [nowValue.getUTCFullYear(), nowValue.getUTCMonth(), nowValue.getUTCDate()] : [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()] } 5819 5820 function configFromArray(config) { 5821 var i, date, currentDate, yearToUse, input = []; 5822 if (!config._d) { 5823 for (currentDate = currentDateArray(config), config._w && null == config._a[DATE] && null == config._a[MONTH] && dayOfYearFromWeekInfo(config), config._dayOfYear && (yearToUse = defaults(config._a[YEAR], currentDate[YEAR]), config._dayOfYear > daysInYear(yearToUse) && (getParsingFlags(config)._overflowDayOfYear = !0), date = createUTCDate(yearToUse, 0, config._dayOfYear), config._a[MONTH] = date.getUTCMonth(), config._a[DATE] = date.getUTCDate()), i = 0; i < 3 && null == config._a[i]; ++i) config._a[i] = input[i] = currentDate[i]; 5824 for (; i < 7; i++) config._a[i] = input[i] = null == config._a[i] ? 2 === i ? 1 : 0 : config._a[i]; 5825 24 === config._a[HOUR] && 0 === config._a[MINUTE] && 0 === config._a[SECOND] && 0 === config._a[MILLISECOND] && (config._nextDay = !0, config._a[HOUR] = 0), config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input), null != config._tzm && config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm), config._nextDay && (config._a[HOUR] = 24) 5826 } 5827 } 5828 5829 function dayOfYearFromWeekInfo(config) { 5830 var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow; 5831 w = config._w, null != w.GG || null != w.W || null != w.E ? (dow = 1, doy = 4, weekYear = defaults(w.GG, config._a[YEAR], weekOfYear(local__createLocal(), 1, 4).year), week = defaults(w.W, 1), weekday = defaults(w.E, 1), (weekday < 1 || weekday > 7) && (weekdayOverflow = !0)) : (dow = config._locale._week.dow, doy = config._locale._week.doy, weekYear = defaults(w.gg, config._a[YEAR], weekOfYear(local__createLocal(), dow, doy).year), week = defaults(w.w, 1), null != w.d ? (weekday = w.d, (weekday < 0 || weekday > 6) && (weekdayOverflow = !0)) : null != w.e ? (weekday = w.e + dow, (w.e < 0 || w.e > 6) && (weekdayOverflow = !0)) : weekday = dow), week < 1 || week > weeksInYear(weekYear, dow, doy) ? getParsingFlags(config)._overflowWeeks = !0 : null != weekdayOverflow ? getParsingFlags(config)._overflowWeekday = !0 : (temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy), config._a[YEAR] = temp.year, config._dayOfYear = temp.dayOfYear) 5832 } 5833 5834 function configFromStringAndFormat(config) { 5835 if (config._f === utils_hooks__hooks.ISO_8601) return void configFromISO(config); 5836 config._a = [], getParsingFlags(config).empty = !0; 5837 var i, parsedInput, tokens, token, skipped, string = "" + config._i, 5838 stringLength = string.length, 5839 totalParsedInputLength = 0; 5840 for (tokens = expandFormat(config._f, config._locale).match(formattingTokens) || [], i = 0; i < tokens.length; i++) token = tokens[i], parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0], parsedInput && (skipped = string.substr(0, string.indexOf(parsedInput)), skipped.length > 0 && getParsingFlags(config).unusedInput.push(skipped), string = string.slice(string.indexOf(parsedInput) + parsedInput.length), totalParsedInputLength += parsedInput.length), formatTokenFunctions[token] ? (parsedInput ? getParsingFlags(config).empty = !1 : getParsingFlags(config).unusedTokens.push(token), addTimeToArrayFromToken(token, parsedInput, config)) : config._strict && !parsedInput && getParsingFlags(config).unusedTokens.push(token); 5841 getParsingFlags(config).charsLeftOver = stringLength - totalParsedInputLength, string.length > 0 && getParsingFlags(config).unusedInput.push(string), config._a[HOUR] <= 12 && getParsingFlags(config).bigHour === !0 && config._a[HOUR] > 0 && (getParsingFlags(config).bigHour = void 0), getParsingFlags(config).parsedDateParts = config._a.slice(0), getParsingFlags(config).meridiem = config._meridiem, config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], config._meridiem), configFromArray(config), checkOverflow(config) 5842 } 5843 5844 function meridiemFixWrap(locale, hour, meridiem) { var isPm; return null == meridiem ? hour : null != locale.meridiemHour ? locale.meridiemHour(hour, meridiem) : null != locale.isPM ? (isPm = locale.isPM(meridiem), isPm && hour < 12 && (hour += 12), isPm || 12 !== hour || (hour = 0), hour) : hour } 5845 5846 function configFromStringAndArray(config) { 5847 var tempConfig, bestMoment, scoreToBeat, i, currentScore; 5848 if (0 === config._f.length) return getParsingFlags(config).invalidFormat = !0, void(config._d = new Date(NaN)); 5849 for (i = 0; i < config._f.length; i++) currentScore = 0, tempConfig = copyConfig({}, config), null != config._useUTC && (tempConfig._useUTC = config._useUTC), tempConfig._f = config._f[i], configFromStringAndFormat(tempConfig), valid__isValid(tempConfig) && (currentScore += getParsingFlags(tempConfig).charsLeftOver, currentScore += 10 * getParsingFlags(tempConfig).unusedTokens.length, getParsingFlags(tempConfig).score = currentScore, (null == scoreToBeat || currentScore < scoreToBeat) && (scoreToBeat = currentScore, bestMoment = tempConfig)); 5850 extend(config, bestMoment || tempConfig) 5851 } 5852 5853 function configFromObject(config) { 5854 if (!config._d) { 5855 var i = normalizeObjectUnits(config._i); 5856 config._a = map([i.year, i.month, i.day || i.date, i.hour, i.minute, i.second, i.millisecond], function(obj) { return obj && parseInt(obj, 10) }), configFromArray(config) 5857 } 5858 } 5859 5860 function createFromConfig(config) { var res = new Moment(checkOverflow(prepareConfig(config))); return res._nextDay && (res.add(1, "d"), res._nextDay = void 0), res } 5861 5862 function prepareConfig(config) { 5863 var input = config._i, 5864 format = config._f; 5865 return config._locale = config._locale || locale_locales__getLocale(config._l), null === input || void 0 === format && "" === input ? valid__createInvalid({ nullInput: !0 }) : ("string" == typeof input && (config._i = input = config._locale.preparse(input)), isMoment(input) ? new Moment(checkOverflow(input)) : (isArray(format) ? configFromStringAndArray(config) : isDate(input) ? config._d = input : format ? configFromStringAndFormat(config) : configFromInput(config), valid__isValid(config) || (config._d = null), config)) 5866 } 5867 5868 function configFromInput(config) { 5869 var input = config._i; 5870 void 0 === input ? config._d = new Date(utils_hooks__hooks.now()) : isDate(input) ? config._d = new Date(input.valueOf()) : "string" == typeof input ? configFromString(config) : isArray(input) ? (config._a = map(input.slice(0), function(obj) { return parseInt(obj, 10) }), configFromArray(config)) : "object" == typeof input ? configFromObject(config) : "number" == typeof input ? config._d = new Date(input) : utils_hooks__hooks.createFromInputFallback(config) 5871 } 5872 5873 function createLocalOrUTC(input, format, locale, strict, isUTC) { var c = {}; return "boolean" == typeof locale && (strict = locale, locale = void 0), (isObject(input) && isObjectEmpty(input) || isArray(input) && 0 === input.length) && (input = void 0), c._isAMomentObject = !0, c._useUTC = c._isUTC = isUTC, c._l = locale, c._i = input, c._f = format, c._strict = strict, createFromConfig(c) } 5874 5875 function local__createLocal(input, format, locale, strict) { return createLocalOrUTC(input, format, locale, strict, !1) } 5876 5877 function pickBy(fn, moments) { var res, i; if (1 === moments.length && isArray(moments[0]) && (moments = moments[0]), !moments.length) return local__createLocal(); for (res = moments[0], i = 1; i < moments.length; ++i) moments[i].isValid() && !moments[i][fn](res) || (res = moments[i]); return res } 5878 5879 function min() { var args = [].slice.call(arguments, 0); return pickBy("isBefore", args) } 5880 5881 function max() { var args = [].slice.call(arguments, 0); return pickBy("isAfter", args) } 5882 5883 function Duration(duration) { 5884 var normalizedInput = normalizeObjectUnits(duration), 5885 years = normalizedInput.year || 0, 5886 quarters = normalizedInput.quarter || 0, 5887 months = normalizedInput.month || 0, 5888 weeks = normalizedInput.week || 0, 5889 days = normalizedInput.day || 0, 5890 hours = normalizedInput.hour || 0, 5891 minutes = normalizedInput.minute || 0, 5892 seconds = normalizedInput.second || 0, 5893 milliseconds = normalizedInput.millisecond || 0; 5894 this._milliseconds = +milliseconds + 1e3 * seconds + 6e4 * minutes + 1e3 * hours * 60 * 60, this._days = +days + 7 * weeks, this._months = +months + 3 * quarters + 12 * years, this._data = {}, this._locale = locale_locales__getLocale(), this._bubble() 5895 } 5896 5897 function isDuration(obj) { return obj instanceof Duration } 5898 5899 function absRound(number) { return number < 0 ? Math.round(-1 * number) * -1 : Math.round(number) } 5900 5901 function offset(token, separator) { 5902 addFormatToken(token, 0, 0, function() { 5903 var offset = this.utcOffset(), 5904 sign = "+"; 5905 return offset < 0 && (offset = -offset, sign = "-"), sign + zeroFill(~~(offset / 60), 2) + separator + zeroFill(~~offset % 60, 2) 5906 }) 5907 } 5908 5909 function offsetFromString(matcher, string) { 5910 var matches = (string || "").match(matcher) || [], 5911 chunk = matches[matches.length - 1] || [], 5912 parts = (chunk + "").match(chunkOffset) || ["-", 0, 0], 5913 minutes = +(60 * parts[1]) + toInt(parts[2]); 5914 return "+" === parts[0] ? minutes : -minutes 5915 } 5916 5917 function cloneWithOffset(input, model) { var res, diff; return model._isUTC ? (res = model.clone(), diff = (isMoment(input) || isDate(input) ? input.valueOf() : local__createLocal(input).valueOf()) - res.valueOf(), res._d.setTime(res._d.valueOf() + diff), utils_hooks__hooks.updateOffset(res, !1), res) : local__createLocal(input).local() } 5918 5919 function getDateOffset(m) { return 15 * -Math.round(m._d.getTimezoneOffset() / 15) } 5920 5921 function getSetOffset(input, keepLocalTime) { var localAdjust, offset = this._offset || 0; return this.isValid() ? null != input ? ("string" == typeof input ? input = offsetFromString(matchShortOffset, input) : Math.abs(input) < 16 && (input *= 60), !this._isUTC && keepLocalTime && (localAdjust = getDateOffset(this)), this._offset = input, this._isUTC = !0, null != localAdjust && this.add(localAdjust, "m"), offset !== input && (!keepLocalTime || this._changeInProgress ? add_subtract__addSubtract(this, create__createDuration(input - offset, "m"), 1, !1) : this._changeInProgress || (this._changeInProgress = !0, utils_hooks__hooks.updateOffset(this, !0), this._changeInProgress = null)), this) : this._isUTC ? offset : getDateOffset(this) : null != input ? this : NaN } 5922 5923 function getSetZone(input, keepLocalTime) { return null != input ? ("string" != typeof input && (input = -input), this.utcOffset(input, keepLocalTime), this) : -this.utcOffset() } 5924 5925 function setOffsetToUTC(keepLocalTime) { return this.utcOffset(0, keepLocalTime) } 5926 5927 function setOffsetToLocal(keepLocalTime) { return this._isUTC && (this.utcOffset(0, keepLocalTime), this._isUTC = !1, keepLocalTime && this.subtract(getDateOffset(this), "m")), this } 5928 5929 function setOffsetToParsedOffset() { 5930 if (this._tzm) this.utcOffset(this._tzm); 5931 else if ("string" == typeof this._i) { 5932 var tZone = offsetFromString(matchOffset, this._i); 5933 0 === tZone ? this.utcOffset(0, !0) : this.utcOffset(offsetFromString(matchOffset, this._i)) 5934 } 5935 return this 5936 } 5937 5938 function hasAlignedHourOffset(input) { return !!this.isValid() && (input = input ? local__createLocal(input).utcOffset() : 0, (this.utcOffset() - input) % 60 === 0) } 5939 5940 function isDaylightSavingTime() { return this.utcOffset() > this.clone().month(0).utcOffset() || this.utcOffset() > this.clone().month(5).utcOffset() } 5941 5942 function isDaylightSavingTimeShifted() { 5943 if (!isUndefined(this._isDSTShifted)) return this._isDSTShifted; 5944 var c = {}; 5945 if (copyConfig(c, this), c = prepareConfig(c), c._a) { 5946 var other = c._isUTC ? create_utc__createUTC(c._a) : local__createLocal(c._a); 5947 this._isDSTShifted = this.isValid() && compareArrays(c._a, other.toArray()) > 0 5948 } else this._isDSTShifted = !1; 5949 return this._isDSTShifted 5950 } 5951 5952 function isLocal() { return !!this.isValid() && !this._isUTC } 5953 5954 function isUtcOffset() { return !!this.isValid() && this._isUTC } 5955 5956 function isUtc() { return !!this.isValid() && (this._isUTC && 0 === this._offset) } 5957 5958 function create__createDuration(input, key) { 5959 var sign, ret, diffRes, duration = input, 5960 match = null; 5961 return isDuration(input) ? duration = { ms: input._milliseconds, d: input._days, M: input._months } : "number" == typeof input ? (duration = {}, key ? duration[key] = input : duration.milliseconds = input) : (match = aspNetRegex.exec(input)) ? (sign = "-" === match[1] ? -1 : 1, duration = { y: 0, d: toInt(match[DATE]) * sign, h: toInt(match[HOUR]) * sign, m: toInt(match[MINUTE]) * sign, s: toInt(match[SECOND]) * sign, ms: toInt(absRound(1e3 * match[MILLISECOND])) * sign }) : (match = isoRegex.exec(input)) ? (sign = "-" === match[1] ? -1 : 1, duration = { y: parseIso(match[2], sign), M: parseIso(match[3], sign), w: parseIso(match[4], sign), d: parseIso(match[5], sign), h: parseIso(match[6], sign), m: parseIso(match[7], sign), s: parseIso(match[8], sign) }) : null == duration ? duration = {} : "object" == typeof duration && ("from" in duration || "to" in duration) && (diffRes = momentsDifference(local__createLocal(duration.from), local__createLocal(duration.to)), duration = {}, duration.ms = diffRes.milliseconds, duration.M = diffRes.months), ret = new Duration(duration), isDuration(input) && hasOwnProp(input, "_locale") && (ret._locale = input._locale), ret 5962 } 5963 5964 function parseIso(inp, sign) { var res = inp && parseFloat(inp.replace(",", ".")); return (isNaN(res) ? 0 : res) * sign } 5965 5966 function positiveMomentsDifference(base, other) { var res = { milliseconds: 0, months: 0 }; return res.months = other.month() - base.month() + 12 * (other.year() - base.year()), base.clone().add(res.months, "M").isAfter(other) && --res.months, res.milliseconds = +other - +base.clone().add(res.months, "M"), res } 5967 5968 function momentsDifference(base, other) { var res; return base.isValid() && other.isValid() ? (other = cloneWithOffset(other, base), base.isBefore(other) ? res = positiveMomentsDifference(base, other) : (res = positiveMomentsDifference(other, base), res.milliseconds = -res.milliseconds, res.months = -res.months), res) : { milliseconds: 0, months: 0 } } 5969 5970 function createAdder(direction, name) { return function(val, period) { var dur, tmp; return null === period || isNaN(+period) || (deprecateSimple(name, "moment()." + name + "(period, number) is deprecated. Please use moment()." + name + "(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."), tmp = val, val = period, period = tmp), val = "string" == typeof val ? +val : val, dur = create__createDuration(val, period), add_subtract__addSubtract(this, dur, direction), this } } 5971 5972 function add_subtract__addSubtract(mom, duration, isAdding, updateOffset) { 5973 var milliseconds = duration._milliseconds, 5974 days = absRound(duration._days), 5975 months = absRound(duration._months); 5976 mom.isValid() && (updateOffset = null == updateOffset || updateOffset, milliseconds && mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding), days && get_set__set(mom, "Date", get_set__get(mom, "Date") + days * isAdding), months && setMonth(mom, get_set__get(mom, "Month") + months * isAdding), 5977 updateOffset && utils_hooks__hooks.updateOffset(mom, days || months)) 5978 } 5979 5980 function getCalendarFormat(myMoment, now) { var diff = myMoment.diff(now, "days", !0); return diff < -6 ? "sameElse" : diff < -1 ? "lastWeek" : diff < 0 ? "lastDay" : diff < 1 ? "sameDay" : diff < 2 ? "nextDay" : diff < 7 ? "nextWeek" : "sameElse" } 5981 5982 function moment_calendar__calendar(time, formats) { 5983 var now = time || local__createLocal(), 5984 sod = cloneWithOffset(now, this).startOf("day"), 5985 format = utils_hooks__hooks.calendarFormat(this, sod) || "sameElse", 5986 output = formats && (isFunction(formats[format]) ? formats[format].call(this, now) : formats[format]);
vendor: 4,741 bytes, lines 5987-6030
5987 return this.format(output || this.localeData().calendar(format, this, local__createLocal(now))) 5988 } 5989 5990 function clone() { return new Moment(this) } 5991 5992 function isAfter(input, units) { var localInput = isMoment(input) ? input : local__createLocal(input); return !(!this.isValid() || !localInput.isValid()) && (units = normalizeUnits(isUndefined(units) ? "millisecond" : units), "millisecond" === units ? this.valueOf() > localInput.valueOf() : localInput.valueOf() < this.clone().startOf(units).valueOf()) } 5993 5994 function isBefore(input, units) { var localInput = isMoment(input) ? input : local__createLocal(input); return !(!this.isValid() || !localInput.isValid()) && (units = normalizeUnits(isUndefined(units) ? "millisecond" : units), "millisecond" === units ? this.valueOf() < localInput.valueOf() : this.clone().endOf(units).valueOf() < localInput.valueOf()) } 5995 5996 function isBetween(from, to, units, inclusivity) { return inclusivity = inclusivity || "()", ("(" === inclusivity[0] ? this.isAfter(from, units) : !this.isBefore(from, units)) && (")" === inclusivity[1] ? this.isBefore(to, units) : !this.isAfter(to, units)) } 5997 5998 function isSame(input, units) { var inputMs, localInput = isMoment(input) ? input : local__createLocal(input); return !(!this.isValid() || !localInput.isValid()) && (units = normalizeUnits(units || "millisecond"), "millisecond" === units ? this.valueOf() === localInput.valueOf() : (inputMs = localInput.valueOf(), this.clone().startOf(units).valueOf() <= inputMs && inputMs <= this.clone().endOf(units).valueOf())) } 5999 6000 function isSameOrAfter(input, units) { return this.isSame(input, units) || this.isAfter(input, units) } 6001 6002 function isSameOrBefore(input, units) { return this.isSame(input, units) || this.isBefore(input, units) } 6003 6004 function diff(input, units, asFloat) { var that, zoneDelta, delta, output; return this.isValid() ? (that = cloneWithOffset(input, this), that.isValid() ? (zoneDelta = 6e4 * (that.utcOffset() - this.utcOffset()), units = normalizeUnits(units), "year" === units || "month" === units || "quarter" === units ? (output = monthDiff(this, that), "quarter" === units ? output /= 3 : "year" === units && (output /= 12)) : (delta = this - that, output = "second" === units ? delta / 1e3 : "minute" === units ? delta / 6e4 : "hour" === units ? delta / 36e5 : "day" === units ? (delta - zoneDelta) / 864e5 : "week" === units ? (delta - zoneDelta) / 6048e5 : delta), asFloat ? output : absFloor(output)) : NaN) : NaN } 6005 6006 function monthDiff(a, b) { 6007 var anchor2, adjust, wholeMonthDiff = 12 * (b.year() - a.year()) + (b.month() - a.month()), 6008 anchor = a.clone().add(wholeMonthDiff, "months"); 6009 return b - anchor < 0 ? (anchor2 = a.clone().add(wholeMonthDiff - 1, "months"), adjust = (b - anchor) / (anchor - anchor2)) : (anchor2 = a.clone().add(wholeMonthDiff + 1, "months"), adjust = (b - anchor) / (anchor2 - anchor)), -(wholeMonthDiff + adjust) || 0 6010 } 6011 6012 function toString() { return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ") } 6013 6014 function moment_format__toISOString() { var m = this.clone().utc(); return 0 < m.year() && m.year() <= 9999 ? isFunction(Date.prototype.toISOString) ? this.toDate().toISOString() : formatMoment(m, "YYYY-MM-DD[T]HH:mm:ss.SSS[Z]") : formatMoment(m, "YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]") } 6015 6016 function moment_format__format(inputString) { inputString || (inputString = this.isUtc() ? utils_hooks__hooks.defaultFormatUtc : utils_hooks__hooks.defaultFormat); var output = formatMoment(this, inputString); return this.localeData().postformat(output) } 6017 6018 function from(time, withoutSuffix) { return this.isValid() && (isMoment(time) && time.isValid() || local__createLocal(time).isValid()) ? create__createDuration({ to: this, from: time }).locale(this.locale()).humanize(!withoutSuffix) : this.localeData().invalidDate() } 6019 6020 function fromNow(withoutSuffix) { return this.from(local__createLocal(), withoutSuffix) } 6021 6022 function to(time, withoutSuffix) { return this.isValid() && (isMoment(time) && time.isValid() || local__createLocal(time).isValid()) ? create__createDuration({ from: this, to: time }).locale(this.locale()).humanize(!withoutSuffix) : this.localeData().invalidDate() } 6023 6024 function toNow(withoutSuffix) { return this.to(local__createLocal(), withoutSuffix) } 6025 6026 function locale(key) { var newLocaleData; return void 0 === key ? this._locale._abbr : (newLocaleData = locale_locales__getLocale(key), null != newLocaleData && (this._locale = newLocaleData), this) } 6027 6028 function localeData() { return this._locale } 6029 6030 function startOf(units) {
vendor: 11,061 bytes, lines 6031-6203
6031 switch (units = normalizeUnits(units)) { 6032 case "year": 6033 this.month(0); 6034 case "quarter": 6035 case "month": 6036 this.date(1); 6037 case "week": 6038 case "isoWeek": 6039 case "day": 6040 case "date": 6041 this.hours(0); 6042 case "hour": 6043 this.minutes(0); 6044 case "minute": 6045 this.seconds(0); 6046 case "second": 6047 this.milliseconds(0) 6048 } 6049 return "week" === units && this.weekday(0), "isoWeek" === units && this.isoWeekday(1), "quarter" === units && this.month(3 * Math.floor(this.month() / 3)), this 6050 } 6051 6052 function endOf(units) { return units = normalizeUnits(units), void 0 === units || "millisecond" === units ? this : ("date" === units && (units = "day"), this.startOf(units).add(1, "isoWeek" === units ? "week" : units).subtract(1, "ms")) } 6053 6054 function to_type__valueOf() { return this._d.valueOf() - 6e4 * (this._offset || 0) } 6055 6056 function unix() { return Math.floor(this.valueOf() / 1e3) } 6057 6058 function toDate() { return new Date(this.valueOf()) } 6059 6060 function toArray() { var m = this; return [m.year(), m.month(), m.date(), m.hour(), m.minute(), m.second(), m.millisecond()] } 6061 6062 function toObject() { var m = this; return { years: m.year(), months: m.month(), date: m.date(), hours: m.hours(), minutes: m.minutes(), seconds: m.seconds(), milliseconds: m.milliseconds() } } 6063 6064 function toJSON() { return this.isValid() ? this.toISOString() : null } 6065 6066 function moment_valid__isValid() { return valid__isValid(this) } 6067 6068 function parsingFlags() { return extend({}, getParsingFlags(this)) } 6069 6070 function invalidAt() { return getParsingFlags(this).overflow } 6071 6072 function creationData() { return { input: this._i, format: this._f, locale: this._locale, isUTC: this._isUTC, strict: this._strict } } 6073 6074 function addWeekYearFormatToken(token, getter) { addFormatToken(0, [token, token.length], 0, getter) } 6075 6076 function getSetWeekYear(input) { return getSetWeekYearHelper.call(this, input, this.week(), this.weekday(), this.localeData()._week.dow, this.localeData()._week.doy) } 6077 6078 function getSetISOWeekYear(input) { return getSetWeekYearHelper.call(this, input, this.isoWeek(), this.isoWeekday(), 1, 4) } 6079 6080 function getISOWeeksInYear() { return weeksInYear(this.year(), 1, 4) } 6081 6082 function getWeeksInYear() { var weekInfo = this.localeData()._week; return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy) } 6083 6084 function getSetWeekYearHelper(input, week, weekday, dow, doy) { var weeksTarget; return null == input ? weekOfYear(this, dow, doy).year : (weeksTarget = weeksInYear(input, dow, doy), week > weeksTarget && (week = weeksTarget), setWeekAll.call(this, input, week, weekday, dow, doy)) } 6085 6086 function setWeekAll(weekYear, week, weekday, dow, doy) { 6087 var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy), 6088 date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear); 6089 return this.year(date.getUTCFullYear()), this.month(date.getUTCMonth()), this.date(date.getUTCDate()), this 6090 } 6091 6092 function getSetQuarter(input) { return null == input ? Math.ceil((this.month() + 1) / 3) : this.month(3 * (input - 1) + this.month() % 3) } 6093 6094 function getSetDayOfYear(input) { var dayOfYear = Math.round((this.clone().startOf("day") - this.clone().startOf("year")) / 864e5) + 1; return null == input ? dayOfYear : this.add(input - dayOfYear, "d") } 6095 6096 function parseMs(input, array) { array[MILLISECOND] = toInt(1e3 * ("0." + input)) } 6097 6098 function getZoneAbbr() { return this._isUTC ? "UTC" : "" } 6099 6100 function getZoneName() { return this._isUTC ? "Coordinated Universal Time" : "" } 6101 6102 function moment_moment__createUnix(input) { return local__createLocal(1e3 * input) } 6103 6104 function moment_moment__createInZone() { return local__createLocal.apply(null, arguments).parseZone() } 6105 6106 function preParsePostFormat(string) { return string } 6107 6108 function lists__get(format, index, field, setter) { 6109 var locale = locale_locales__getLocale(), 6110 utc = create_utc__createUTC().set(setter, index); 6111 return locale[field](utc, format) 6112 } 6113 6114 function listMonthsImpl(format, index, field) { if ("number" == typeof format && (index = format, format = void 0), format = format || "", null != index) return lists__get(format, index, field, "month"); var i, out = []; for (i = 0; i < 12; i++) out[i] = lists__get(format, i, field, "month"); return out } 6115 6116 function listWeekdaysImpl(localeSorted, format, index, field) { 6117 "boolean" == typeof localeSorted ? ("number" == typeof format && (index = format, format = void 0), format = format || "") : (format = localeSorted, index = format, localeSorted = !1, "number" == typeof format && (index = format, format = void 0), format = format || ""); 6118 var locale = locale_locales__getLocale(), 6119 shift = localeSorted ? locale._week.dow : 0; 6120 if (null != index) return lists__get(format, (index + shift) % 7, field, "day"); 6121 var i, out = []; 6122 for (i = 0; i < 7; i++) out[i] = lists__get(format, (i + shift) % 7, field, "day"); 6123 return out 6124 } 6125 6126 function lists__listMonths(format, index) { return listMonthsImpl(format, index, "months") } 6127 6128 function lists__listMonthsShort(format, index) { return listMonthsImpl(format, index, "monthsShort") } 6129 6130 function lists__listWeekdays(localeSorted, format, index) { return listWeekdaysImpl(localeSorted, format, index, "weekdays") } 6131 6132 function lists__listWeekdaysShort(localeSorted, format, index) { return listWeekdaysImpl(localeSorted, format, index, "weekdaysShort") } 6133 6134 function lists__listWeekdaysMin(localeSorted, format, index) { return listWeekdaysImpl(localeSorted, format, index, "weekdaysMin") } 6135 6136 function duration_abs__abs() { var data = this._data; return this._milliseconds = mathAbs(this._milliseconds), this._days = mathAbs(this._days), this._months = mathAbs(this._months), data.milliseconds = mathAbs(data.milliseconds), data.seconds = mathAbs(data.seconds), data.minutes = mathAbs(data.minutes), data.hours = mathAbs(data.hours), data.months = mathAbs(data.months), data.years = mathAbs(data.years), this } 6137 6138 function duration_add_subtract__addSubtract(duration, input, value, direction) { var other = create__createDuration(input, value); return duration._milliseconds += direction * other._milliseconds, duration._days += direction * other._days, duration._months += direction * other._months, duration._bubble() } 6139 6140 function duration_add_subtract__add(input, value) { return duration_add_subtract__addSubtract(this, input, value, 1) } 6141 6142 function duration_add_subtract__subtract(input, value) { return duration_add_subtract__addSubtract(this, input, value, -1) } 6143 6144 function absCeil(number) { return number < 0 ? Math.floor(number) : Math.ceil(number) } 6145 6146 function bubble() { 6147 var seconds, minutes, hours, years, monthsFromDays, milliseconds = this._milliseconds, 6148 days = this._days, 6149 months = this._months, 6150 data = this._data; 6151 return milliseconds >= 0 && days >= 0 && months >= 0 || milliseconds <= 0 && days <= 0 && months <= 0 || (milliseconds += 864e5 * absCeil(monthsToDays(months) + days), days = 0, months = 0), data.milliseconds = milliseconds % 1e3, seconds = absFloor(milliseconds / 1e3), data.seconds = seconds % 60, minutes = absFloor(seconds / 60), data.minutes = minutes % 60, hours = absFloor(minutes / 60), data.hours = hours % 24, days += absFloor(hours / 24), monthsFromDays = absFloor(daysToMonths(days)), months += monthsFromDays, days -= absCeil(monthsToDays(monthsFromDays)), years = absFloor(months / 12), months %= 12, data.days = days, data.months = months, data.years = years, this 6152 } 6153 6154 function daysToMonths(days) { return 4800 * days / 146097 } 6155 6156 function monthsToDays(months) { return 146097 * months / 4800 } 6157 6158 function as(units) { 6159 var days, months, milliseconds = this._milliseconds; 6160 if (units = normalizeUnits(units), "month" === units || "year" === units) return days = this._days + milliseconds / 864e5, months = this._months + daysToMonths(days), "month" === units ? months : months / 12; 6161 switch (days = this._days + Math.round(monthsToDays(this._months)), units) { 6162 case "week": 6163 return days / 7 + milliseconds / 6048e5; 6164 case "day": 6165 return days + milliseconds / 864e5; 6166 case "hour": 6167 return 24 * days + milliseconds / 36e5; 6168 case "minute": 6169 return 1440 * days + milliseconds / 6e4; 6170 case "second": 6171 return 86400 * days + milliseconds / 1e3; 6172 case "millisecond": 6173 return Math.floor(864e5 * days) + milliseconds; 6174 default: 6175 throw new Error("Unknown unit " + units) 6176 } 6177 } 6178 6179 function duration_as__valueOf() { return this._milliseconds + 864e5 * this._days + this._months % 12 * 2592e6 + 31536e6 * toInt(this._months / 12) } 6180 6181 function makeAs(alias) { return function() { return this.as(alias) } } 6182 6183 function duration_get__get(units) { return units = normalizeUnits(units), this[units + "s"]() } 6184 6185 function makeGetter(name) { return function() { return this._data[name] } } 6186 6187 function weeks() { return absFloor(this.days() / 7) } 6188 6189 function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) { return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture) } 6190 6191 function duration_humanize__relativeTime(posNegDuration, withoutSuffix, locale) { 6192 var duration = create__createDuration(posNegDuration).abs(), 6193 seconds = round(duration.as("s")), 6194 minutes = round(duration.as("m")), 6195 hours = round(duration.as("h")), 6196 days = round(duration.as("d")), 6197 months = round(duration.as("M")), 6198 years = round(duration.as("y")), 6199 a = seconds < thresholds.s && ["s", seconds] || minutes <= 1 && ["m"] || minutes < thresholds.m && ["mm", minutes] || hours <= 1 && ["h"] || hours < thresholds.h && ["hh", hours] || days <= 1 && ["d"] || days < thresholds.d && ["dd", days] || months <= 1 && ["M"] || months < thresholds.M && ["MM", months] || years <= 1 && ["y"] || ["yy", years]; 6200 return a[2] = withoutSuffix, a[3] = +posNegDuration > 0, a[4] = locale, substituteTimeAgo.apply(null, a) 6201 } 6202 6203 function duration_humanize__getSetRelativeTimeRounding(rou
vendor: 21,762 bytes, lines 6203-6560
6203ndingFunction) { return void 0 === roundingFunction ? round : "function" == typeof roundingFunction && (round = roundingFunction, !0) } 6204 6205 function duration_humanize__getSetRelativeTimeThreshold(threshold, limit) { return void 0 !== thresholds[threshold] && (void 0 === limit ? thresholds[threshold] : (thresholds[threshold] = limit, !0)) } 6206 6207 function humanize(withSuffix) { 6208 var locale = this.localeData(), 6209 output = duration_humanize__relativeTime(this, !withSuffix, locale); 6210 return withSuffix && (output = locale.pastFuture(+this, output)), locale.postformat(output) 6211 } 6212 6213 function iso_string__toISOString() { 6214 var minutes, hours, years, seconds = iso_string__abs(this._milliseconds) / 1e3, 6215 days = iso_string__abs(this._days), 6216 months = iso_string__abs(this._months); 6217 minutes = absFloor(seconds / 60), hours = absFloor(minutes / 60), seconds %= 60, minutes %= 60, years = absFloor(months / 12), months %= 12; 6218 var Y = years, 6219 M = months, 6220 D = days, 6221 h = hours, 6222 m = minutes, 6223 s = seconds, 6224 total = this.asSeconds(); 6225 return total ? (total < 0 ? "-" : "") + "P" + (Y ? Y + "Y" : "") + (M ? M + "M" : "") + (D ? D + "D" : "") + (h || m || s ? "T" : "") + (h ? h + "H" : "") + (m ? m + "M" : "") + (s ? s + "S" : "") : "P0D" 6226 } 6227 6228 function be__plural(word, num) { var forms = word.split("_"); return num % 10 === 1 && num % 100 !== 11 ? forms[0] : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2] } 6229 6230 function be__relativeTimeWithPlural(number, withoutSuffix, key) { var format = { mm: withoutSuffix ? "Ãâ¦Ã²ÃâûÃâýð_Ãâ¦Ã²ÃâûÃâýÃâ¹_Ãâ¦Ã²ÃâûÃâý" : "Ãâ¦Ã²ÃâûÃâÃÂ½ÃÆ_Ãâ¦Ã²ÃâûÃâýÃâ¹_Ãâ¦Ã²ÃâûÃâý", hh: withoutSuffix ? "óðô÷Ãâýð_óðô÷ÃâýÃâ¹_óðô÷Ãâý" : "óðô÷ÃâÃÂ½ÃÆ_óðô÷ÃâýÃâ¹_óðô÷Ãâý", dd: "ô÷õýÃÅ_ôýÃâ_ô÷Ãâý", MM: "üõÃÂÃÂÃâ _üõÃÂÃÂÃâ Ãâ¹_üõÃÂÃÂÃâ ðÞ", yy: "óþô_óðôÃâ¹_óðôþÞ" }; return "m" === key ? withoutSuffix ? "Ãâ¦Ã²ÃâûÃâýð" : "Ãâ¦Ã²ÃâûÃâÃÂ½ÃÆ" : "h" === key ? withoutSuffix ? "óðô÷Ãâýð" : "óðô÷ÃâÃÂ½ÃÆ" : number + " " + be__plural(format[key], +number) } 6231 6232 function relativeTimeWithMutation(number, withoutSuffix, key) { var format = { mm: "munutenn", MM: "miz", dd: "devezh" }; return number + " " + mutation(format[key], number) } 6233 6234 function specialMutationForYears(number) { 6235 switch (lastNumber(number)) { 6236 case 1: 6237 case 3: 6238 case 4: 6239 case 5: 6240 case 9: 6241 return number + " bloaz"; 6242 default: 6243 return number + " vloaz" 6244 } 6245 } 6246 6247 function lastNumber(number) { return number > 9 ? lastNumber(number % 10) : number } 6248 6249 function mutation(text, number) { return 2 === number ? softMutation(text) : text } 6250 6251 function softMutation(text) { var mutationTable = { m: "v", b: "v", d: "z" }; return void 0 === mutationTable[text.charAt(0)] ? text : mutationTable[text.charAt(0)] + text.substring(1) } 6252 6253 function bs__translate(number, withoutSuffix, key) { 6254 var result = number + " "; 6255 switch (key) { 6256 case "m": 6257 return withoutSuffix ? "jedna minuta" : "jedne minute"; 6258 case "mm": 6259 return result += 1 === number ? "minuta" : 2 === number || 3 === number || 4 === number ? "minute" : "minuta"; 6260 case "h": 6261 return withoutSuffix ? "jedan sat" : "jednog sata"; 6262 case "hh": 6263 return result += 1 === number ? "sat" : 2 === number || 3 === number || 4 === number ? "sata" : "sati"; 6264 case "dd": 6265 return result += 1 === number ? "dan" : "dana"; 6266 case "MM": 6267 return result += 1 === number ? "mjesec" : 2 === number || 3 === number || 4 === number ? "mjeseca" : "mjeseci"; 6268 case "yy": 6269 return result += 1 === number ? "godina" : 2 === number || 3 === number || 4 === number ? "godine" : "godina" 6270 } 6271 } 6272 6273 function cs__plural(n) { return n > 1 && n < 5 && 1 !== ~~(n / 10) } 6274 6275 function cs__translate(number, withoutSuffix, key, isFuture) { 6276 var result = number + " "; 6277 switch (key) { 6278 case "s": 6279 return withoutSuffix || isFuture ? "pár sekund" : "pár sekundami"; 6280 case "m": 6281 return withoutSuffix ? "minuta" : isFuture ? "minutu" : "minutou"; 6282 case "mm": 6283 return withoutSuffix || isFuture ? result + (cs__plural(number) ? "minuty" : "minut") : result + "minutami"; 6284 case "h": 6285 return withoutSuffix ? "hodina" : isFuture ? "hodinu" : "hodinou"; 6286 case "hh": 6287 return withoutSuffix || isFuture ? result + (cs__plural(number) ? "hodiny" : "hodin") : result + "hodinami"; 6288 case "d": 6289 return withoutSuffix || isFuture ? "den" : "dnem"; 6290 case "dd": 6291 return withoutSuffix || isFuture ? result + (cs__plural(number) ? "dny" : "dnÃÂ") : result + "dny"; 6292 case "M": 6293 return withoutSuffix || isFuture ? "mÃâºsÃÂc" : "mÃâºsÃÂcem"; 6294 case "MM": 6295 return withoutSuffix || isFuture ? result + (cs__plural(number) ? "mÃâºsÃÂce" : "mÃâºsÃÂcà ¯") : result + "mÃâºsÃÂci"; 6296 case "y": 6297 return withoutSuffix || isFuture ? "rok" : "rokem"; 6298 case "yy": 6299 return withoutSuffix || isFuture ? result + (cs__plural(number) ? "roky" : "let") : result + "lety" 6300 } 6301 } 6302 6303 function de_at__processRelativeTime(number, withoutSuffix, key, isFuture) { var format = { m: ["eine Minute", "einer Minute"], h: ["eine Stunde", "einer Stunde"], d: ["ein Tag", "einem Tag"], dd: [number + " Tage", number + " Tagen"], M: ["ein Monat", "einem Monat"], MM: [number + " Monate", number + " Monaten"], y: ["ein Jahr", "einem Jahr"], yy: [number + " Jahre", number + " Jahren"] }; return withoutSuffix ? format[key][0] : format[key][1] } 6304 6305 function de__processRelativeTime(number, withoutSuffix, key, isFuture) { var format = { m: ["eine Minute", "einer Minute"], h: ["eine Stunde", "einer Stunde"], d: ["ein Tag", "einem Tag"], dd: [number + " Tage", number + " Tagen"], M: ["ein Monat", "einem Monat"], MM: [number + " Monate", number + " Monaten"], y: ["ein Jahr", "einem Jahr"], yy: [number + " Jahre", number + " Jahren"] }; return withoutSuffix ? format[key][0] : format[key][1] } 6306 6307 function et__processRelativeTime(number, withoutSuffix, key, isFuture) { var format = { s: ["mõne sekundi", "mõni sekund", "paar sekundit"], m: ["ühe minuti", "üks minut"], mm: [number + " minuti", number + " minutit"], h: ["ühe tunni", "tund aega", "üks tund"], hh: [number + " tunni", number + " tundi"], d: ["ühe päeva", "üks päev"], M: ["kuu aja", "kuu aega", "üks kuu"], MM: [number + " kuu", number + " kuud"], y: ["ühe aasta", "aasta", "üks aasta"], yy: [number + " aasta", number + " aastat"] }; return withoutSuffix ? format[key][2] ? format[key][2] : format[key][1] : isFuture ? format[key][0] : format[key][1] } 6308 6309 function fi__translate(number, withoutSuffix, key, isFuture) { 6310 var result = ""; 6311 switch (key) { 6312 case "s": 6313 return isFuture ? "muutaman sekunnin" : "muutama sekunti"; 6314 case "m": 6315 return isFuture ? "minuutin" : "minuutti"; 6316 case "mm": 6317 result = isFuture ? "minuutin" : "minuuttia"; 6318 break; 6319 case "h": 6320 return isFuture ? "tunnin" : "tunti"; 6321 case "hh": 6322 result = isFuture ? "tunnin" : "tuntia"; 6323 break; 6324 case "d": 6325 return isFuture ? "päivän" : "päivä"; 6326 case "dd": 6327 result = isFuture ? "päivän" : "päivää"; 6328 break; 6329 case "M": 6330 return isFuture ? "kuukauden" : "kuukausi"; 6331 case "MM": 6332 result = isFuture ? "kuukauden" : "kuukautta"; 6333 break; 6334 case "y": 6335 return isFuture ? "vuoden" : "vuosi"; 6336 case "yy": 6337 result = isFuture ? "vuoden" : "vuotta" 6338 } 6339 return result = verbalNumber(number, isFuture) + " " + result 6340 } 6341 6342 function verbalNumber(number, isFuture) { return number < 10 ? isFuture ? numbersFuture[number] : numbersPast[number] : number } 6343 6344 function hr__translate(number, withoutSuffix, key) { 6345 var result = number + " "; 6346 switch (key) { 6347 case "m": 6348 return withoutSuffix ? "jedna minuta" : "jedne minute"; 6349 case "mm": 6350 return result += 1 === number ? "minuta" : 2 === number || 3 === number || 4 === number ? "minute" : "minuta"; 6351 case "h": 6352 return withoutSuffix ? "jedan sat" : "jednog sata"; 6353 case "hh": 6354 return result += 1 === number ? "sat" : 2 === number || 3 === number || 4 === number ? "sata" : "sati"; 6355 case "dd": 6356 return result += 1 === number ? "dan" : "dana"; 6357 case "MM": 6358 return result += 1 === number ? "mjesec" : 2 === number || 3 === number || 4 === number ? "mjeseca" : "mjeseci"; 6359 case "yy": 6360 return result += 1 === number ? "godina" : 2 === number || 3 === number || 4 === number ? "godine" : "godina" 6361 } 6362 } 6363 6364 function hu__translate(number, withoutSuffix, key, isFuture) { 6365 var num = number; 6366 switch (key) { 6367 case "s": 6368 return isFuture || withoutSuffix ? "néhány másodperc" : "néhány másodperce"; 6369 case "m": 6370 return "egy" + (isFuture || withoutSuffix ? " perc" : " perce"); 6371 case "mm": 6372 return num + (isFuture || withoutSuffix ? " perc" : " perce"); 6373 case "h": 6374 return "egy" + (isFuture || withoutSuffix ? " óra" : " órája"); 6375 case "hh": 6376 return num + (isFuture || withoutSuffix ? " óra" : " órája"); 6377 case "d": 6378 return "egy" + (isFuture || withoutSuffix ? " nap" : " napja"); 6379 case "dd": 6380 return num + (isFuture || withoutSuffix ? " nap" : " napja"); 6381 case "M": 6382 return "egy" + (isFuture || withoutSuffix ? " hónap" : " hónapja"); 6383 case "MM": 6384 return num + (isFuture || withoutSuffix ? " hónap" : " hónapja"); 6385 case "y": 6386 return "egy" + (isFuture || withoutSuffix ? " év" : " éve"); 6387 case "yy": 6388 return num + (isFuture || withoutSuffix ? " év" : " éve") 6389 } 6390 return "" 6391 } 6392 6393 function week(isFuture) { return (isFuture ? "" : "[múlt] ") + "[" + weekEndings[this.day()] + "] LT[-kor]" } 6394 6395 function is__plural(n) { return n % 100 === 11 || n % 10 !== 1 } 6396 6397 function is__translate(number, withoutSuffix, key, isFuture) { 6398 var result = number + " "; 6399 switch (key) { 6400 case "s": 6401 return withoutSuffix || isFuture ? "nokkrar sekúndur" : "nokkrum sekúndum"; 6402 case "m": 6403 return withoutSuffix ? "mÃÂnúta" : "mÃÂnútu"; 6404 case "mm": 6405 return is__plural(number) ? result + (withoutSuffix || isFuture ? "mÃÂnútur" : "mÃÂnútum") : withoutSuffix ? result + "mÃÂnúta" : result + "mÃÂnútu"; 6406 case "hh": 6407 return is__plural(number) ? result + (withoutSuffix || isFuture ? "klukkustundir" : "klukkustundum") : result + "klukkustund"; 6408 case "d": 6409 return withoutSuffix ? "dagur" : isFuture ? "dag" : "degi"; 6410 case "dd": 6411 return is__plural(number) ? withoutSuffix ? result + "dagar" : result + (isFuture ? "daga" : "dögum") : withoutSuffix ? result + "dagur" : result + (isFuture ? "dag" : "degi"); 6412 case "M": 6413 return withoutSuffix ? "mánuður" : isFuture ? "mánuð" : "mánuði"; 6414 case "MM": 6415 return is__plural(number) ? withoutSuffix ? result + "mánuðir" : result + (isFuture ? "mánuði" : "mánuðum") : withoutSuffix ? result + "mánuður" : result + (isFuture ? "mánuð" : "mánuði"); 6416 case "y": 6417 return withoutSuffix || isFuture ? "ár" : "ári"; 6418 case "yy": 6419 return is__plural(number) ? result + (withoutSuffix || isFuture ? "ár" : "árum") : result + (withoutSuffix || isFuture ? "ár" : "ári") 6420 } 6421 } 6422 6423 function lb__processRelativeTime(number, withoutSuffix, key, isFuture) { var format = { m: ["eng Minutt", "enger Minutt"], h: ["eng Stonn", "enger Stonn"], d: ["een Dag", "engem Dag"], M: ["ee Mount", "engem Mount"], y: ["ee Joer", "engem Joer"] }; return withoutSuffix ? format[key][0] : format[key][1] } 6424 6425 function processFutureTime(string) { var number = string.substr(0, string.indexOf(" ")); return eifelerRegelAppliesToNumber(number) ? "a " + string : "an " + string } 6426 6427 function processPastTime(string) { var number = string.substr(0, string.indexOf(" ")); return eifelerRegelAppliesToNumber(number) ? "viru " + string : "virun " + string } 6428 6429 function eifelerRegelAppliesToNumber(number) { 6430 if (number = parseInt(number, 10), isNaN(number)) return !1; 6431 if (number < 0) return !0; 6432 if (number < 10) return 4 <= number && number <= 7; 6433 if (number < 100) { 6434 var lastDigit = number % 10, 6435 firstDigit = number / 10; 6436 return eifelerRegelAppliesToNumber(0 === lastDigit ? firstDigit : lastDigit) 6437 } 6438 if (number < 1e4) { for (; number >= 10;) number /= 10; return eifelerRegelAppliesToNumber(number) } 6439 return number /= 1e3, eifelerRegelAppliesToNumber(number) 6440 } 6441 6442 function translateSeconds(number, withoutSuffix, key, isFuture) { return withoutSuffix ? "kelios sekundÃâs" : isFuture ? "kelià ³ sekundà ¾ià ³" : "kelias sekundes" } 6443 6444 function translateSingular(number, withoutSuffix, key, isFuture) { return withoutSuffix ? forms(key)[0] : isFuture ? forms(key)[1] : forms(key)[2] } 6445 6446 function special(number) { return number % 10 === 0 || number > 10 && number < 20 } 6447 6448 function forms(key) { return lt__units[key].split("_") } 6449 6450 function lt__translate(number, withoutSuffix, key, isFuture) { var result = number + " "; return 1 === number ? result + translateSingular(number, withoutSuffix, key[0], isFuture) : withoutSuffix ? result + (special(number) ? forms(key)[1] : forms(key)[0]) : isFuture ? result + forms(key)[1] : result + (special(number) ? forms(key)[1] : forms(key)[2]) } 6451 6452 function lv__format(forms, number, withoutSuffix) { return withoutSuffix ? number % 10 === 1 && number % 100 !== 11 ? forms[2] : forms[3] : number % 10 === 1 && number % 100 !== 11 ? forms[0] : forms[1] } 6453 6454 function lv__relativeTimeWithPlural(number, withoutSuffix, key) { return number + " " + lv__format(lv__units[key], number, withoutSuffix) } 6455 6456 function relativeTimeWithSingular(number, withoutSuffix, key) { return lv__format(lv__units[key], number, withoutSuffix) } 6457 6458 function relativeSeconds(number, withoutSuffix) { return withoutSuffix ? "daà ¾as sekundes" : "daà ¾ÃÂm sekundÃâm" } 6459 6460 function relativeTimeMr(number, withoutSuffix, string, isFuture) { 6461 var output = ""; 6462 if (withoutSuffix) switch (string) { 6463 case "s": 6464 output = "à ¤â¢Ã ¤¾à ¤¹à ¥⬠à ¤¸à ¥â¡Ã ¤â¢Ã ¤âà ¤¦"; 6465 break; 6466 case "m": 6467 output = "à ¤Âà ¤⢠à ¤®à ¤¿à ¤¨à ¤¿à ¤Ÿ"; 6468 break; 6469 case "mm": 6470 output = "%d à ¤®à ¤¿à ¤¨à ¤¿à ¤Ÿà ¥â¡"; 6471 break; 6472 case "h": 6473 output = "à ¤Âà ¤⢠à ¤¤à ¤¾à ¤¸"; 6474 break; 6475 case "hh": 6476 output = "%d à ¤¤à ¤¾à ¤¸"; 6477 break; 6478 case "d": 6479 output = "à ¤Âà ¤⢠à ¤¦à ¤¿à ¤µà ¤¸"; 6480 break; 6481 case "dd": 6482 output = "%d à ¤¦à ¤¿à ¤µà ¤¸"; 6483 break; 6484 case "M": 6485 output = "à ¤Âà ¤⢠à ¤®à ¤¹à ¤¿à ¤¨à ¤¾"; 6486 break; 6487 case "MM": 6488 output = "%d à ¤®à ¤¹à ¤¿à ¤¨à ¥â¡"; 6489 break; 6490 case "y": 6491 output = "à ¤Âà ¤⢠à ¤µà ¤°à ¥Âà ¤·"; 6492 break; 6493 case "yy": 6494 output = "%d à ¤µà ¤°à ¥Âà ¤·à ¥â¡" 6495 } else switch (string) { 6496 case "s": 6497 output = "à ¤â¢Ã ¤¾à ¤¹à ¥⬠à ¤¸à ¥â¡Ã ¤â¢Ã ¤âà ¤¦à ¤¾à ¤â"; 6498 break; 6499 case "m": 6500 output = "à ¤Âà ¤â¢Ã ¤¾ à ¤®à ¤¿à ¤¨à ¤¿à ¤Ÿà ¤¾"; 6501 break; 6502 case "mm": 6503 output = "%d à ¤®à ¤¿à ¤¨à ¤¿à ¤Ÿà ¤¾à ¤â"; 6504 break; 6505 case "h": 6506 output = "à ¤Âà ¤â¢Ã ¤¾ à ¤¤à ¤¾à ¤¸à ¤¾"; 6507 break; 6508 case "hh": 6509 output = "%d à ¤¤à ¤¾à ¤¸à ¤¾à ¤â"; 6510 break; 6511 case "d": 6512 output = "à ¤Âà ¤â¢Ã ¤¾ à ¤¦à ¤¿à ¤µà ¤¸à ¤¾"; 6513 break; 6514 case "dd": 6515 output = "%d à ¤¦à ¤¿à ¤µà ¤¸à ¤¾à ¤â"; 6516 break; 6517 case "M": 6518 output = "à ¤Âà ¤â¢Ã ¤¾ à ¤®à ¤¹à ¤¿à ¤¨à ¥Âà ¤¯à ¤¾"; 6519 break; 6520 case "MM": 6521 output = "%d à ¤®à ¤¹à ¤¿à ¤¨à ¥Âà ¤¯à ¤¾à ¤â"; 6522 break; 6523 case "y": 6524 output = "à ¤Âà ¤â¢Ã ¤¾ à ¤µà ¤°à ¥Âà ¤·à ¤¾"; 6525 break; 6526 case "yy": 6527 output = "%d à ¤µà ¤°à ¥Âà ¤·à ¤¾à ¤â" 6528 } 6529 return output.replace(/%d/i, number) 6530 } 6531 6532 function pl__plural(n) { return n % 10 < 5 && n % 10 > 1 && ~~(n / 10) % 10 !== 1 } 6533 6534 function pl__translate(number, withoutSuffix, key) { 6535 var result = number + " "; 6536 switch (key) { 6537 case "m": 6538 return withoutSuffix ? "minuta" : "minutÃâ¢"; 6539 case "mm": 6540 return result + (pl__plural(number) ? "minuty" : "minut"); 6541 case "h": 6542 return withoutSuffix ? "godzina" : "godzinÃâ¢"; 6543 case "hh": 6544 return result + (pl__plural(number) ? "godziny" : "godzin"); 6545 case "MM": 6546 return result + (pl__plural(number) ? "miesiÃâ¦ce" : "miesiÃâ¢cy"); 6547 case "yy": 6548 return result + (pl__plural(number) ? "lata" : "lat") 6549 } 6550 } 6551 6552 function ro__relativeTimeWithPlural(number, withoutSuffix, key) { 6553 var format = { mm: "minute", hh: "ore", dd: "zile", MM: "luni", yy: "ani" }, 6554 separator = " "; 6555 return (number % 100 >= 20 || number >= 100 && number % 100 === 0) && (separator = " de "), number + separator + format[key] 6556 } 6557 6558 function ru__plural(word, num) { var forms = word.split("_"); return num % 10 === 1 && num % 100 !== 11 ? forms[0] : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2] } 6559 6560 function ru__relativeTimeWithPlural(number, withoutSuffix, key) { var format = { mm: withoutSuffix ? "üøÃÂ½ÃÆÃâð_üøÃÂ½ÃÆÃâÃâ¹_üøÃÂ½ÃÆÃâ" : "üøÃÂ½ÃÆÃâÃÆ_üøÃÂ½ÃÆÃâÃâ¹_üøÃÂ½ÃÆÃâ", hh: "Ãâ¡Ã°ÃÂ_Ãâ¡Ã°ÃÂð_Ãâ¡Ã°ÃÂþò", dd: "ôõýÃÅ_ôýÃÂ_ôýõù", MM: "üõÃÂÃÂÃâ _üõÃÂÃÂÃâ ð_üõÃÂÃÂÃâ õò", yy: "óþô_óþôð_
6560ûõÃâ" }; return "m" === key ? withoutSuffix ? "üøÃÂ½ÃÆÃâð" : "üøÃÂ½ÃÆÃâÃÆ" : number + " " + ru__plural(format[key], +number) } 6561 6562 function sk__plural(n) { return n > 1 && n < 5 } 6563 6564 function sk__translate(number, withoutSuffix, key, isFuture) { 6565 var result = number + " "; 6566 switch (key) { 6567 case "s": 6568 return withoutSuffix || isFuture ? "pár sekúnd" : "pár sekundami"; 6569 case "m": 6570 return withoutSuffix ? "minúta" : isFuture ? "minútu" : "minútou"; 6571 case "mm": 6572 return withoutSuffix || isFuture ? result + (sk__plural(number) ? "minúty" : "minút") : result + "minútami"; 6573 case "h": 6574 return withoutSuffix ? "hodina" : isFuture ? "hodinu" : "hodinou"; 6575 case "hh": 6576 return withoutSuffix || isFuture ? result + (sk__plural(number) ? "hodiny" : "hodÃÂn") : result + "hodinami"; 6577 case "d": 6578 return withoutSuffix || isFuture ? "deà Ë" : "dà Ëom"; 6579 case "dd": 6580 return withoutSuffix || isFuture ? result + (sk__plural(number) ? "dni" : "dnÃÂ") : result + "dà Ëami"; 6581 case "M": 6582 return withoutSuffix || isFuture ? "mesiac" : "mesiacom"; 6583 case "MM": 6584 return withoutSuffix || isFuture ? result + (sk__plural(number) ? "mesiace" : "mesiacov") : result + "mesiacmi"; 6585 case "y": 6586 return withoutSuffix || isFuture ? "rok" : "rokom"; 6587 case "yy": 6588 return withoutSuffix || isFuture ? result + (sk__plural(number) ? "roky" : "rokov") : result + "rokmi" 6589 } 6590 } 6591 6592 function sl__processRelativeTime(number, withoutSuffix, key, isFuture) { 6593 var result = number + " "; 6594 switch (key) { 6595 case "s": 6596 return withoutSuffix || isFuture ? "nekaj sekund" : "nekaj sekundami"; 6597 case "m": 6598 return withoutSuffix ? "ena minuta" : "eno minuto"; 6599 case "mm": 6600 return result += 1 === number ? withoutSuffix ? "minuta" : "minuto" : 2 === number ? withoutSuffix || isFuture ? "minuti" : "minutama" : number < 5 ? withoutSuffix || isFuture ? "minute" : "minutami" : withoutSuffix || isFuture ? "minut" : "minutami"; 6601 case "h": 6602 return withoutSuffix ? "ena ura" : "eno uro"; 6603 case "hh": 6604 return result += 1 === number ? withoutSuffix ? "ura" : "uro" : 2 === number ? withoutSuffix || isFuture ? "uri" : "urama" : number < 5 ? withoutSuffix || isFuture ? "ure" : "urami" : withoutSuffix || isFuture ? "ur" : "urami"; 6605 case "d": 6606 return withoutSuffix || isFuture ? "en dan" : "enim dnem"; 6607 case "dd": 6608 return result += 1 === number ? withoutSuffix || isFuture ? "dan" : "dnem" : 2 === number ? withoutSuffix || isFuture ? "dni" : "dnevoma" : withoutSuffix || isFuture ? "dni" : "dnevi"; 6609 case "M": 6610 return withoutSuffix || isFuture ? "en mesec" : "enim mesecem"; 6611 case "MM": 6612 return result += 1 === number ? withoutSuffix || isFuture ? "mesec" : "mesecem" : 2 === number ? withoutSuffix || isFuture ? "meseca" : "mesecema" : number < 5 ? withoutSuffix || isFuture ? "mesece" : "meseci" : withoutSuffix || isFuture ? "mesecev" : "meseci"; 6613 case "y": 6614 return withoutSuffix || isFuture ? "eno leto" : "enim letom"; 6615 case "yy": 6616 return result += 1 === number ? withoutSuffix || isFuture ? "leto" : "letom" : 2 === number ? withoutSuffix || isFuture ? "leti" : "letoma" : number < 5 ? withoutSuffix || isFuture ? "leta" : "leti" : withoutSuffix || isFuture ? "let" : "leti" 6617 } 6618 } 6619 6620 function translateFuture(output) { var time = output; return time = output.indexOf("jaj") !== -1 ? time.slice(0, -3) + "leS" : output.indexOf("jar") !== -1 ? time.slice(0, -3) + "waQ" : output.indexOf("DIS") !== -1 ? time.slice(0, -3) + "nem" : time + " pIq" } 6621 6622 function translatePast(output) { var time = output; return time = output.indexOf("jaj") !== -1 ? time.slice(0, -3) + "Huââ¬â¢" : output.indexOf("jar") !== -1 ? time.slice(0, -3) + "wen" : output.indexOf("DIS") !== -1 ? time.slice(0, -3) + "ben" : time + " ret" } 6623 6624 function tlh__translate(number, withoutSuffix, string, isFuture) { 6625 var numberNoun = numberAsNoun(number); 6626 switch (string) { 6627 case "mm": 6628 return numberNoun + " tup"; 6629 case "hh": 6630 return numberNoun + " rep"; 6631 case "dd": 6632 return numberNoun + " jaj"; 6633 case "MM": 6634 return numberNoun + " jar"; 6635 case "yy": 6636 return numberNoun + " DIS" 6637 } 6638 } 6639 6640 function numberAsNoun(number) { 6641 var hundred = Math.floor(number % 1e3 / 100), 6642 ten = Math.floor(number % 100 / 10), 6643 one = number % 10, 6644 word = ""; 6645 return hundred > 0 && (word += numbersNouns[hundred] + "vatlh"), ten > 0 && (word += ("" !== word ? " " : "") + numbersNouns[ten] + "maH"), one > 0 && (word += ("" !== word ? " " : "") + numbersNouns[one]), "" === word ? "pagh" : word 6646 } 6647 6648 function tzl__processRelativeTime(number, withoutSuffix, key, isFuture) { var format = { s: ["viensas secunds", "'iensas secunds"], m: ["'n mÃÂut", "'iens mÃÂut"], mm: [number + " mÃÂuts", "" + number + " mÃÂuts"], h: ["'n þora", "'iensa þora"], hh: [number + " þoras", "" + number + " þoras"], d: ["'n ziua", "'iensa ziua"], dd: [number + " ziuas", "" + number + " ziuas"], M: ["'n mes", "'iens mes"], MM: [number + " mesen", "" + number + " mesen"], y: ["'n ar", "'iens ar"], yy: [number + " ars", "" + number + " ars"] }; return isFuture ? format[key][0] : withoutSuffix ? format[key][0] : format[key][1] } 6649 6650 function uk__plural(word, num) { var forms = word.split("_"); return num % 10 === 1 && num % 100 !== 11 ? forms[0] : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2] } 6651 6652 function uk__relativeTimeWithPlural(number, withoutSuffix, key) { var format = { mm: withoutSuffix ? "Ãâ¦Ã²Ã¸Ã»Ã¸Ã½Ã°_Ãâ¦Ã²Ã¸Ã»Ã¸Ã½Ã¸_Ãâ¦Ã²Ã¸Ã»Ã¸Ã½" : "Ãâ¦Ã²Ã¸Ã»Ã¸ÃÂ½ÃÆ_Ãâ¦Ã²Ã¸Ã»Ã¸Ã½Ã¸_Ãâ¦Ã²Ã¸Ã»Ã¸Ã½", hh: withoutSuffix ? "óþôøýð_óþôøýø_óþôøý" : "óþôøÃÂ½ÃÆ_óþôøýø_óþôøý", dd: "ôõýÃÅ_ôýÃâ_ôýÃâò", MM: "üÃâÃÂÃÂÃâ ÃÅ_üÃâÃÂÃÂÃâ Ãâ_üÃâÃÂÃÂÃâ Ãâò", yy: "Ãâ¬Ãâú_Ãâ¬Ã¾ÃºÃ¸_Ãâ¬Ã¾ÃºÃâò" }; return "m" === key ? withoutSuffix ? "Ãâ¦Ã²Ã¸Ã»Ã¸Ã½Ã°" : "Ãâ¦Ã²Ã¸Ã»Ã¸ÃÂ½ÃÆ" : "h" === key ? withoutSuffix ? "óþôøýð" : "óþôøÃÂ½ÃÆ" : number + " " + uk__plural(format[key],
6652+number) } 6653 6654 function weekdaysCaseReplace(m, format) { 6655 var weekdays = { nominative: "ýõôÃâûÃÂ_ÿþýõôÃâûþú_òÃâòÃâþÃâ¬Ã¾Ãº_ÃÂõÃâ¬ÃµÃ´Ã°_Ãâ¡ÃµÃâòõÃâ¬_ÿââ¬â¢ÃÂÃâýøÃâ ÃÂ_ÃÂÃÆÃ±Ã¾Ãâð".split("_"), accusative: "ýõôÃâûÎ_ÿþýõôÃâûþú_òÃâòÃâþÃâ¬Ã¾Ãº_ÃÂõÃâ¬ÃµÃÂ´ÃÆ_Ãâ¡ÃµÃâòõÃâ¬_ÿââ¬â¢ÃÂÃâýøÃâ ÃŽ_ÃÂÃÆÃ±Ã¾ÃâÃÆ".split("_"), genitive: "ýõôÃâûÃâ_ÿþýõôÃâûúð_òÃâòÃâþÃâ¬ÃºÃ°_ÃÂõÃâ¬ÃµÃ´Ã¸_Ãâ¡ÃµÃâòõÃâ¬Ã³Ã°_ÿââ¬â¢ÃÂÃâýøÃâ Ãâ_ÃÂÃÆÃ±Ã¾Ãâø".split("_") }, 6656 nounCase = /(\[[ÃâòÃÂ£ÃÆ]\]) ?dddd/.test(format) ? "accusative" : /\[?(?:üøÃÂ½ÃÆÃ»Ã¾Ãâ|ýðÃÂÃâÃÆÃ¿Ã½Ã¾Ãâ)? ?\] ?dddd/.test(format) ? "genitive" : "nominative"; 6657 return weekdays[nounCase][m.day()] 6658 } 6659 6660 function processHoursFunction(str) { return function() { return str + "þ" + (11 === this.hours() ? "ñ" : "") + "] LT" } } 6661 var hookCallback, some; 6662 some = Array.prototype.some ? Array.prototype.some : function(fun) { 6663 for (var t = Object(this), len = t.length >>> 0, i = 0; i < len; i++) 6664 if (i in t && fun.call(this, t[i], i, t)) return !0; 6665 return !1 6666 }; 6667 var momentProperties = utils_hooks__hooks.momentProperties = [], 6668 updateInProgress = !1, 6669 deprecations = {}; 6670 utils_hooks__hooks.suppressDeprecationWarnings = !1, utils_hooks__hooks.deprecationHandler = null; 6671 var keys; 6672 keys = Object.keys ? Object.keys : function(obj) { var i, res = []; for (i in obj) hasOwnProp(obj, i) && res.push(i); return res }; 6673 var indexOf, defaultCalendar = { sameDay: "[Today at] LT", nextDay: "[Tomorrow at] LT", nextWeek: "dddd [at] LT", lastDay: "[Yesterday at] LT", lastWeek: "[Last] dddd [at] LT", sameElse: "L" }, 6674 defaultLongDateFormat = { 6675 LTS: "h:mm:ss A", 6676 LT: "h:mm A", 6677 L: "MM/DD/YYYY", 6678 LL: "MMMM D, YYYY", 6679 LLL: "MMMM D, YYYY h:mm A", 6680 LLLL: "dddd, MMMM D, YYYY h:mm A" 6681 }, 6682 defaultInvalidDate = "Invalid date", 6683 defaultOrdinal = "%d", 6684 defaultOrdinalParse = /\d{1,2}/, 6685 defaultRelativeTime = { future: "in %s", past: "%s ago", s: "a few seconds", m: "a minute", mm: "%d minutes", h: "an hour", hh: "%d hours", d: "a day", dd: "%d days", M: "a month", MM: "%d months", y: "a year", yy: "%d years" }, 6686 aliases = {}, 6687 priorities = {}, 6688 formattingTokens = /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g, 6689 localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, 6690 formatFunctions = {}, 6691 formatTokenFunctions = {}, 6692 match1 = /\d/, 6693 match2 = /\d\d/, 6694 match3 = /\d{3}/, 6695 match4 = /\d{4}/, 6696 match6 = /[+-]?\d{6}/, 6697 match1to2 = /\d\d?/, 6698 match3to4 = /\d\d\d\d?/, 6699 match5to6 = /\d\d\d\d\d\d?/, 6700 match1to3 = /\d{1,3}/, 6701 match1to4 = /\d{1,4}/, 6702 match1to6 = /[+-]?\d{1,6}/, 6703 matchUnsigned = /\d+/, 6704 matchSigned = /[+-]?\d+/, 6705 matchOffset = /Z|[+-]\d\d:?\d\d/gi, 6706 matchShortOffset = /Z|[+-]\d\d(?::?\d\d)?/gi, 6707 matchTimestamp = /[+-]?\d+(\.\d{1,3})?/, 6708 matchWord = /[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i, 6709 regexes = {}, 6710 tokens = {}, 6711 YEAR = 0, 6712 MONTH = 1, 6713 DATE = 2, 6714 HOUR = 3, 6715 MINUTE = 4, 6716 SECOND = 5, 6717 MILLISECOND = 6, 6718 WEEK = 7, 6719 WEEKDAY = 8; 6720 indexOf = Array.prototype.indexOf ? Array.prototype.indexOf : function(o) { 6721 var i; 6722 for (i = 0; i < this.length; ++i) 6723 if (this[i] === o) return i; 6724 return -1 6725 }, addFormatToken("M", ["MM", 2], "Mo", function() { return this.month() + 1 }), addFormatToken("MMM", 0, 0, function(format) { return this.localeData().monthsShort(this, format) }), addFormatToken("MMMM", 0, 0, function(format) { return this.localeData().months(this, format) }), addUnitAlias("month", "M"), addUnitPriority("month", 8), addRegexToken("M", match1to2), addRegexToken("MM", match1to2, match2), addRegexToken("MMM", function(isStrict, locale) { return locale.monthsShortRegex(isStrict) }), addRegexToken("MMMM", function(isStrict, locale) { return locale.monthsRegex(isStrict) }), addParseToken(["M", "MM"], function(input, array) { array[MONTH] = toInt(input) - 1 }), addParseToken(["MMM", "MMMM"], function(input, array, config, token) {
vendor: 18,472 bytes, lines 6726-6822
6726 var month = config._locale.monthsParse(input, token, config._strict); 6727 null != month ? array[MONTH] = month : getParsingFlags(config).invalidMonth = input 6728 }); 6729 var MONTHS_IN_FORMAT = /D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/, 6730 defaultLocaleMonths = "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), 6731 defaultLocaleMonthsShort = "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), 6732 defaultMonthsShortRegex = matchWord, 6733 defaultMonthsRegex = matchWord; 6734 addFormatToken("Y", 0, 0, function() { var y = this.year(); return y <= 9999 ? "" + y : "+" + y }), addFormatToken(0, ["YY", 2], 0, function() { return this.year() % 100 }), addFormatToken(0, ["YYYY", 4], 0, "year"), addFormatToken(0, ["YYYYY", 5], 0, "year"), addFormatToken(0, ["YYYYYY", 6, !0], 0, "year"), addUnitAlias("year", "y"), addUnitPriority("year", 1), addRegexToken("Y", matchSigned), addRegexToken("YY", match1to2, match2), addRegexToken("YYYY", match1to4, match4), addRegexToken("YYYYY", match1to6, match6), addRegexToken("YYYYYY", match1to6, match6), addParseToken(["YYYYY", "YYYYYY"], YEAR), addParseToken("YYYY", function(input, array) { array[YEAR] = 2 === input.length ? utils_hooks__hooks.parseTwoDigitYear(input) : toInt(input) }), addParseToken("YY", function(input, array) { array[YEAR] = utils_hooks__hooks.parseTwoDigitYear(input) }), addParseToken("Y", function(input, array) { array[YEAR] = parseInt(input, 10) }), utils_hooks__hooks.parseTwoDigitYear = function(input) { return toInt(input) + (toInt(input) > 68 ? 1900 : 2e3) }; 6735 var getSetYear = makeGetSet("FullYear", !0); 6736 addFormatToken("w", ["ww", 2], "wo", "week"), addFormatToken("W", ["WW", 2], "Wo", "isoWeek"), addUnitAlias("week", "w"), addUnitAlias("isoWeek", "W"), addUnitPriority("week", 5), addUnitPriority("isoWeek", 5), addRegexToken("w", match1to2), addRegexToken("ww", match1to2, match2), addRegexToken("W", match1to2), addRegexToken("WW", match1to2, match2), addWeekParseToken(["w", "ww", "W", "WW"], function(input, week, config, token) { week[token.substr(0, 1)] = toInt(input) }); 6737 var defaultLocaleWeek = { dow: 0, doy: 6 }; 6738 addFormatToken("d", 0, "do", "day"), addFormatToken("dd", 0, 0, function(format) { return this.localeData().weekdaysMin(this, format) }), addFormatToken("ddd", 0, 0, function(format) { return this.localeData().weekdaysShort(this, format) }), addFormatToken("dddd", 0, 0, function(format) { return this.localeData().weekdays(this, format) }), addFormatToken("e", 0, 0, "weekday"), addFormatToken("E", 0, 0, "isoWeekday"), addUnitAlias("day", "d"), addUnitAlias("weekday", "e"), addUnitAlias("isoWeekday", "E"), addUnitPriority("day", 11), addUnitPriority("weekday", 11), addUnitPriority("isoWeekday", 11), addRegexToken("d", match1to2), addRegexToken("e", match1to2), addRegexToken("E", match1to2), addRegexToken("dd", function(isStrict, locale) { return locale.weekdaysMinRegex(isStrict) }), addRegexToken("ddd", function(isStrict, locale) { return locale.weekdaysShortRegex(isStrict) }), addRegexToken("dddd", function(isStrict, locale) { return locale.weekdaysRegex(isStrict) }), addWeekParseToken(["dd", "ddd", "dddd"], function(input, week, config, token) { 6739 var weekday = config._locale.weekdaysParse(input, token, config._strict); 6740 null != weekday ? week.d = weekday : getParsingFlags(config).invalidWeekday = input 6741 }), addWeekParseToken(["d", "e", "E"], function(input, week, config, token) { week[token] = toInt(input) }); 6742 var defaultLocaleWeekdays = "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), 6743 defaultLocaleWeekdaysShort = "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), 6744 defaultLocaleWeekdaysMin = "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), 6745 defaultWeekdaysRegex = matchWord, 6746 defaultWeekdaysShortRegex = matchWord, 6747 defaultWeekdaysMinRegex = matchWord; 6748 addFormatToken("H", ["HH", 2], 0, "hour"), addFormatToken("h", ["hh", 2], 0, hFormat), addFormatToken("k", ["kk", 2], 0, kFormat), addFormatToken("hmm", 0, 0, function() { return "" + hFormat.apply(this) + zeroFill(this.minutes(), 2) }), addFormatToken("hmmss", 0, 0, function() { return "" + hFormat.apply(this) + zeroFill(this.minutes(), 2) + zeroFill(this.seconds(), 2) }), addFormatToken("Hmm", 0, 0, function() { return "" + this.hours() + zeroFill(this.minutes(), 2) }), addFormatToken("Hmmss", 0, 0, function() { return "" + this.hours() + zeroFill(this.minutes(), 2) + zeroFill(this.seconds(), 2) }), meridiem("a", !0), meridiem("A", !1), addUnitAlias("hour", "h"), addUnitPriority("hour", 13), addRegexToken("a", matchMeridiem), addRegexToken("A", matchMeridiem), addRegexToken("H", match1to2), addRegexToken("h", match1to2), addRegexToken("HH", match1to2, match2), addRegexToken("hh", match1to2, match2), addRegexToken("hmm", match3to4), addRegexToken("hmmss", match5to6), addRegexToken("Hmm", match3to4), addRegexToken("Hmmss", match5to6), addParseToken(["H", "HH"], HOUR), addParseToken(["a", "A"], function(input, array, config) { config._isPm = config._locale.isPM(input), config._meridiem = input }), addParseToken(["h", "hh"], function(input, array, config) { array[HOUR] = toInt(input), getParsingFlags(config).bigHour = !0 }), addParseToken("hmm", function(input, array, config) { 6749 var pos = input.length - 2; 6750 array[HOUR] = toInt(input.substr(0, pos)), array[MINUTE] = toInt(input.substr(pos)), getParsingFlags(config).bigHour = !0 6751 }), addParseToken("hmmss", function(input, array, config) { 6752 var pos1 = input.length - 4, 6753 pos2 = input.length - 2; 6754 array[HOUR] = toInt(input.substr(0, pos1)), array[MINUTE] = toInt(input.substr(pos1, 2)), array[SECOND] = toInt(input.substr(pos2)), getParsingFlags(config).bigHour = !0 6755 }), addParseToken("Hmm", function(input, array, config) { 6756 var pos = input.length - 2; 6757 array[HOUR] = toInt(input.substr(0, pos)), array[MINUTE] = toInt(input.substr(pos)) 6758 }), addParseToken("Hmmss", function(input, array, config) { 6759 var pos1 = input.length - 4, 6760 pos2 = input.length - 2; 6761 array[HOUR] = toInt(input.substr(0, pos1)), array[MINUTE] = toInt(input.substr(pos1, 2)), array[SECOND] = toInt(input.substr(pos2)) 6762 }); 6763 var globalLocale, defaultLocaleMeridiemParse = /[ap]\.?m?\.?/i, 6764 getSetHour = makeGetSet("Hours", !0), 6765 baseConfig = { calendar: defaultCalendar, longDateFormat: defaultLongDateFormat, invalidDate: defaultInvalidDate, ordinal: defaultOrdinal, ordinalParse: defaultOrdinalParse, relativeTime: defaultRelativeTime, months: defaultLocaleMonths, monthsShort: defaultLocaleMonthsShort, week: defaultLocaleWeek, weekdays: defaultLocaleWeekdays, weekdaysMin: defaultLocaleWeekdaysMin, weekdaysShort: defaultLocaleWeekdaysShort, meridiemParse: defaultLocaleMeridiemParse }, 6766 locales = {}, 6767 extendedIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/, 6768 basicIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/, 6769 tzRegex = /Z|[+-]\d\d(?::?\d\d)?/, 6770 isoDates = [ 6771 ["YYYYYY-MM-DD", /[+-]\d{6}-\d\d-\d\d/], 6772 ["YYYY-MM-DD", /\d{4}-\d\d-\d\d/], 6773 ["GGGG-[W]WW-E", /\d{4}-W\d\d-\d/], 6774 ["GGGG-[W]WW", /\d{4}-W\d\d/, !1], 6775 ["YYYY-DDD", /\d{4}-\d{3}/], 6776 ["YYYY-MM", /\d{4}-\d\d/, !1], 6777 ["YYYYYYMMDD", /[+-]\d{10}/], 6778 ["YYYYMMDD", /\d{8}/], 6779 ["GGGG[W]WWE", /\d{4}W\d{3}/], 6780 ["GGGG[W]WW", /\d{4}W\d{2}/, !1], 6781 ["YYYYDDD", /\d{7}/] 6782 ], 6783 isoTimes = [ 6784 ["HH:mm:ss.SSSS", /\d\d:\d\d:\d\d\.\d+/], 6785 ["HH:mm:ss,SSSS", /\d\d:\d\d:\d\d,\d+/], 6786 ["HH:mm:ss", /\d\d:\d\d:\d\d/], 6787 ["HH:mm", /\d\d:\d\d/], 6788 ["HHmmss.SSSS", /\d\d\d\d\d\d\.\d+/], 6789 ["HHmmss,SSSS", /\d\d\d\d\d\d,\d+/], 6790 ["HHmmss", /\d\d\d\d\d\d/], 6791 ["HHmm", /\d\d\d\d/], 6792 ["HH", /\d\d/] 6793 ], 6794 aspNetJsonRegex = /^\/?Date\((\-?\d+)/i; 6795 utils_hooks__hooks.createFromInputFallback = deprecate("value provided is not in a recognized ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.", function(config) { config._d = new Date(config._i + (config._useUTC ? " UTC" : "")) }), utils_hooks__hooks.ISO_8601 = function() {}; 6796 var prototypeMin = deprecate("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/", function() { var other = local__createLocal.apply(null, arguments); return this.isValid() && other.isValid() ? other < this ? this : other : valid__createInvalid() }), 6797 prototypeMax = deprecate("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/", function() { var other = local__createLocal.apply(null, arguments); return this.isValid() && other.isValid() ? other > this ? this : other : valid__createInvalid() }), 6798 now = function() { return Date.now ? Date.now() : +new Date }; 6799 offset("Z", ":"), offset("ZZ", ""), addRegexToken("Z", matchShortOffset), addRegexToken("ZZ", matchShortOffset), addParseToken(["Z", "ZZ"], function(input, array, config) { config._useUTC = !0, config._tzm = offsetFromString(matchShortOffset, input) }); 6800 var chunkOffset = /([\+\-]|\d\d)/gi; 6801 utils_hooks__hooks.updateOffset = function() {}; 6802 var aspNetRegex = /^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/, 6803 isoRegex = /^(-)?P(?:(-?[0-9,.]*)Y)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)W)?(?:(-?[0-9,.]*)D)?(?:T(?:(-?[0-9,.]*)H)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)S)?)?$/; 6804 create__createDuration.fn = Duration.prototype; 6805 var add_subtract__add = createAdder(1, "add"), 6806 add_subtract__subtract = createAdder(-1, "subtract"); 6807 utils_hooks__hooks.defaultFormat = "YYYY-MM-DDTHH:mm:ssZ", utils_hooks__hooks.defaultFormatUtc = "YYYY-MM-DDTHH:mm:ss[Z]"; 6808 var lang = deprecate("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.", function(key) { return void 0 === key ? this.localeData() : this.locale(key) }); 6809 addFormatToken(0, ["gg", 2], 0, function() { return this.weekYear() % 100 }), addFormatToken(0, ["GG", 2], 0, function() { return this.isoWeekYear() % 100 }), addWeekYearFormatToken("gggg", "weekYear"), addWeekYearFormatToken("ggggg", "weekYear"), addWeekYearFormatToken("GGGG", "isoWeekYear"), addWeekYearFormatToken("GGGGG", "isoWeekYear"), addUnitAlias("weekYear", "gg"), addUnitAlias("isoWeekYear", "GG"), addUnitPriority("weekYear", 1), addUnitPriority("isoWeekYear", 1), addRegexToken("G", matchSigned), addRegexToken("g", matchSigned), addRegexToken("GG", match1to2, match2), addRegexToken("gg", match1to2, match2), addRegexToken("GGGG", match1to4, match4), addRegexToken("gggg", match1to4, match4), addRegexToken("GGGGG", match1to6, match6), addRegexToken("ggggg", match1to6, match6), addWeekParseToken(["gggg", "ggggg", "GGGG", "GGGGG"], function(input, week, config, token) { week[token.substr(0, 2)] = toInt(input) }), addWeekParseToken(["gg", "GG"], function(input, week, config, token) { week[token] = utils_hooks__hooks.parseTwoDigitYear(input) }), addFormatToken("Q", 0, "Qo", "quarter"), addUnitAlias("quarter", "Q"), addUnitPriority("quarter", 7), addRegexToken("Q", match1), addParseToken("Q", function(input, array) { array[MONTH] = 3 * (toInt(input) - 1) }), addFormatToken("D", ["DD", 2], "Do", "date"), addUnitAlias("date", "D"), addUnitPriority("date", 9), addRegexToken("D", match1to2), addRegexToken("DD", match1to2, match2), addRegexToken("Do", function(isStrict, locale) { return isStrict ? locale._ordinalParse : locale._ordinalParseLenient }), addParseToken(["D", "DD"], DATE), addParseToken("Do", function(input, array) { array[DATE] = toInt(input.match(match1to2)[0], 10) }); 6810 var getSetDayOfMonth = makeGetSet("Date", !0); 6811 addFormatToken("DDD", ["DDDD", 3], "DDDo", "dayOfYear"), addUnitAlias("dayOfYear", "DDD"), addUnitPriority("dayOfYear", 4), addRegexToken("DDD", match1to3), addRegexToken("DDDD", match3), addParseToken(["DDD", "DDDD"], function(input, array, config) { config._dayOfYear = toInt(input) }), addFormatToken("m", ["mm", 2], 0, "minute"), addUnitAlias("minute", "m"), addUnitPriority("minute", 14), addRegexToken("m", match1to2), addRegexToken("mm", match1to2, match2), addParseToken(["m", "mm"], MINUTE); 6812 var getSetMinute = makeGetSet("Minutes", !1); 6813 addFormatToken("s", ["ss", 2], 0, "second"), addUnitAlias("second", "s"), addUnitPriority("second", 15), addRegexToken("s", match1to2), addRegexToken("ss", match1to2, match2), addParseToken(["s", "ss"], SECOND); 6814 var getSetSecond = makeGetSet("Seconds", !1); 6815 addFormatToken("S", 0, 0, function() { return ~~(this.millisecond() / 100) }), addFormatToken(0, ["SS", 2], 0, function() { return ~~(this.millisecond() / 10) }), addFormatToken(0, ["SSS", 3], 0, "millisecond"), addFormatToken(0, ["SSSS", 4], 0, function() { return 10 * this.millisecond() }), addFormatToken(0, ["SSSSS", 5], 0, function() { return 100 * this.millisecond() }), addFormatToken(0, ["SSSSSS", 6], 0, function() { return 1e3 * this.millisecond() }), addFormatToken(0, ["SSSSSSS", 7], 0, function() { return 1e4 * this.millisecond() }), addFormatToken(0, ["SSSSSSSS", 8], 0, function() { return 1e5 * this.millisecond() }), addFormatToken(0, ["SSSSSSSSS", 9], 0, function() { return 1e6 * this.millisecond() }), addUnitAlias("millisecond", "ms"), addUnitPriority("millisecond", 16), addRegexToken("S", match1to3, match1), addRegexToken("SS", match1to3, match2), addRegexToken("SSS", match1to3, match3); 6816 var token; 6817 for (token = "SSSS"; token.length <= 9; token += "S") addRegexToken(token, matchUnsigned); 6818 for (token = "S"; token.length <= 9; token += "S") addParseToken(token, parseMs); 6819 var getSetMillisecond = makeGetSet("Milliseconds", !1); 6820 addFormatToken("z", 0, 0, "zoneAbbr"), addFormatToken("zz", 0, 0, "zoneName"); 6821 var momentPrototype__proto = Moment.prototype; 6822 momentPrototype__proto.add = add_subtract__add, momentPrototype__proto.calendar = moment_calendar__calendar, momentPrototype__proto.clone = clone, momentPrototype__proto.diff = diff, momentPrototype__proto.endOf = endOf, momentPrototype__proto.format = moment_format__format, momentPrototype__proto.from = from, momentPrototype__proto.fromNow = fromNow, momentPrototype__proto.to = to, momentPrototype__proto.toNow = toNow, momentPrototype__proto.get = stringGet, momentPrototype__proto.invalidAt = invalidAt, momentPrototype__proto.isAfter = isAfter, momentPrototype__proto.isBefore = isBefore, momentPrototype__proto.isBetween = isBetween, momentPrototype__proto.isSame = isSame, momentPrototype__proto.isSameOrAfter = isSameOrAfter, momentPrototype__proto.isSameOrBefore = isSameOrBefore, momentPrototype__proto.isValid = moment_valid__isValid, momentPrototype__proto.lang = lang, momentPrototype__proto.locale = locale, momentPrototype__proto.localeData = localeData, momentPrototype__proto.max = prototypeMax, momentPrototype__proto.min = prototypeMin, momentPrototype__proto.parsingFlags = parsingFlags, momentPrototype__proto.set = stringSet, momentPrototype__proto.startOf = startOf, momentPrototype__proto.subtract = add_subtract__subtract, momentPrototype__proto.toArray = toArray, momentPrototype__proto.toObject = toObject, momentPrototype__proto.toDate = toDate, momentPrototype__proto.toISOString = moment_format__toISOString, momentPrototype__proto.toJSON = toJSON, momentPrototype__proto.toString = toString, momentPrototype__proto.unix = unix, momentPrototype__proto.valueOf = to_type__valueOf, momentPrototype__proto.creationData = creationData, momentPrototype__proto.year = getSetYear, momentPrototype__proto.isLeapYear = getIsLeapYear, momentPrototype__proto.weekYear = getSetWeekYear, momentPrototype__proto.isoWeekYear = getSetISOWeekYear, momentPrototype__proto.quarter = momentPrototype__proto.quarters = getSetQuarter, momentPrototype__proto.month = getSetMonth, momentPrototype__proto.daysInMonth = getDaysInMonth, momentPrototype__proto.week = momentPrototype__proto.weeks = getSetWeek, momentPrototype__proto.isoWeek = momentPrototype__proto.isoWeeks = getSetISOWeek, momentPrototype__proto.weeksInYear = getWeeksInYear, momentPrototype__proto.isoWeeksInYear = getISOWeeksInYear, momentPrototype__proto.date = getSetDayOfMonth, momentPrototype__proto.day = momentPrototype__proto.days = getSetDayOfWeek, momentPrototype__proto.weekday = getSetLocaleDayOfWeek, momentPrototype__proto.isoWeekday = getSetISODayOfWeek, momentPrototype__proto.dayOfYear = getSetDayOfYear, momentPrototype__proto.hour = momentPrototype__proto.hours = getSetHour, momentPrototype__proto.minute = momentPrototype__proto.minutes = getSetMinute, momentPrototype__proto.second = momentPrototype__proto.seconds = getSetSecond, momentPrototype__proto.millisecond = momentPrototype__proto.milliseconds = getSetMillisecond, momentPrototype__proto.utcOffset = getSetOffset, momentPrototype__proto.utc = setOffsetToUTC, momentPrototype__proto.local = setOffsetToLocal, momentPrototype__proto.parseZone = setOffsetToParsedOffset, momentPrototype__proto.hasAlignedHourOffset = hasAlignedHourOffset, momentPrototype__proto.isDST = isDaylightSavingTime, momentPrototype__proto.isLocal = isLocal, momentPrototype__proto.isUtcOffset = isUtcOffset, momentPrototype__proto.isUtc = isUtc, momentPrototype__proto.isUTC = isUtc, momentPrototype__proto.zoneAbbr = getZoneAbbr, momentPrototype__proto.zoneName = getZoneName, momentPrototype__proto.dates = deprecate("dates accessor is deprecated. Use date instead.", get
vendor: 14,550 bytes, lines 6822-6866
6822SetDayOfMonth), momentPrototype__proto.months = deprecate("months accessor is deprecated. Use month instead", getSetMonth), momentPrototype__proto.years = deprecate("years accessor is deprecated. Use year instead", getSetYear), momentPrototype__proto.zone = deprecate("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/", getSetZone), momentPrototype__proto.isDSTShifted = deprecate("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information", isDaylightSavingTimeShifted); 6823 var momentPrototype = momentPrototype__proto, 6824 prototype__proto = Locale.prototype; 6825 prototype__proto.calendar = locale_calendar__calendar, prototype__proto.longDateFormat = longDateFormat, prototype__proto.invalidDate = invalidDate, prototype__proto.ordinal = ordinal, prototype__proto.preparse = preParsePostFormat, prototype__proto.postformat = preParsePostFormat, prototype__proto.relativeTime = relative__relativeTime, prototype__proto.pastFuture = pastFuture, prototype__proto.set = locale_set__set, prototype__proto.months = localeMonths, prototype__proto.monthsShort = localeMonthsShort, prototype__proto.monthsParse = localeMonthsParse, prototype__proto.monthsRegex = units_month__monthsRegex, prototype__proto.monthsShortRegex = monthsShortRegex, prototype__proto.week = localeWeek, prototype__proto.firstDayOfYear = localeFirstDayOfYear, prototype__proto.firstDayOfWeek = localeFirstDayOfWeek, prototype__proto.weekdays = localeWeekdays, prototype__proto.weekdaysMin = localeWeekdaysMin, prototype__proto.weekdaysShort = localeWeekdaysShort, prototype__proto.weekdaysParse = localeWeekdaysParse, prototype__proto.weekdaysRegex = weekdaysRegex, prototype__proto.weekdaysShortRegex = weekdaysShortRegex, prototype__proto.weekdaysMinRegex = weekdaysMinRegex, prototype__proto.isPM = localeIsPM, prototype__proto.meridiem = localeMeridiem, locale_locales__getSetGlobalLocale("en", { 6826 ordinalParse: /\d{1,2}(th|st|nd|rd)/, 6827 ordinal: function(number) { 6828 var b = number % 10, 6829 output = 1 === toInt(number % 100 / 10) ? "th" : 1 === b ? "st" : 2 === b ? "nd" : 3 === b ? "rd" : "th"; 6830 return number + output 6831 } 6832 }), utils_hooks__hooks.lang = deprecate("moment.lang is deprecated. Use moment.locale instead.", locale_locales__getSetGlobalLocale), utils_hooks__hooks.langData = deprecate("moment.langData is deprecated. Use moment.localeData instead.", locale_locales__getLocale); 6833 var mathAbs = Math.abs, 6834 asMilliseconds = makeAs("ms"), 6835 asSeconds = makeAs("s"), 6836 asMinutes = makeAs("m"), 6837 asHours = makeAs("h"), 6838 asDays = makeAs("d"), 6839 asWeeks = makeAs("w"), 6840 asMonths = makeAs("M"), 6841 asYears = makeAs("y"), 6842 milliseconds = makeGetter("milliseconds"), 6843 seconds = makeGetter("seconds"), 6844 minutes = makeGetter("minutes"), 6845 hours = makeGetter("hours"), 6846 days = makeGetter("days"), 6847 duration_get__months = makeGetter("months"), 6848 years = makeGetter("years"), 6849 round = Math.round, 6850 thresholds = { s: 45, m: 45, h: 22, d: 26, M: 11 }, 6851 iso_string__abs = Math.abs, 6852 duration_prototype__proto = Duration.prototype; 6853 duration_prototype__proto.abs = duration_abs__abs, duration_prototype__proto.add = duration_add_subtract__add, duration_prototype__proto.subtract = duration_add_subtract__subtract, duration_prototype__proto.as = as, duration_prototype__proto.asMilliseconds = asMilliseconds, duration_prototype__proto.asSeconds = asSeconds, duration_prototype__proto.asMinutes = asMinutes, duration_prototype__proto.asHours = asHours, duration_prototype__proto.asDays = asDays, duration_prototype__proto.asWeeks = asWeeks, duration_prototype__proto.asMonths = asMonths, duration_prototype__proto.asYears = asYears, duration_prototype__proto.valueOf = duration_as__valueOf, duration_prototype__proto._bubble = bubble, duration_prototype__proto.get = duration_get__get, duration_prototype__proto.milliseconds = milliseconds, duration_prototype__proto.seconds = seconds, duration_prototype__proto.minutes = minutes, duration_prototype__proto.hours = hours, duration_prototype__proto.days = days, duration_prototype__proto.weeks = weeks, duration_prototype__proto.months = duration_get__months, duration_prototype__proto.years = years, duration_prototype__proto.humanize = humanize, duration_prototype__proto.toISOString = iso_string__toISOString, duration_prototype__proto.toString = iso_string__toISOString, duration_prototype__proto.toJSON = iso_string__toISOString, duration_prototype__proto.locale = locale, duration_prototype__proto.localeData = localeData, duration_prototype__proto.toIsoString = deprecate("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)", iso_string__toISOString), duration_prototype__proto.lang = lang, addFormatToken("X", 0, 0, "unix"), addFormatToken("x", 0, 0, "valueOf"), addRegexToken("x", matchSigned), addRegexToken("X", matchTimestamp), addParseToken("X", function(input, array, config) { config._d = new Date(1e3 * parseFloat(input, 10)) }), addParseToken("x", function(input, array, config) { config._d = new Date(toInt(input)) }), utils_hooks__hooks.version = "2.15.1", setHookCallback(local__createLocal), utils_hooks__hooks.fn = momentPrototype, utils_hooks__hooks.min = min, utils_hooks__hooks.max = max, utils_hooks__hooks.now = now, utils_hooks__hooks.utc = create_utc__createUTC, utils_hooks__hooks.unix = moment_moment__createUnix, utils_hooks__hooks.months = lists__listMonths, utils_hooks__hooks.isDate = isDate, utils_hooks__hooks.locale = locale_locales__getSetGlobalLocale, utils_hooks__hooks.invalid = valid__createInvalid, utils_hooks__hooks.duration = create__createDuration, utils_hooks__hooks.isMoment = isMoment, utils_hooks__hooks.weekdays = lists__listWeekdays, utils_hooks__hooks.parseZone = moment_moment__createInZone, utils_hooks__hooks.localeData = locale_locales__getLocale, utils_hooks__hooks.isDuration = isDuration, utils_hooks__hooks.monthsShort = lists__listMonthsShort, utils_hooks__hooks.weekdaysMin = lists__listWeekdaysMin, utils_hooks__hooks.defineLocale = defineLocale, utils_hooks__hooks.updateLocale = updateLocale, utils_hooks__hooks.locales = locale_locales__listLocales, utils_hooks__hooks.weekdaysShort = lists__listWeekdaysShort, utils_hooks__hooks.normalizeUnits = normalizeUnits, utils_hooks__hooks.relativeTimeRounding = duration_humanize__getSetRelativeTimeRounding, utils_hooks__hooks.relativeTimeThreshold = duration_humanize__getSetRelativeTimeThreshold, utils_hooks__hooks.calendarFormat = getCalendarFormat, utils_hooks__hooks.prototype = momentPrototype; 6854 var moment__default = utils_hooks__hooks, 6855 ar_ly__symbolMap = (moment__default.defineLocale("af", { months: "Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"), monthsShort: "Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"), weekdays: "Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"), weekdaysShort: "Son_Maa_Din_Woe_Don_Vry_Sat".split("_"), weekdaysMin: "So_Ma_Di_Wo_Do_Vr_Sa".split("_"), meridiemParse: /vm|nm/i, isPM: function(input) { return /^nm$/i.test(input) }, meridiem: function(hours, minutes, isLower) { return hours < 12 ? isLower ? "vm" : "VM" : isLower ? "nm" : "NM" }, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, calendar: { sameDay: "[Vandag om] LT", nextDay: "[Môre om] LT", nextWeek: "dddd [om] LT", lastDay: "[Gister om] LT", lastWeek: "[Laas] dddd [om] LT", sameElse: "L" }, relativeTime: { future: "oor %s", past: "%s gelede", s: "'n paar sekondes", m: "'n minuut", mm: "%d minute", h: "'n uur", hh: "%d ure", d: "'n dag", dd: "%d dae", M: "'n maand", MM: "%d maande", y: "'n jaar", yy: "%d jaar" }, ordinalParse: /\d{1,2}(ste|de)/, ordinal: function(number) { return number + (1 === number || 8 === number || number >= 20 ? "ste" : "de") }, week: { dow: 1, doy: 4 } }), { 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 0: "0" }), 6856 ar_ly__pluralForm = function(n) { return 0 === n ? 0 : 1 === n ? 1 : 2 === n ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5 }, 6857 ar_ly__plurals = { s: ["ãÃâÃâ Ãâ¦Ãâ ëçÃâ Êé", "ëçÃâ Êé ÃËçÃÂïé", ["ëçÃâ ÊêçÃâ ", "ëçÃâ ÊêÃÅ Ãâ "], "%d ëÃËçÃâ ", "%d ëçÃâ Êé", "%d ëçÃâ Êé"], m: ["ãÃâÃâ Ãâ¦Ãâ ïÃâÃÅ Ãâé", "ïÃâÃÅ Ãâé ÃËçÃÂïé", ["ïÃâÃÅ ÃâêçÃâ ", "ïÃâÃÅ ÃâêÃÅ Ãâ "], "%d ïÃâçæÃâ", "%d ïÃâÃÅ Ãâé", "%d ïÃâÃÅ Ãâé"], h: ["ãÃâÃâ Ãâ¦Ãâ óçùé", "óçùé ÃËçÃÂïé", ["óçùêçÃâ ", "óçùêÃÅ Ãâ "], "%d óçùçê", "%d óçùé", "%d óçùé"], d: ["ãÃâÃâ Ãâ¦Ãâ ÃÅ ÃËÃâ¦", "ÃÅ ÃËÃ⦠ÃËçÃÂï", ["ÃÅ ÃËÃâ¦Ã§Ãâ ", "ÃÅ ÃËÃâ¦ÃÅ Ãâ "], "%d ãÊçÃâ¦", "%d ÃÅ ÃËÃâ¦Ãâ¹Ã§", "%d ÃÅ ÃËÃâ¦"], M: ["ãÃâÃâ Ãâ¦Ãâ ôÃâ¡Ã±", "ôÃâ¡Ã± ÃËçÃÂï", ["ôÃâ¡Ã±Ã§Ãâ ", "ôÃâ¡Ã±ÃÅ Ãâ "], "%d ãôÃâ¡Ã±", "%d ôÃâ¡Ã±Ã§", "%d ôÃâ¡Ã±"], y: ["ãÃâÃâ Ãâ¦Ãâ ùçÃâ¦", "ùçÃ⦠ÃËçÃÂï", ["ùçÃâ¦Ã§Ãâ ", "ùçÃâ¦ÃÅ Ãâ "], "%d ãùÃËçÃâ¦", "%d ùçÃâ¦Ãâ¹Ã§", "%d ùçÃâ¦"] }, 6858 ar_ly__pluralize = function(u) { 6859 return function(number, withoutSuffix, string, isFuture) { 6860 var f = ar_ly__pluralForm(number), 6861 str = ar_ly__plurals[u][ar_ly__pluralForm(number)]; 6862 return 2 === f && (str = str[withoutSuffix ? 0 : 1]), str.replace(/%d/i, number) 6863 } 6864 }, 6865 ar_ly__months = ["ÃÅ Ãâ çÊñ", "ÃÂèñçÊñ", "Ãâ¦Ã§Ã±Ã³", "ãèñÃÅ Ãâ", "Ãâ¦Ã§ÃÅ ÃË", "ÃÅ ÃËÃâ ÃÅ ÃË", "ÃÅ ÃËÃâÃÅ ÃË", "ãúó÷ó", "óèêÃâ¦Ã¨Ã±", "ÃÂ£ÃÆÃªÃËèñ", "Ãâ ÃËÃÂÃâ¦Ã¨Ã±", "ïÊóÃâ¦Ã¨Ã±"], 6866 ar_sa__symbolMap = (moment__default.defineLocale("ar-ly", { months: ar_ly__months, monthsShort: ar_ly__months, weekdays: "çÃâãÃÂï_çÃâÃ¥ëÃâ ÃÅ Ãâ _çÃâëÃâçëçá_çÃâãñèùçá_çÃâîÃâ¦ÃŠó_çÃâìÃâ¦Ã¹Ã©_çÃâóèê".split("_"), weekdaysShort: "ãÃÂï_Ã¥ëÃâ ÃÅ Ãâ _ëÃâçëçá_ãñèùçá_îÃâ¦ÃŠó_ìÃâ¦Ã¹Ã©_óèê".split("_"), weekdaysMin: "ÃÂ_Ãâ _ë_ñ_î_ì_ó".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "D/ââ¬ÂM/ââ¬ÂYYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, meridiemParse: /õ|Ãâ¦/, isPM: function(input) { return "Ãâ¦" === input }, meridiem: function(hour, minute, isLower) { return hour < 12 ? "õ" : "Ãâ¦" }, calendar: { sameDay: "[çÃâÃÅ ÃËÃ⦠ùÃâ ï çÃâóçùé] LT", nextDay: "[úïÃâ¹Ã§ ùÃâ ï çÃâóçùé] LT", nextWeek: "dddd [ùÃâ ï çÃâóçùé] LT", lastDay: "[ãÃâ¦Ã³ ùÃâ ï çÃâóçùé] LT", lastWeek: "dddd [ùÃâ ï çÃâóçùé] LT", sameElse: "L" }, relativeTime: { future: "èùï %s", past: "Ãâ¦Ãâ ð %s", s: ar_ly__pluralize("s"), m: ar_ly__pluralize("m"), mm: ar_ly__pluralize("m"), h: ar_ly__pluralize("h"), hh: ar_ly__pluralize("h"), d: ar_ly__pluralize("d"), dd: ar_ly__pluralize("d"), M: ar_ly__pluralize("M"), MM: ar_ly__pluralize("M"), y: ar_ly__pluralize("y"), yy: ar_ly__pluralize("y") }, preparse: function(string) { return string.replace(/\u200f/g, "").replace(/ÃÅ/g, ",") }, postformat: function(string) { return string.replace(/\d/g, function(match) { return ar_ly__symbolMap[match] }).replace(/,/g, "ÃÅ") }, week: { dow: 6, doy: 12 } }), moment__default.defineLocale("ar-ma", { months: "ÃÅ Ãâ çÊñ_ÃÂèñçÊñ_Ãâ¦Ã§Ã±Ã³_ãèñÃÅ Ãâ_Ãâ¦Ã§ÃÅ _ÃÅ ÃËÃâ ÃÅ ÃË_ÃÅ ÃËÃâÃÅ ÃËò_úôê_ôêÃâ èñ_ÃÂ£ÃÆÃªÃËèñ_Ãâ ÃËÃâ èñ_ïìÃâ èñ".split("_"), monthsShort: "ÃÅ Ãâ çÊñ_ÃÂèñçÊñ_Ãâ¦Ã§Ã±Ã³_ãèñÃÅ Ãâ_Ãâ¦Ã§ÃÅ _ÃÅ ÃËÃâ ÃÅ ÃË_ÃÅ ÃËÃâÃÅ ÃËò_úôê_ôêÃâ èñ_ÃÂ£ÃÆÃªÃËèñ_Ãâ ÃËÃâ èñ_ïìÃâ èñ".split("_"), weekdays: "çÃâãÃÂï_çÃâÃ¥êÃâ ÃÅ Ãâ _çÃâëÃâçëçá_çÃâãñèùçá_çÃâîÃâ¦ÃŠó_çÃâìÃâ¦Ã¹Ã©_çÃâóèê".split("_"), weekdaysShort: "çÃÂï_çêÃâ ÃÅ Ãâ _ëÃâçëçá_çñèùçá_îÃâ¦ÃŠó_ìÃâ¦Ã¹Ã©_óèê".split("_"), weekdaysMin: "ÃÂ_Ãâ _ë_ñ_î_ì_ó".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, calendar: { sameDay: "[çÃâÃÅ ÃËÃ⦠ùÃâÃⰠçÃâóçùé] LT", nextDay: "[úïç ùÃâÃⰠçÃâóçùé] LT", nextWeek: "dddd [ùÃâÃⰠçÃâóçùé] LT", lastDay: "[ãÃâ¦Ã³ ùÃâÃⰠçÃâóçùé] LT", lastWeek: "dddd [ùÃâÃⰠçÃâóçùé] LT", sameElse: "L" }, relativeTime: { future: "ÃÂÃÅ %s", past: "Ãâ¦Ãâ ð %s", s: "ëÃËçÃâ ", m: "ïÃâÃÅ Ãâé", mm: "%d ïÃâçæÃâ", h: "óçùé", hh: "%d óçùçê", d: "ÃÅ ÃËÃâ¦", dd: "%d ãÊçÃâ¦", M: "ôÃâ¡Ã±", MM: "%d ãôÃâ¡Ã±", y: "óÃâ é", yy: "%d óÃâ ÃËçê" }, week: { dow: 6, doy: 12 } }
vendor: 4,795 bytes, lines 6866-6868
6866), { 1: "á", 2: "â", 3: "ã", 4: "ä", 5: "ÃÂ¥", 6: "æ", 7: "ç", 8: "è", 9: "é", 0: "à " }), 6867 ar_sa__numberMap = { "á": "1", "â": "2", "ã": "3", "ä": "4", "ÃÂ¥": "5", "æ": "6", "ç": "7", "è": "8", "é": "9", "à ": "0" }, 6868 ar__symbolMap = (moment__default.defineLocale("ar-sa", { months: "ÃÅ Ãâ çÊñ_ÃÂèñçÊñ_Ãâ¦Ã§Ã±Ã³_ãèñÃÅ Ãâ_Ãâ¦Ã§ÃÅ ÃË_ÃÅ ÃËÃâ ÃÅ ÃË_ÃÅ ÃËÃâÃÅ ÃË_ãúó÷ó_óèêÃâ¦Ã¨Ã±_ÃÂ£ÃÆÃªÃËèñ_Ãâ ÃËÃÂÃâ¦Ã¨Ã±_ïÊóÃâ¦Ã¨Ã±".split("_"), monthsShort: "ÃÅ Ãâ çÊñ_ÃÂèñçÊñ_Ãâ¦Ã§Ã±Ã³_ãèñÃÅ Ãâ_Ãâ¦Ã§ÃÅ ÃË_ÃÅ ÃËÃâ ÃÅ ÃË_ÃÅ ÃËÃâÃÅ ÃË_ãúó÷ó_óèêÃâ¦Ã¨Ã±_ÃÂ£ÃÆÃªÃËèñ_Ãâ ÃËÃÂÃâ¦Ã¨Ã±_ïÊóÃâ¦Ã¨Ã±".split("_"), weekdays: "çÃâãÃÂï_çÃâÃ¥ëÃâ ÃÅ Ãâ _çÃâëÃâçëçá_çÃâãñèùçá_çÃâîÃâ¦ÃŠó_çÃâìÃâ¦Ã¹Ã©_çÃâóèê".split("_"), weekdaysShort: "ãÃÂï_Ã¥ëÃâ ÃÅ Ãâ _ëÃâçëçá_ãñèùçá_îÃâ¦ÃŠó_ìÃâ¦Ã¹Ã©_óèê".split("_"), weekdaysMin: "ÃÂ_Ãâ _ë_ñ_î_ì_ó".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, meridiemParse: /õ|Ãâ¦/, isPM: function(input) { return "Ãâ¦" === input }, meridiem: function(hour, minute, isLower) { return hour < 12 ? "õ" : "Ãâ¦" }, calendar: { sameDay: "[çÃâÃÅ ÃËÃ⦠ùÃâÃⰠçÃâóçùé] LT", nextDay: "[úïç ùÃâÃⰠçÃâóçùé] LT", nextWeek: "dddd [ùÃâÃⰠçÃâóçùé] LT", lastDay: "[ãÃâ¦Ã³ ùÃâÃⰠçÃâóçùé] LT", lastWeek: "dddd [ùÃâÃⰠçÃâóçùé] LT", sameElse: "L" }, relativeTime: { future: "ÃÂÃÅ %s", past: "Ãâ¦Ãâ ð %s", s: "ëÃËçÃâ ", m: "ïÃâÃÅ Ãâé", mm: "%d ïÃâçæÃâ", h: "óçùé", hh: "%d óçùçê", d: "ÃÅ ÃËÃâ¦", dd: "%d ãÊçÃâ¦", M: "ôÃâ¡Ã±", MM: "%d ãôÃâ¡Ã±", y: "óÃâ é", yy: "%d óÃâ ÃËçê" }, preparse: function(string) { return string.replace(/[áâãäÃ¥æçèéà ]/g, function(match) { return ar_sa__numberMap[match] }).replace(/ÃÅ/g, ",") }, postformat: function(string) { return string.replace(/\d/g, function(match) { return ar_sa__symbolMap[match] }).replace(/,/g, "ÃÅ") }, week: { dow: 6, doy: 12 } }), moment__default.defineLocale("ar-tn", { months: "ìçÃâ ÃÂÃÅ _ÃÂÃÅ ÃÂñÃÅ _Ãâ¦Ã§Ã±Ã³_ãÃÂñÃÅ Ãâ_Ãâ¦Ã§ÃÅ _ìÃËçÃâ _ìÃËÃÅ ÃâÊé_ãÃËê_óèêÃâ¦Ã¨Ã±_ÃÂ£ÃÆÃªÃËèñ_Ãâ ÃËÃÂÃâ¦Ã¨Ã±_ïÊóÃâ¦Ã¨Ã±".split("_"), monthsShort: "ìçÃâ ÃÂÃÅ _ÃÂÃÅ ÃÂñÃÅ _Ãâ¦Ã§Ã±Ã³_ãÃÂñÃÅ Ãâ_Ãâ¦Ã§ÃÅ _ìÃËçÃâ _ìÃËÃÅ ÃâÊé_ãÃËê_óèêÃâ¦Ã¨Ã±_ÃÂ£ÃÆÃªÃËèñ_Ãâ ÃËÃÂÃâ¦Ã¨Ã±_ïÊóÃâ¦Ã¨Ã±".split("_"), weekdays: "çÃâãÃÂï_çÃâÃ¥ëÃâ ÃÅ Ãâ _çÃâëÃâçëçá_çÃâãñèùçá_çÃâîÃâ¦ÃŠó_çÃâìÃâ¦Ã¹Ã©_çÃâóèê".split("_"), weekdaysShort: "ãÃÂï_Ã¥ëÃâ ÃÅ Ãâ _ëÃâçëçá_ãñèùçá_îÃâ¦ÃŠó_ìÃâ¦Ã¹Ã©_óèê".split("_"), weekdaysMin: "ÃÂ_Ãâ _ë_ñ_î_ì_ó".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, calendar: { sameDay: "[çÃâÃÅ ÃËÃ⦠ùÃâÃⰠçÃâóçùé] LT", nextDay: "[úïç ùÃâÃⰠçÃâóçùé] LT", nextWeek: "dddd [ùÃâÃⰠçÃâóçùé] LT", lastDay: "[ãÃâ¦Ã³ ùÃâÃⰠçÃâóçùé] LT", lastWeek: "dddd [ùÃâÃⰠçÃâóçùé] LT", sameElse: "L" }, relativeTime: { future: "ÃÂÃÅ %s", past: "Ãâ¦Ãâ ð %s", s: "ëÃËçÃâ ", m: "ïÃâÃÅ Ãâé", mm: "%d ïÃâçæÃâ", h: "óçùé", hh: "%d óçùçê", d: "ÃÅ ÃËÃâ¦", dd: "%d ãÊçÃâ¦", M: "ôÃâ¡Ã±", MM: "%d ãôÃâ¡Ã±", y: "óÃâ é", yy: "%d óÃâ ÃËçê" }, week: { dow: 1, doy: 4 } }
vendor: 8,007 bytes, lines 6868-6920
6868), { 1: "á", 2: "â", 3: "ã", 4: "ä", 5: "ÃÂ¥", 6: "æ", 7: "ç", 8: "è", 9: "é", 0: "à " }), 6869 ar__numberMap = { "á": "1", "â": "2", "ã": "3", "ä": "4", "ÃÂ¥": "5", "æ": "6", "ç": "7", "è": "8", "é": "9", "à ": "0" }, 6870 ar__pluralForm = function(n) { return 0 === n ? 0 : 1 === n ? 1 : 2 === n ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5 }, 6871 ar__plurals = { s: ["ãÃâÃâ Ãâ¦Ãâ ëçÃâ Êé", "ëçÃâ Êé ÃËçÃÂïé", ["ëçÃâ ÊêçÃâ ", "ëçÃâ ÊêÃÅ Ãâ "], "%d ëÃËçÃâ ", "%d ëçÃâ Êé", "%d ëçÃâ Êé"], m: ["ãÃâÃâ Ãâ¦Ãâ ïÃâÃÅ Ãâé", "ïÃâÃÅ Ãâé ÃËçÃÂïé", ["ïÃâÃÅ ÃâêçÃâ ", "ïÃâÃÅ ÃâêÃÅ Ãâ "], "%d ïÃâçæÃâ", "%d ïÃâÃÅ Ãâé", "%d ïÃâÃÅ Ãâé"], h: ["ãÃâÃâ Ãâ¦Ãâ óçùé", "óçùé ÃËçÃÂïé", ["óçùêçÃâ ", "óçùêÃÅ Ãâ "], "%d óçùçê", "%d óçùé", "%d óçùé"], d: ["ãÃâÃâ Ãâ¦Ãâ ÃÅ ÃËÃâ¦", "ÃÅ ÃËÃ⦠ÃËçÃÂï", ["ÃÅ ÃËÃâ¦Ã§Ãâ ", "ÃÅ ÃËÃâ¦ÃÅ Ãâ "], "%d ãÊçÃâ¦", "%d ÃÅ ÃËÃâ¦Ãâ¹Ã§", "%d ÃÅ ÃËÃâ¦"], M: ["ãÃâÃâ Ãâ¦Ãâ ôÃâ¡Ã±", "ôÃâ¡Ã± ÃËçÃÂï", ["ôÃâ¡Ã±Ã§Ãâ ", "ôÃâ¡Ã±ÃÅ Ãâ "], "%d ãôÃâ¡Ã±", "%d ôÃâ¡Ã±Ã§", "%d ôÃâ¡Ã±"], y: ["ãÃâÃâ Ãâ¦Ãâ ùçÃâ¦", "ùçÃ⦠ÃËçÃÂï", ["ùçÃâ¦Ã§Ãâ ", "ùçÃâ¦ÃÅ Ãâ "], "%d ãùÃËçÃâ¦", "%d ùçÃâ¦Ãâ¹Ã§", "%d ùçÃâ¦"] }, 6872 ar__pluralize = function(u) { 6873 return function(number, withoutSuffix, string, isFuture) { 6874 var f = ar__pluralForm(number), 6875 str = ar__plurals[u][ar__pluralForm(number)]; 6876 return 2 === f && (str = str[withoutSuffix ? 0 : 1]), str.replace(/%d/i, number) 6877 } 6878 }, 6879 ar__months = ["̮̤Ãâ ÃËÃâ çÃâëçÃâ ÃÅ ÃÅ Ãâ çÊñ", "ôèç÷ ÃÂèñçÊñ", "âðçñ Ãâ¦Ã§Ã±Ã³", "Ãâ ÊóçÃâ ãèñÃÅ Ãâ", "ãÊçñ Ãâ¦Ã§ÃÅ ÃË", "ÃÂòÊñçÃâ ÃÅ ÃËÃâ ÃÅ ÃË", "êÃâ¦ÃËò ÃÅ ÃËÃâÃÅ ÃË", "âè ãúó÷ó", "ãÃÅ ÃâÃËÃâ óèêÃâ¦Ã¨Ã±", "êôñÃÅ Ãâ çÃâãÃËÃâ ÃÂ£ÃÆÃªÃËèñ", "êôñÃÅ Ãâ çÃâëçÃâ ÃÅ Ãâ ÃËÃÂÃâ¦Ã¨Ã±", "̮̤Ãâ ÃËÃâ çÃâãÃËÃâ ïÊóÃâ¦Ã¨Ã±"], 6880 az__suffixes = (moment__default.defineLocale("ar", { 6881 months: ar__months, 6882 monthsShort: ar__months, 6883 weekdays: "çÃâãÃÂï_çÃâÃ¥ëÃâ ÃÅ Ãâ _çÃâëÃâçëçá_çÃâãñèùçá_çÃâîÃâ¦ÃŠó_çÃâìÃâ¦Ã¹Ã©_çÃâóèê".split("_"), 6884 weekdaysShort: "ãÃÂï_Ã¥ëÃâ ÃÅ Ãâ _ëÃâçëçá_ãñèùçá_îÃâ¦ÃŠó_ìÃâ¦Ã¹Ã©_óèê".split("_"), 6885 weekdaysMin: "ÃÂ_Ãâ _ë_ñ_î_ì_ó".split("_"), 6886 weekdaysParseExact: !0, 6887 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "D/ââ¬ÂM/ââ¬ÂYYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, 6888 meridiemParse: /õ|Ãâ¦/, 6889 isPM: function(input) { return "Ãâ¦" === input }, 6890 meridiem: function(hour, minute, isLower) { return hour < 12 ? "õ" : "Ãâ¦" }, 6891 calendar: { sameDay: "[çÃâÃÅ ÃËÃ⦠ùÃâ ï çÃâóçùé] LT", nextDay: "[úïÃâ¹Ã§ ùÃâ ï çÃâóçùé] LT", nextWeek: "dddd [ùÃâ ï çÃâóçùé] LT", lastDay: "[ãÃâ¦Ã³ ùÃâ ï çÃâóçùé] LT", lastWeek: "dddd [ùÃâ ï çÃâóçùé] LT", sameElse: "L" }, 6892 relativeTime: { future: "èùï %s", past: "Ãâ¦Ãâ ð %s", s: ar__pluralize("s"), m: ar__pluralize("m"), mm: ar__pluralize("m"), h: ar__pluralize("h"), hh: ar__pluralize("h"), d: ar__pluralize("d"), dd: ar__pluralize("d"), M: ar__pluralize("M"), MM: ar__pluralize("M"), y: ar__pluralize("y"), yy: ar__pluralize("y") }, 6893 preparse: function(string) { return string.replace(/\u200f/g, "").replace(/[áâãäÃ¥æçèéà ]/g, function(match) { return ar__numberMap[match] }).replace(/ÃÅ/g, ",") }, 6894 postformat: function(string) { return string.replace(/\d/g, function(match) { return ar__symbolMap[match] }).replace(/,/g, "ÃÅ") }, 6895 week: { dow: 6, doy: 12 } 6896 }), { 1: "-inci", 5: "-inci", 8: "-inci", 70: "-inci", 80: "-inci", 2: "-nci", 7: "-nci", 20: "-nci", 50: "-nci", 3: "-üncü", 4: "-üncü", 100: "-üncü", 6: "-ncñ", 9: "-uncu", 10: "-uncu", 30: "-uncu", 60: "-ñncñ", 90: "-ñncñ" }), 6897 bn__symbolMap = (moment__default.defineLocale("az", { 6898 months: "yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"), 6899 monthsShort: "yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"), 6900 weekdays: "Bazar_Bazar ertÃâ¢si_Ãâ¡Ãâ¢rà ŸÃâ¢nbÃ⢠axà Ÿamñ_Ãâ¡Ãâ¢rà ŸÃâ¢nbÃâ¢_CümÃ⢠axà Ÿamñ_CümÃâ¢_à žÃâ¢nbÃâ¢".split("_"), 6901 weekdaysShort: "Baz_BzE_Ãâ¡Ax_Ãâ¡Ãâ¢r_CAx_Cüm_à žÃâ¢n".split("_"), 6902 weekdaysMin: "Bz_BE_Ãâ¡A_Ãâ¡Ãâ¢_CA_Cü_à žÃâ¢".split("_"), 6903 weekdaysParseExact: !0, 6904 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, 6905 calendar: { sameDay: "[bugün saat] LT", nextDay: "[sabah saat] LT", nextWeek: "[gÃâ¢lÃâ¢n hÃâ¢ftÃâ¢] dddd [saat] LT", lastDay: "[dünÃâ¢n] LT", lastWeek: "[keçÃâ¢n hÃâ¢ftÃâ¢] dddd [saat] LT", sameElse: "L" }, 6906 relativeTime: { future: "%s sonra", past: "%s Ãâ¢vvÃâ¢l", s: "birneçÃ⢠saniyyÃâ¢", m: "bir dÃâ¢qiqÃâ¢", mm: "%d dÃâ¢qiqÃâ¢", h: "bir saat", hh: "%d saat", d: "bir gün", dd: "%d gün", M: "bir ay", MM: "%d ay", y: "bir il", yy: "%d il" }, 6907 meridiemParse: /gecÃâ¢|sÃâ¢hÃâ¢r|gündüz|axà Ÿam/, 6908 isPM: function(input) { return /^(gündüz|axà Ÿam)$/.test(input) }, 6909 meridiem: function(hour, minute, isLower) { return hour < 4 ? "gecÃâ¢" : hour < 12 ? "sÃâ¢hÃâ¢r" : hour < 17 ? "gündüz" : "axà Ÿam" }, 6910 ordinalParse: /\d{1,2}-(ñncñ|inci|nci|üncü|ncñ|uncu)/, 6911 ordinal: function(number) { 6912 if (0 === number) return number + "-ñncñ"; 6913 var a = number % 10, 6914 b = number % 100 - a, 6915 c = number >= 100 ? 100 : null; 6916 return number + (az__suffixes[a] || az__suffixes[b] || az__suffixes[c]) 6917 }, 6918 week: { dow: 1, doy: 7 } 6919 }), moment__default.defineLocale("be", { 6920 months: { format: "ÃÂÃâÃÆÃ´Ã·ÃµÃ½ÃÂ_ûÎÃâðóð_ÃÂðúðòÃâúð_úÃâ¬Ã°ÃÂðòÃâúð_ÃâÃâ¬Ã°ÃžÃ½ÃÂ_Ãâ¡ÃÂÃâ¬Ã²ÃµÃ½ÃÂ_ûÃâÿõýÃÂ_öýÃâÞýÃÂ_òõÃâ¬Ã°ÃÂýÃÂ_úðÃÂÃâÃâ¬Ãâ¹Ãâ¡Ã½Ãâúð_ûÃâÃÂÃâðÿðôð_
vendor: 5,019 bytes, lines 6920-6969
6920ÃÂýõöýÃÂ".split("_"), standalone: "ÃÂÃâÃÆÃ´Ã·ÃµÃ½ÃÅ_ûÎÃâÃâ¹_ÃÂðúðòÃâú_úÃâ¬Ã°ÃÂðòÃâú_ÃâÃâ¬Ã°Ã²ÃµÃ½ÃÅ_Ãâ¡ÃÂÃâ¬Ã²ÃµÃ½ÃÅ_ûÃâÿõýÃÅ_öýÃâòõýÃÅ_òõÃâ¬Ã°ÃÂõýÃÅ_úðÃÂÃâÃâ¬Ãâ¹Ãâ¡Ã½Ãâú_ûÃâÃÂÃâðÿðô_ÃÂýõöðýÃÅ".split("_") }, 6921 monthsShort: "ÃÂÃâ̮̫_ûÎÃâ_ÃÂðú_úÃâ¬Ã°ÃÂ_ÃâÃâ¬Ã°Ã²_Ãâ¡ÃÂÃâ¬Ã²_ûÃâÿ_öýÃâò_òõÃâ¬_úðÃÂÃâ_ûÃâÃÂÃâ_ÃÂýõö".split("_"), 6922 weekdays: { format: "ýÃÂô÷õûÎ_ÿðýÃÂô÷õûðú_ðÞÃâþÃâ¬Ã°Ãº_ÃÂõÃâ¬Ã°ÃÂ´ÃÆ_Ãâ¡Ã°Ãâ òõÃâ¬_ÿÃÂÃâýÃâÃâ ÃÆ_ÃÂÃÆÃ±Ã¾ÃâÃÆ".split("_"), standalone: "ýÃÂô÷õûÃÂ_ÿðýÃÂô÷õûðú_ðÞÃâþÃâ¬Ã°Ãº_ÃÂõÃâ¬Ã°Ã´Ã°_Ãâ¡Ã°Ãâ òõÃâ¬_ÿÃÂÃâýÃâÃâ ð_ÃÂÃÆÃ±Ã¾Ãâð".split("_"), isFormat: /\[ ?[Ãâò] ?(?:üÃâÃÂ½ÃÆÃÂ»ÃÆÃŽ|ýðÃÂÃâÃÆÃ¿ÃÂ½ÃÆÃŽ)? ?\] ?dddd/ }, 6923 weekdaysShort: "ýô_ÿý_ðÃâ_ÃÂÃâ¬_Ãâ¡Ãâ _ÿÃâ_ÃÂñ".split("_"), 6924 weekdaysMin: "ýô_ÿý_ðÃâ_ÃÂÃâ¬_Ãâ¡Ãâ _ÿÃâ_ÃÂñ".split("_"), 6925 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY ó.", LLL: "D MMMM YYYY ó., HH:mm", LLLL: "dddd, D MMMM YYYY ó., HH:mm" }, 6926 calendar: { 6927 sameDay: "[áÃâýýàÞ] LT", 6928 nextDay: "[ÃâðÞÃâÃâ¬Ã° Þ] LT", 6929 lastDay: "[ãÃâ¡Ã¾Ãâ¬Ã° Þ] LT", 6930 nextWeek: function() { return "[ã] dddd [Þ] LT" }, 6931 lastWeek: function() { 6932 switch (this.day()) { 6933 case 0: 6934 case 3: 6935 case 5: 6936 case 6: 6937 return "[ã üÃâÃÂ½ÃÆÃÂ»ÃÆÃŽ] dddd [Þ] LT"; 6938 case 1: 6939 case 2: 6940 case 4: 6941 return "[ã üÃâÃÂ½ÃÆÃ»Ãâ¹] dddd [Þ] LT" 6942 } 6943 }, 6944 sameElse: "L" 6945 }, 6946 relativeTime: { future: "ÿÃâ¬Ã°Ã· %s", past: "%s ÃâðÃÂ¼ÃÆ", s: "ýõúðûÃÅúÃâ ÃÂõÃÂºÃÆÃ½Ã´", m: be__relativeTimeWithPlural, mm: be__relativeTimeWithPlural, h: be__relativeTimeWithPlural, hh: be__relativeTimeWithPlural, d: "ô÷õýÃÅ", dd: be__relativeTimeWithPlural, M: "üõÃÂÃÂÃâ ", MM: be__relativeTimeWithPlural, y: "óþô", yy: be__relativeTimeWithPlural }, 6947 meridiemParse: /ýþÃâ¡Ãâ¹|Ãâ¬Ã°Ã½ÃâÃâ Ãâ¹|ôýÃÂ|òõÃâ¡Ã°Ãâ¬Ã°/, 6948 isPM: function(input) { return /^(ôýÃÂ|òõÃâ¡Ã°Ãâ¬Ã°)$/.test(input) }, 6949 meridiem: function(hour, minute, isLower) { return hour < 4 ? "ýþÃâ¡Ãâ¹" : hour < 12 ? "Ãâ¬Ã°Ã½ÃâÃâ Ãâ¹" : hour < 17 ? "ôýÃÂ" : "òõÃâ¡Ã°Ãâ¬Ã°" }, 6950 ordinalParse: /\d{1,2}-(Ãâ|Ãâ¹|óð)/, 6951 ordinal: function(number, period) { 6952 switch (period) { 6953 case "M": 6954 case "d": 6955 case "DDD": 6956 case "w": 6957 case "W": 6958 return number % 10 !== 2 && number % 10 !== 3 || number % 100 === 12 || number % 100 === 13 ? number + "-Ãâ¹" : number + "-Ãâ"; 6959 case "D": 6960 return number + "-óð"; 6961 default: 6962 return number 6963 } 6964 }, 6965 week: { dow: 1, doy: 7 } 6966 }), moment__default.defineLocale("bg", { 6967 months: "ÃÂÃÂ½ÃÆÃ°Ãâ¬Ã¸_ÃâõòÃâ¬ÃÆÃ°Ãâ¬Ã¸_üðÃâ¬Ãâ_ðÿÃâ¬Ã¸Ã»_üðù_Îýø_Îûø_ðòÃÂ³ÃÆÃÂÃâ_ÃÂõÿÃâõüòÃâ¬Ã¸_þúÃâþüòÃâ¬Ã¸_ýþõüòÃâ¬Ã¸_ôõúõüòÃâ¬Ã¸".split("_"), 6968 monthsShort: "ÃÂýÃâ¬_Ãâõò_üðÃâ¬_ðÿÃâ¬_üðù_Îýø_Îûø_ðòó_ÃÂõÿ_þúÃâ_ýþõ_ôõú".split("_"), 6969 weekdays: "ýõôõûÃÂ_ÿþýõôõûýøú_òÃâþÃâ¬Ã½Ã¸Ãº_ÃÂÃâ¬ÃÂôð_
6969Ãâ¡ÃµÃâòÃÅ Ãâ¬ÃâÊú_ÿõÃâÊú_ÃÂÊñþÃâð".split("_"), 6970 weekdaysShort: "ýõô_ÿþý_òÃâþ_ÃÂÃâ¬ÃÂ_Ãâ¡ÃµÃâ_ÿõÃâ_ÃÂÊñ".split("_"), 6971 weekdaysMin: "ýô_ÿý_òÃâ_ÃÂÃâ¬_Ãâ¡Ãâ_ÿÃâ_ÃÂñ".split("_"), 6972 longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "D.MM.YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY H:mm", LLLL: "dddd, D MMMM YYYY H:mm" }, 6973 calendar: { 6974 sameDay: "[Ãâýõàò] LT", 6975 nextDay: "[ãÃâÃâ¬Ãµ ò] LT", 6976 nextWeek: "dddd [ò] LT", 6977 lastDay: "[ÃâÃâ¡ÃµÃâ¬Ã° ò] LT", 6978 lastWeek: function() { 6979 switch (this.day()) { 6980 case 0: 6981 case 3: 6982 case 6: 6983 return "[Ãâ ø÷üøýðûðÃâð] dddd [ò] LT"; 6984 case 1: 6985 case 2: 6986 case 4: 6987 case 5: 6988 return "[Ãâ ø÷üøýðûøÃÂ] dddd [ò] LT" 6989 } 6990 }, 6991 sameElse: "L" 6992 }, 6993 relativeTime: { future: "ÃÂûõô %s", past: "ÿÃâ¬ÃµÃ´Ã¸ %s", s: "ýÃÂúþûúþ ÃÂõÃÂºÃÆÃ½Ã´Ã¸", m: "üøÃÂ½ÃÆÃâð", mm: "%d üøÃÂ½ÃÆÃâø", h: "Ãâ¡Ã°ÃÂ", hh: "%d Ãâ¡Ã°ÃÂð", d: "ôõý", dd: "%d ôýø", M: "üõÃÂõÃâ ", MM: "%d üõÃÂõÃâ ð", y: "óþôøýð", yy: "%d óþôøýø" }, 6994 ordinalParse: /\d{1,2}-(õò|õý|Ãâø|òø|Ãâ¬Ã¸|üø)/, 6995 ordinal: function(number) { 6996 var lastDigit = number % 10, 6997 last2Digits = number % 100; 6998 return 0 === number ? number + "-õò" : 0 === last2Digits ? number + "-õý" : last2Digits > 10 && last2Digits < 20 ? number + "-Ãâø" : 1 === lastDigit ? number + "-òø" : 2 === lastDigit ? number + "-Ãâ¬Ã¸" : 7 === lastDigit || 8 === lastDigit ? number + "-üø" : number + "-Ãâø" 6999 }, 7000 week: { dow: 1, doy: 7 } 7001 }), { 1: "à §§", 2: "à §¨", 3: "à §©", 4: "à §ª", 5: "à §«", 6: "à §¬", 7: "à §Â", 8: "à §®", 9: "à §¯", 0: "à §¦" }), 7002 bn__numberMap = { "à §§": "1", "à §¨": "2", "à §©": "3", "à §ª": "4", "à §«": "5", "à §¬": "6", "à §Â": "7", "à §®": "8", "à §¯": "9", "à §¦": "0" }, 7003 bo__symbolMap = (moment__default.defineLocale("bn", { months: "à ¦Åà ¦¾à ¦¨à §Âà §Ÿà ¦¾à ¦°à §â¬_à ¦«à §â¡Ã ¦¬à §Âà ¦°à §Âà §Ÿà ¦¾à ¦°à ¦¿_à ¦®à ¦¾à ¦°à §Âà ¦š_à ¦Âà ¦ªà §Âà ¦°à ¦¿à ¦²_à ¦®à §â¡_à ¦Åà §Âà ¦¨_à ¦Åà §Âà ¦²à ¦¾à ¦â¡_à ¦â à ¦âà ¦¸à §Âà ¦Ÿ_à ¦¸à §â¡Ã ¦ªà §Âà ¦Ÿà §â¡Ã ¦®à §Âà ¦¬à ¦°_à ¦â¦Ã ¦â¢Ã §Âà ¦Ÿà §â¹Ã ¦¬à ¦°_à ¦¨à ¦Âà §â¡Ã ¦®à §Âà ¦¬à ¦°_à ¦¡à ¦¿à ¦¸à §â¡Ã ¦®à §Âà ¦¬à ¦°".split("_"), monthsShort: "à ¦Åà ¦¾à ¦¨à §Â_à ¦«à §â¡Ã ¦¬_à ¦®à ¦¾à ¦°à §Âà ¦š_à ¦Âà ¦ªà §Âà ¦°_à ¦®à §â¡_à ¦Åà §Âà ¦¨_à ¦Åà §Âà ¦²_à ¦â à ¦â_à ¦¸à §â¡Ã ¦ªà §Âà ¦Ÿ_à ¦â¦Ã ¦â¢Ã §Âà ¦Ÿà §â¹_à ¦¨à ¦Âà §â¡_à ¦¡à ¦¿à ¦¸à §â¡".split("_"), weekdays: "à ¦°à ¦¬à ¦¿à ¦¬à ¦¾à ¦°_à ¦¸à §â¹Ã ¦®à ¦¬à ¦¾à ¦°_à ¦®à ¦â¢Ã §Âà ¦âà ¦²à ¦¬à ¦¾à ¦°_à ¦¬à §Âà ¦§à ¦¬à ¦¾à ¦°_à ¦¬à §ÆÃ ¦¹à ¦¸à §Âà ¦ªà ¦¤à ¦¿à ¦¬à ¦¾à ¦°_à ¦¶à §Âà ¦â¢Ã §Âà ¦°à ¦¬à ¦¾à ¦°_à ¦¶à ¦¨à ¦¿à ¦¬à ¦¾à ¦°".split("_"), weekdaysShort: "à ¦°à ¦¬à ¦¿_à ¦¸à §â¹Ã ¦®_à ¦®à ¦â¢Ã §Âà ¦âà ¦²_à ¦¬à §Âà ¦§_à ¦¬à §ÆÃ ¦¹à ¦¸à §Âà ¦ªà ¦¤à ¦¿_à ¦¶à §Âà ¦â¢Ã §Âà ¦°_à ¦¶à ¦¨à ¦¿".split("_"), weekdaysMin: "à ¦°à ¦¬à ¦¿_à ¦¸à §â¹Ã ¦®_à ¦®à ¦â¢Ã §Âà ¦â_à ¦¬à §Âà ¦§_à ¦¬à §ÆÃ ¦¹à ¦Æ_à ¦¶à §Âà ¦â¢Ã §Âà ¦°_à ¦¶à ¦¨à ¦¿".split("_"), longDateFormat: { LT: "A h:mm à ¦¸à ¦®à §Ÿ", LTS: "A h:mm:ss à ¦¸à ¦®à §Ÿ", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY, A h:mm à ¦¸à ¦®à §Ÿ", LLLL: "dddd, D MMMM YYYY, A h:mm à ¦¸à ¦®à §Ÿ" }, calendar: { sameDay: "[à ¦â à ¦Å] LT", nextDay: "[à ¦â à ¦âà ¦¾à ¦®à §â¬Ã ¦â¢Ã ¦¾à ¦²] LT", nextWeek: "dddd, LT", lastDay: "[à ¦âà ¦¤à ¦â¢Ã ¦¾à ¦²] LT", lastWeek: "[à ¦âà ¦¤] dddd, LT", sameElse: "L" }, relativeTime: { future: "%s à ¦ªà ¦°à §â¡", past: "%s à ¦â à ¦âà §â¡", s: "à ¦â¢Ã §Ÿà §â¡Ã ¦⢠à ¦¸à §â¡Ã ¦â¢Ã §â¡Ã ¦¨à §Âà ¦¡", m: "à ¦Âà ¦⢠à ¦®à ¦¿à ¦¨à ¦¿à ¦Ÿ", mm: "%d à ¦®à ¦¿à ¦¨à ¦¿à ¦Ÿ", h: "à ¦Âà ¦⢠à ¦Ëà ¦¨à §Âà ¦Ÿà ¦¾", hh: "%d à ¦Ëà ¦¨à §Âà ¦Ÿà ¦¾", d: "à ¦Âà ¦⢠à ¦¦à ¦¿à ¦¨", dd: "%d à ¦¦à ¦¿à ¦¨", M: "à ¦Âà ¦⢠à ¦®à ¦¾à ¦¸", MM: "%d à ¦®à ¦¾à ¦¸", y: "à ¦Âà ¦⢠à ¦¬à ¦âºÃ ¦°", yy: "%d à ¦¬à ¦âºÃ ¦°" }, preparse: function(string) { return string.replace(/[à §§à §¨à §©à §ªà Â
vendor: 6,432 bytes, lines 7003-7005
7003§Â«Ã §¬à §Âà §®à §¯à §¦]/g, function(match) { return bn__numberMap[match] }) }, postformat: function(string) { return string.replace(/\d/g, function(match) { return bn__symbolMap[match] }) }, meridiemParse: /à ¦°à ¦¾à ¦¤|à ¦¸à ¦â¢Ã ¦¾à ¦²|à ¦¦à §Âà ¦ªà §Âà ¦°|à ¦¬à ¦¿à ¦â¢Ã ¦¾à ¦²|à ¦°à ¦¾à ¦¤/, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "à ¦°à ¦¾à ¦¤" === meridiem && hour >= 4 || "à ¦¦à §Âà ¦ªà §Âà ¦°" === meridiem && hour < 5 || "à ¦¬à ¦¿à ¦â¢Ã ¦¾à ¦²" === meridiem ? hour + 12 : hour }, meridiem: function(hour, minute, isLower) { return hour < 4 ? "à ¦°à ¦¾à ¦¤" : hour < 10 ? "à ¦¸à ¦â¢Ã ¦¾à ¦²" : hour < 17 ? "à ¦¦à §Âà ¦ªà §Âà ¦°" : hour < 20 ? "à ¦¬à ¦¿à ¦â¢Ã ¦¾à ¦²" : "à ¦°à ¦¾à ¦¤" }, week: { dow: 0, doy: 6 } }), { 1: "à ¼¡", 2: "à ¼¢", 3: "à ¼£", 4: "à ¼¤", 5: "à ¼¥", 6: "à ¼¦", 7: "à ¼§", 8: "à ¼¨", 9: "à ¼©", 0: "à ¼ " }), 7004 bo__numberMap = { "à ¼¡": "1", "à ¼¢": "2", "à ¼£": "3", "à ¼¤": "4", "à ¼¥": "5", "à ¼¦": "6", "à ¼§": "7", "à ¼¨": "8", "à ¼©": "9", "à ¼ ": "0" }, 7005 cs__months = (moment__default.defineLocale("bo", { months: "à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½âà ¼â¹Ã ½âà ½¼_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½â°Ã ½²à ½¦à ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½¦à ½´à ½Ëà ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½žà ½²à ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½£à ¾âà ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ¾²à ½´à ½âà ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½âà ½´à ½âà ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½¢à ¾âà ¾±à ½âà ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½âà ½´à ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½â¦Ã ½´à ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½â¦Ã ½´à ¼â¹Ã ½âà ½â¦Ã ½²à ½âà ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½â¦Ã ½´à ¼â¹Ã ½âà ½â°Ã ½²à ½¦à ¼â¹Ã ½â".split("_"), monthsShort: "à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½âà ¼â¹Ã ½âà ½¼_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½â°Ã ½²à ½¦à ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½¦à ½´à ½Ëà ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½žà ½²à ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½£à ¾âà ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ¾²à ½´à ½âà ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½âà ½´à ½âà ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½¢à ¾âà ¾±à ½âà ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½âà ½´à ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½â¦Ã ½´à ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½â¦Ã ½´à ¼â¹Ã ½âà ½â¦Ã ½²à ½âà ¼â¹Ã ½â_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½â¦Ã ½´à ¼â¹Ã ½âà ½â°Ã ½²à ½¦à ¼â¹Ã ½â".split("_"), weekdays: "à ½âà ½Ÿà ½ à ¼â¹Ã ½â°Ã ½²à ¼â¹Ã ½Ëà ¼â¹_à ½âà ½Ÿà ½ à ¼â¹Ã ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹_à ½âà ½Ÿà ½ à ¼â¹Ã ½Ëà ½²à ½âà ¼â¹Ã ½âà ½Ëà ½¢à ¼â¹_à ½âà ½Ÿà ½ à ¼â¹Ã ½£à ¾·à ½âà ¼â¹Ã ½âà ¼â¹_à ½âà ½Ÿà ½ à ¼â¹Ã ½â¢Ã ½´à ½¢à ¼â¹Ã ½âà ½´_à ½âà ½Ÿà ½ à ¼â¹Ã ½âà ¼â¹Ã ½¦à ½âà ½¦à ¼â¹_à ½âà ½Ÿà ½ à ¼â¹Ã ½¦à ¾¤à ½ºà ½âà ¼â¹Ã ½âà ¼â¹".split("_"), weekdaysShort: "à ½â°Ã ½²à ¼â¹Ã ½Ëà ¼â¹_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹_à ½Ëà ½²à ½âà ¼â¹Ã ½âà ½Ëà ½¢à ¼â¹_à ½£à ¾·à ½âà ¼â¹Ã ½âà ¼â¹_à ½â¢Ã ½´à ½¢à ¼â¹Ã ½âà ½´_à ½âà ¼â¹Ã ½¦à ½âà ½¦à ¼â¹_à ½¦à ¾¤à ½ºà ½âà ¼â¹Ã ½âà ¼â¹".split("_"), weekdaysMin: "à ½â°Ã ½²à ¼â¹Ã ½Ëà ¼â¹_à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹_à ½Ëà ½²à ½âà ¼â¹Ã ½âà ½Ëà ½¢à ¼â¹_à ½£à ¾·à ½âà ¼â¹Ã ½âà ¼â¹_à ½â¢Ã ½´à ½¢à ¼â¹Ã ½âà ½´_à ½âà ¼â¹Ã ½¦à ½âà ½¦à ¼â¹_à ½¦à ¾¤à ½ºà ½âà ¼â¹Ã ½âà ¼â¹".split("_"), longDateFormat: { LT: "A h:mm", LTS: "A h:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY, A h:mm", LLLL: "dddd, D MMMM YYYY, A h:mm" }, calendar: { sameDay: "[à ½âà ½²à ¼â¹Ã ½¢à ½²à ½â] LT", nextDay: "[à ½¦à ½âà ¼â¹Ã ½â°Ã ½²à ½â] LT", nextWeek: "[à ½âà ½âà ½´à ½âà ¼â¹Ã ½â¢Ã ¾²à ½âà ¼â¹Ã ½¢à ¾âà ½ºà ½¦à ¼â¹Ã ½Ë], LT", lastDay: "[à ½Âà ¼â¹Ã ½¦à ½â] LT", lastWeek: "[à ½âà ½âà ½´à ½âà ¼â¹Ã ½â¢Ã ¾²à ½âà ¼â¹Ã ½Ëà ½Âà ½ à ¼â¹Ã ½Ë] dddd, LT", sameElse: "L" }, relativeTime: { future: "%s à ½£à ¼â¹", past: "%s à ½¦à ¾âà ½âà ¼â¹Ã ½£", s: "à ½£à ½Ëà ¼â¹Ã ½¦à ½â", m: "à ½¦à ¾Âà ½¢à ¼â¹Ã ½Ëà ¼â¹Ã ½âà ½â¦Ã ½²à ½â", mm: "%d à ½¦à ¾Âà ½¢à ¼â¹Ã ½Ë", h: "à ½â à ½´à ¼â¹Ã ½šà ½¼à ½âà ¼â¹Ã ½âà ½â¦Ã ½²à ½â", hh: "%d à ½â à ½´à ¼â¹Ã ½šà ½¼à ½â", d: "à ½â°Ã ½²à ½âà ¼â¹Ã ½âà ½â¦Ã ½²à ½â", dd: "%d à ½â°Ã ½²à ½âà ¼â¹", M: "à ½Ÿà ¾³à ¼â¹Ã ½âà ¼â¹Ã ½âà ½â¦Ã ½²à ½â", MM: "%d à ½Ÿà ¾³à ¼â¹Ã ½â", y: "à ½£à ½¼à ¼â¹Ã ½âà ½â¦Ã ½²à ½â", yy: "%d à ½£à ½¼" }, preparse: function(string) { return string.replace(/[à ¼¡à ¼¢à ¼£à ¼¤à ¼¥à ¼¦à ¼§à ¼¨à ¼©à ¼ ]/g, function(match) { return bo__numberMap[match] }) }, postformat: function(string) { return string.replace(/\d/g, function(match) { return bo__symbolMap[match] }) }, meridiemParse: /à ½Ëà ½šà ½âà ¼â¹Ã ½Ëà ½¼|à ½žà ½¼à ½âà ½¦à ¼â¹Ã ½â¬Ã ½¦|à ½â°Ã ½²à ½âà ¼â¹Ã ½âà ½´à ½â|à ½âà ½âà ½¼à ½âà ¼â¹Ã ½âà ½â|à ½Ëà ½šà ½âà ¼â¹Ã ½Ëà ½¼/, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "à ½Ëà ½šà ½âà ¼â¹Ã ½Ëà ½¼" === meridiem && hour >= 4 || "à ½â°Ã ½²à ½âà ¼â¹Ã ½âà ½´à ½â" === meridiem && hour < 5 || "à ½âà ½âà ½¼à ½âà ¼â¹Ã ½âà ½â" === meridiem ? hour + 12 : hour }, meridiem: function(hour, minute, isLower) { return hour < 4 ? "à ½Ëà ½šà ½âà ¼â¹Ã ½Ëà ½¼" : hour < 10 ? "à ½
7005žà ½¼à ½âà ½¦à ¼â¹Ã ½â¬Ã ½¦" : hour < 17 ? "à ½â°Ã ½²à ½âà ¼â¹Ã ½âà ½´à ½â" : hour < 20 ? "à ½âà ½âà ½¼à ½âà ¼â¹Ã ½âà ½â" : "à ½Ëà ½šà ½âà ¼â¹Ã ½Ëà ½¼" }, week: { dow: 0, doy: 6 } }), moment__default.defineLocale("br", { months: "Genver_C'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"), monthsShort: "Gen_C'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"), weekdays: "Sul_Lun_Meurzh_Merc'her_Yaou_Gwener_Sadorn".split("_"), weekdaysShort: "Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"), weekdaysMin: "Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "h[e]mm A", LTS: "h[e]mm:ss A", L: "DD/MM/YYYY", LL: "D [a viz] MMMM YYYY", LLL: "D [a viz] MMMM YYYY h[e]mm A", LLLL: "dddd, D [a viz] MMMM YYYY h[e]mm A" }, calendar: { sameDay: "[Hiziv da] LT", nextDay: "[Warc'hoazh da] LT", nextWeek: "dddd [da] LT", lastDay: "[Dec'h da] LT", lastWeek: "dddd [paset da] LT", sameElse: "L" }, relativeTime: { future: "a-benn %s", past: "%s 'zo", s: "un nebeud segondennoù", m: "ur vunutenn", mm: relativeTimeWithMutation, h: "un eur", hh: "%d eur", d: "un devezh", dd: relativeTimeWithMutation, M: "ur miz", MM: relativeTimeWithMutation, y: "ur bloaz", yy: specialMutationForYears }, ordinalParse: /\d{1,2}(añ|vet)/, ordinal: function(number) { var output = 1 === number ? "añ" : "vet"; return number + output }, week: { dow: 1, doy: 4 } }), moment__default.defineLocale("bs", { 7006 months: "januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"), 7007 monthsShort: "jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"), 7008 monthsParseExact: !0, 7009 weekdays: "nedjelja_ponedjeljak_utorak_srijeda_ÃÂetvrtak_petak_subota".split("_"), 7010 weekdaysShort: "ned._pon._uto._sri._ÃÂet._pet._sub.".split("_"), 7011 weekdaysMin: "ne_po_ut_sr_ÃÂe_pe_su".split("_"), 7012 weekdaysParseExact: !0, 7013 longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY H:mm", LLLL: "dddd, D. MMMM YYYY H:mm" }, 7014 calendar: { 7015 sameDay: "[danas u] LT", 7016 nextDay: "[sutra u] LT", 7017 nextWeek: function() { 7018 switch (this.day()) { 7019 case 0: 7020 return "[u] [nedjelju] [u] LT"; 7021 case 3: 7022 return "[u] [srijedu] [u] LT"; 7023 case 6: 7024 return "[u] [subotu] [u] LT"; 7025 case 1: 7026 case 2: 7027 case 4: 7028 case 5: 7029 return "[u] dddd [u] LT" 7030 } 7031 }, 7032 lastDay: "[juÃÂer u] LT", 7033 lastWeek: function() { 7034 switch (this.day()) { 7035 case 0: 7036 case 3: 7037 return "[proà ¡lu] dddd [u] LT"; 7038 case 6: 7039 return "[proà ¡le] [subote] [u] LT"; 7040 case 1: 7041 case 2: 7042 case 4: 7043 case 5: 7044 return "[proà ¡li] dddd [u] LT" 7045 } 7046 }, 7047 sameElse: "L" 7048 }, 7049 relativeTime: { future: "za %s", past: "prije %s", s: "par sekundi", m: bs__translate, mm: bs__translate, h: bs__translate, hh: bs__translate, d: "dan", dd: bs__translate, M: "mjesec", MM: bs__translate, y: "godinu", yy: bs__translate }, 7050 ordinalParse: /\d{1,2}\./, 7051 ordinal: "%d.", 7052 week: { dow: 1, doy: 7 } 7053 }), moment__default.defineLocale("ca", { months: "gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"), monthsShort: "gen._febr._mar._abr._mai._jun._jul._ag._set._oct._nov._des.".split("_"), monthsParseExact: !0, weekdays: "diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"), weekdaysShort: "dg._dl._dt._dc._dj._dv._ds.".split("_"), weekdaysMin: "Dg_Dl_Dt_Dc_Dj_Dv_Ds".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY H:mm", LLLL: "dddd D MMMM YYYY H:mm" }, calendar: { sameDay: function() { return "[avui a " + (1 !== this.hours() ? "les" : "la") + "] LT" }, nextDay: function() { return "[demà a " + (1 !== this.hours() ? "les" : "la") + "] LT" }, nextWeek: function() { return "dddd [a " + (1 !== this.hours() ? "les" : "la") + "] LT" }, lastDay: function() { return "[ahir a " + (1 !== this.hours() ? "les" : "la") + "] LT" }, lastWeek: function() { return "[el] dddd [passat a " + (1 !== this.hours() ? "les" : "la") + "] LT" }, sameElse: "L" }, relativeTime: { future: "en %s", past: "fa %s", s: "uns segons", m: "un minut", mm: "%d minuts", h: "una hora", hh: "%d hores", d: "un dia", dd: "%d dies", M: "un mes", MM: "%d mesos", y: "un any", yy: "%d anys" }, ordinalParse: /\d{1,2}(r|n|t|è|a)/, ordinal: function(number, period) { var output = 1 === number ? "r" : 2 === number ? "n" : 3 === number ? "r" : 4 === number ? "t" : "è"; return "w" !== period && "W" !== period || (output = "a"), number + output }, week: { dow: 1, doy: 4 } }), "leden_únor_bà â¢ezen_duben_kvÃâºten_ÃÂerven_ÃÂervenec_srpen_záà â¢ÃÂ_à â¢ÃÂjen_listopad_prosinec".split("_")), 7054 cs__monthsShort = "led_úno_bà â¢e_dub_kvÃâº_ÃÂvn_ÃÂvc_srp_záà â¢_à â¢ÃÂj_lis_pro".split("_"), 7055 dv__months = (moment__default.defineLocale("cs", { 7056 months: cs__months, 7057 monthsShort: cs__monthsShort, 7058 monthsParse: function(months, monthsShort) { var i, _monthsParse = []; for (i = 0; i < 12; i++) _monthsParse[i] = new RegExp("^" + months[i] + "$|^" + monthsShort[i] + "$", "i"); return _monthsParse }(cs__months, cs__monthsShort), 7059 shortMonthsParse: function(monthsShort) { var i, _shortMonthsParse = []; for (i = 0; i < 12; i++) _shortMonthsParse[i] = new RegExp("^" + monthsShort[i] + "$", "i"); return _shortMonthsParse }(cs__monthsShort), 7060 longMonthsParse: function(months) { var i, _longMonthsParse = []; for (i = 0; i < 12; i++) _longMonthsParse[i] = new RegExp("^" + months[i] + "$", "i"); return _longMonthsParse }(cs__months), 7061 weekdays: "nedÃâºle_pondÃâºlÃÂ_úterý_stà â¢eda_ÃÂtvrtek_pátek_sobota".split("_"), 7062 weekdaysShort: "ne_po_út_st_ÃÂt_pá_so".split("_"), 7063 weekdaysMin: "ne_po_út_st_ÃÂt_pá_so".split("_"), 7064 longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY H:mm", LLLL: "dddd D. MMMM YYYY H:mm", l: "D. M. YYYY" }, 7065 calendar: { 7066 sameDay: "[dnes v] LT", 7067 nextDay: "[zÃÂtra v] LT", 7068 nextWeek: function() { 7069 switch (this.day()) { 7070 case 0: 7071 return "[v nedÃâºli v] LT"; 7072 case 1: 7073 case 2: 7074 return "[v] dddd [v] LT"; 7075 case 3: 7076 return "[ve stà â¢edu v] LT"; 7077 case 4: 7078 return "[ve ÃÂtvrtek v] LT"; 7079 case 5: 7080 return "[v pátek v] LT"; 7081 case 6: 7082 return "[v sobotu v] LT" 7083 } 7084 }, 7085 lastDay: "[vÃÂera v] LT", 7086 lastWeek: function() { 7087 switch (this.day()) { 7088 case 0: 7089 return "[minulou nedÃâºli v] LT"; 7090 case 1: 7091 case 2: 7092 return "[minulé] dddd [v] LT"; 7093 case 3: 7094 return "[minulou stà â¢edu v] LT"; 7095 case 4: 7096 case 5: 7097 return "[minulý] dddd [v] LT"; 7098 case 6: 7099 return "[minulou sobotu v] LT" 7100 } 7101 }, 7102 sameElse: "L" 7103 }, 7104 relativeTime: { future: "za %s", past: "pà â¢ed %s", s: cs__translate, m: cs__translate, mm: cs__translate, h: cs__translate, hh: cs__translate, d: cs__translate, dd: cs__translate, M: cs__translate, MM: cs__translate, y: cs__translate, yy: cs__translate }, 7105 ordinalParse: /\d{1,2}\./, 7106 ordinal: "%d.", 7107 week: { dow: 1, doy: 4 } 7108 }), moment__default.defineLocale("cv", { months: "úÃâÃâ¬Ã»Ã°Ãâ¡_ýðÃâ¬ÃâÃÂ_ÃÂ¿ÃÆÃË_ðúð_üðù_ëÃâÃâ¬Ãâüõ_ÃÆÃâÃâ_ÃÂ«ÃÆÃâ¬Ã»Ã°_ðòÃâý_Îÿð_Ãâ¡Ã³Ãº_Ãâ¬Ã°ÃËÃâðò".split("_"), monthsShort: "úÃâÃâ¬_ýðÃâ¬_ÃÂ¿ÃÆÃË_ðúð_üðù_ëÃâÃâ¬_ÃÆÃâÃâ_ÃÂ«ÃÆÃâ¬_ðòý_Îÿð_Ãâ¡Ã³Ãº_Ãâ¬Ã°ÃË".split("_"), weekdays: "òÃâ¹Ãâ¬ÃÂðÃâ¬Ã½Ã¸ÃÂºÃÆÃ½_ÃâÃÆÃ½ÃâøÃÂºÃÆÃ½_Ãâ¹ÃâûðÃâ¬Ã¸ÃÂºÃÆÃ½_ÎýÃÂºÃÆÃ½_úÃâëýõÃâ¬Ã½Ã¸ÃÂºÃÆÃ½_ÃÂÃâ¬Ã½ÃµÃÂºÃÆÃ½_ÃËÃâüðÃâÃÂºÃÆÃ½".split("_"), weekdaysShort: "òÃâ¹Ãâ¬_ÃâÃÆÃ½_Ãâ¹Ãâû_Îý_úÃâë_ÃÂÃâ¬Ã½_ÃËÃâü".split("_"), weekdaysMin: "òÃâ¬_Ãâý_Ãâ¹Ãâ_Îý_úë_ÃÂÃâ¬_ÃËü".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD-MM-YYYY", LL: "YYYY [ÃÂ«ÃÆÃ»Ãâ¦Ã¸] MMMM [ÃÆÃ¹ÃâÃâ¦Ãâý] D[-üÃâÃËÃâ]", LLL: "YYYY [ÃÂ«ÃÆÃ»Ãâ¦Ã¸] MMMM [ÃÆÃ¹ÃâÃâ¦Ãâý] D[-üÃâÃËÃâ], HH:mm", LLLL: "dddd, YYYY [ÃÂ«ÃÆÃ»Ãâ¦Ã¸] MMMM [ÃÆÃ¹ÃâÃâ¦Ãâý] D[-üÃâÃËÃâ], HH:mm" }, calendar: { sameDay: "[ßðÃÂý] LT [ÃÂõÃâ¦ÃµÃâÃâ¬Ãµ]", nextDay: "[ëÃâ¬Ã°Ã½] LT [ÃÂõÃâ¦ÃµÃâÃâ¬Ãµ]", lastDay: "[ÃâýõÃâ¬] LT [ÃÂõÃâ¦ÃµÃâÃâ¬Ãµ]", nextWeek: "[êøÃâõÃÂ] dddd LT [ÃÂõÃâ¦ÃµÃâÃâ¬Ãµ]", lastWeek: "[ÃËÃâ¬ÃâýÃâ] dddd LT [ÃÂõÃâ¦ÃµÃâÃâ¬Ãµ]", sameElse: "L" }, relativeTime: { future: function(output) { var affix = /ÃÂõÃâ¦ÃµÃâ$/i.exec(output) ? "Ãâ¬ÃµÃ½" : /ÃÂ«ÃÆÃ»$/i.exec(output) ? "Ãâðý" : "Ãâ¬Ã°Ã½"; return output + affix }
vendor: 21,527 bytes, lines 7108-7245
7108, past: "%s úðÃÂûûð", s: "ÿÃâÃâ¬-øú ëõúÃÂºÃÆÃ½Ãâ", m: "ÿÃâÃ⬠üøÃÂ½ÃÆÃâ", mm: "%d üøÃÂ½ÃÆÃâ", h: "ÿÃâÃ⬠ÃÂõÃâ¦ÃµÃâ", hh: "%d ÃÂõÃâ¦ÃµÃâ", d: "ÿÃâÃ⬠ÃÂºÃÆÃ½", dd: "%d ÃÂºÃÆÃ½", M: "ÿÃâÃâ¬ ÃÆÃ¹ÃâÃâ¦", MM: "%d ÃÆÃ¹ÃâÃâ¦", y: "ÿÃâÃ⬠ÃÂ«ÃÆÃ»", yy: "%d ÃÂ«ÃÆÃ»" }, ordinalParse: /\d{1,2}-üÃâÃË/, ordinal: "%d-üÃâÃË", week: { dow: 1, doy: 7 } }), moment__default.defineLocale("cy", { 7109 months: "Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"), 7110 monthsShort: "Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"), 7111 weekdays: "Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"), 7112 weekdaysShort: "Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"), 7113 weekdaysMin: "Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"), 7114 weekdaysParseExact: !0, 7115 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, 7116 calendar: { sameDay: "[Heddiw am] LT", nextDay: "[Yfory am] LT", nextWeek: "dddd [am] LT", lastDay: "[Ddoe am] LT", lastWeek: "dddd [diwethaf am] LT", sameElse: "L" }, 7117 relativeTime: { future: "mewn %s", past: "%s yn ôl", s: "ychydig eiliadau", m: "munud", mm: "%d munud", h: "awr", hh: "%d awr", d: "diwrnod", dd: "%d diwrnod", M: "mis", MM: "%d mis", y: "blwyddyn", yy: "%d flynedd" }, 7118 ordinalParse: /\d{1,2}(fed|ain|af|il|ydd|ed|eg)/, 7119 ordinal: function(number) { 7120 var b = number, 7121 output = "", 7122 lookup = ["", "af", "il", "ydd", "ydd", "ed", "ed", "ed", "fed", "fed", "fed", "eg", "fed", "eg", "eg", "fed", "eg", "eg", "fed", "eg", "fed"]; 7123 return b > 20 ? output = 40 === b || 50 === b || 60 === b || 80 === b || 100 === b ? "fed" : "ain" : b > 0 && (output = lookup[b]), number + output 7124 }, 7125 week: { dow: 1, doy: 4 } 7126 }), moment__default.defineLocale("da", { months: "januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"), monthsShort: "jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"), weekdays: "søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"), weekdaysShort: "søn_man_tir_ons_tor_fre_lør".split("_"), weekdaysMin: "sø_ma_ti_on_to_fr_lø".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY HH:mm", LLLL: "dddd [d.] D. MMMM YYYY HH:mm" }, calendar: { sameDay: "[I dag kl.] LT", nextDay: "[I morgen kl.] LT", nextWeek: "dddd [kl.] LT", lastDay: "[I gÃÂ¥r kl.] LT", lastWeek: "[sidste] dddd [kl] LT", sameElse: "L" }, relativeTime: { future: "om %s", past: "%s siden", s: "fÃÂ¥ sekunder", m: "et minut", mm: "%d minutter", h: "en time", hh: "%d timer", d: "en dag", dd: "%d dage", M: "en mÃÂ¥ned", MM: "%d mÃÂ¥neder", y: "et ÃÂ¥r", yy: "%d ÃÂ¥r" }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), moment__default.defineLocale("de-at", { months: "Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"), monthsShort: "Jän._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"), monthsParseExact: !0, weekdays: "Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"), weekdaysShort: "So._Mo._Di._Mi._Do._Fr._Sa.".split("_"), weekdaysMin: "So_Mo_Di_Mi_Do_Fr_Sa".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY HH:mm", LLLL: "dddd, D. MMMM YYYY HH:mm" }, calendar: { sameDay: "[heute um] LT [Uhr]", sameElse: "L", nextDay: "[morgen um] LT [Uhr]", nextWeek: "dddd [um] LT [Uhr]", lastDay: "[gestern um] LT [Uhr]", lastWeek: "[letzten] dddd [um] LT [Uhr]" }, relativeTime: { future: "in %s", past: "vor %s", s: "ein paar Sekunden", m: de_at__processRelativeTime, mm: "%d Minuten", h: de_at__processRelativeTime, hh: "%d Stunden", d: de_at__processRelativeTime, dd: de_at__processRelativeTime, M: de_at__processRelativeTime, MM: de_at__processRelativeTime, y: de_at__processRelativeTime, yy: de_at__processRelativeTime }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), moment__default.defineLocale("de", { months: "Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"), monthsShort: "Jan._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"), monthsParseExact: !0, weekdays: "Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"), weekdaysShort: "So._Mo._Di._Mi._Do._Fr._Sa.".split("_"), weekdaysMin: "So_Mo_Di_Mi_Do_Fr_Sa".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY HH:mm", LLLL: "dddd, D. MMMM YYYY HH:mm" }, calendar: { sameDay: "[heute um] LT [Uhr]", sameElse: "L", nextDay: "[morgen um] LT [Uhr]", nextWeek: "dddd [um] LT [Uhr]", lastDay: "[gestern um] LT [Uhr]", lastWeek: "[letzten] dddd [um] LT [Uhr]" }, relativeTime: { future: "in %s", past: "vor %s", s: "ein paar Sekunden", m: de__processRelativeTime, mm: "%d Minuten", h: de__processRelativeTime, hh: "%d Stunden", d: de__processRelativeTime, dd: de__processRelativeTime, M: de__processRelativeTime, MM: de__processRelativeTime, y: de__processRelativeTime, yy: de__processRelativeTime }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), ["ÃâìÃâêÃâ¡ÃÂ¦ÃÆÃ©", "ÊìÃâÃÂ°ÃÆÃªÃâ¡ÃÂ¦ÃÆÃ©", "Ãâ°ÃÂ§ÃÆÃ¨Ãâê", "Ãâ¡ÃÂÃâ¢ÃÂ°ÃÆÃ©ÃÂê", "Ãâ°ÃÂ", "ÃâëÃâð", "ÃâêÃÂæÃâ¡Ã¨", "Ãâ¡Ã¯ÃŽÃ¦ÃÂðÃâê", "ÃÂìÃâ¢Ã°ÃâìÃâ°Ã°ÃâÃÂ¦ÃÆÃª", "Ãâ¡Ã®Ãâ ðÃâïÃâÃÂ¦ÃÆÃª", "ÃâîÃËìÃâ°Ã°ÃâÃÂ¦ÃÆÃª", "ÃâèÃÂìÃâ°Ã°ÃâÃÂ¦ÃÆÃª"]), 7127 dv__weekdays = ["Ãâ¡Ã§Ãâ¹Ã¨Ãâ¡Ã°ÃÅæ", "Ãâ¬Ã¯Ãâ°Ã¦", "Ãâ¡Ã¦ÃâðÎÃÂ§ÃÆÃ¦", "ÃâêÃâ¹Ã¦", "ÃâÃÂªÃÆÃ§ÃÂðÊæÃÅè", "Ãâ¬ÃªÃâ ÃÂªÃÆÃª", "Ãâ¬Ã®ÃâèÃâ¬ÃÂ¨ÃÆÃª"], 7128 es_do__monthsShortDot = (moment__default.defineLocale("dv", { months: dv__months, monthsShort: dv__months, weekdays: dv__weekdays, weekdaysShort: dv__weekdays, weekdaysMin: "Ãâ¡Ã§Ãâ¹Ã¨_Ãâ¬Ã¯Ãâ°Ã¦_Ãâ¡Ã¦Ãâð_ÃâêÃâ¹Ã¦_ÃâÃÂªÃÆÃ§_Ãâ¬ÃªÃâ ê_Ãâ¬Ã®Ãâè".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "D/M/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, meridiemParse: /Ãâ°Ãâ |Ãâ°ÃÅ /, isPM: function(input) { return "Ãâ°ÃÅ " === input }, meridiem: function(hour, minute, isLower) { return hour < 12 ? "Ãâ°Ãâ " : "Ãâ°ÃÅ " }, calendar: { sameDay: "[Ãâ°Ã¨Ãâ¡Ã¦Ãâ¹Ãª] LT", nextDay: "[Ãâ°Ã§Ãâ¹Ã¦Ãâ°Ã§] LT", nextWeek: "dddd LT", lastDay: "[Ãâ¡Ã¨Ãâ¡Ã°Ãâì] LT", lastWeek: "[ÊçÃâ¡Ã¨ÃÅêÃËè] dddd LT", sameElse: "L" }, relativeTime: { future: "ÃÅÃÂ¬ÃÆÃÂÎæÃâ¡Ã¨ %s", past: "Ãâ ÃÂªÃÆÃ¨Ãâð %s", s: "ÃÂèÃâ êÃâðÃÅêÃâ îÃâ¦Ã¬Ãâ¡Ã°", m: "Ãâ°Ã¨ÃâèÃâìÃâ¡Ã°", mm: "Ãâ°Ã¨ÃâèÃâê %d", h: "ÎæÃâèÃâ¡ÃÂ¨ÃÆÃ¬Ãâ¡Ã°", hh: "ÎæÃâèÃâ¡ÃÂ¨ÃÆÃª %d", d: "Ãâ¹ÃªÃËæÃâ¬Ã¬Ãâ¡Ã°", dd: "Ãâ¹ÃªÃËæÃÂð %d", M: "Ãâ°Ã¦Ãâ¬Ã¬Ãâ¡Ã°", MM: "Ãâ°Ã¦ÃÂð %d", y: "Ãâ¡Ã¦Ãâ¬ÃÂ¦ÃÆÃ¬Ãâ¡Ã°", yy: "Ãâ¡Ã¦Ãâ¬ÃÂ¦ÃÆÃª %d" }, preparse: function(string) { return string.replace(/ÃÅ/g, ",") }, postformat: function(string) { return string.replace(/,/g, "ÃÅ") }, week: { dow: 7, doy: 12 } }), moment__default.defineLocale("el", { 7129 monthsNominativeEl: "Ãâ¢Ã±Ã½Ã¿Ãâ¦Ã¬ÃÂùÿÃâ_æõòÃÂÿÃâ¦Ã¬ÃÂùÿÃâ_ÃÅìÃÂÃâùÿÃâ_ÃâÃâ¬ÃÂïûùÿÃâ_ÃÅìùÿÃâ_Ãâ¢Ã¿ÃÂýùÿÃâ_Ãâ¢Ã¿ÃÂûùÿÃâ_ÃâÃÂóÿÃâ¦ÃÆÃâÿÃâ_ãõÃâ¬ÃâÃÂüòÃÂùÿÃâ_ßúÃâÎòÃÂùÿÃâ_ÃÂÿÃÂüòÃÂùÿÃâ_ÃâõúÃÂüòÃÂùÿÃâ".split("_"), 7130 monthsGenitiveEl: "Ãâ¢Ã±Ã½Ã¿Ãâ¦Ã±ÃÂïÿÃâ¦_æõòÃÂÿÃâ¦Ã±ÃÂïÿÃâ¦_ÃÅñÃÂÃâïÿÃâ¦_ÃâÃâ¬ÃÂùûïÿÃâ¦_ÃÅñÃÂÿÃâ¦_Ãâ¢Ã¿Ãâ¦Ã½Ã¯Ã¿Ãâ¦_Ãâ¢Ã¿Ãâ¦Ã»Ã¯Ã¿Ãâ¦_ÃâÃâ¦Ã³Ã¿ÃÂÃÆÃâÿÃâ¦_ãõÃâ¬ÃâõüòÃÂïÿÃâ¦_ßúÃâÃâ°Ã²ÃÂïÿÃâ¦_ÃÂÿõüòÃÂïÿÃâ¦_ÃâõúõüòÃÂïÿÃâ¦".split("_"), 7131 months: function(momentToFormat, format) { return /D/.test(format.substring(0, format.indexOf("MMMM"))) ? this._monthsGenitiveEl[momentToFormat.month()] : this._monthsNominativeEl[momentToFormat.month()] }, 7132 monthsShort: "Ãâ¢Ã±Ã½_æõò_ÃÅñÃÂ_ÃâÃâ¬ÃÂ_ÃÅñÃÅ _Ãâ¢Ã¿Ãâ¦Ã½_Ãâ¢Ã¿Ãâ¦Ã»_ÃâÃâ¦Ã³_ãõÃâ¬_ßúÃâ_ÃÂÿõ_Ãâõú".split("_"), 7133 weekdays: "ÃÅ¡Ãâ¦ÃÂùñúî_ÃâõÃâ¦ÃâÃÂÃÂñ_äÃÂïÃâ÷_äõÃâìÃÂÃâ÷_à ÃÂüÃâ¬Ãâ÷_à ñÃÂÃÂ±ÃÆÃºÃµÃâ¦Ã®_ãìòòñÃâÿ".split("_"), 7134 weekdaysShort: "ÃÅ¡Ãâ¦ÃÂ_ÃâõÃâ¦_äÃÂù_äõÃâ_à õü_à ñÃÂ_ãñò".split("_"), 7135 weekdaysMin: "ÃÅ¡Ãâ¦_Ãâõ_äÃÂ_äõ_à õ_à ñ_ãñ".split("_"), 7136 meridiem: function(hours, minutes, isLower) { return hours > 11 ? isLower ? "üü" : "ÃÅÃÅ" : isLower ? "Ãâ¬Ã¼" : "à ÃÅ" }, 7137 isPM: function(input) { return "ü" === (input + "").toLowerCase()[0] }, 7138 meridiemParse: /[à ÃÅ]\.?ÃÅ?\.?/i, 7139 longDateFormat: { LT: "h:mm A", LTS: "h:mm:ss A", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY h:mm A", LLLL: "dddd, D MMMM YYYY h:mm A" }, 7140 calendarEl: { 7141 sameDay: "[ãîüõÃÂñ {}] LT", 7142 nextDay: "[ÃâÃÂÃÂùÿ {}] LT", 7143 nextWeek: "dddd [{}] LT", 7144 lastDay: "[çøõÃâ {}] LT", 7145 lastWeek: function() { 7146 switch (this.day()) { 7147 case 6: 7148 return "[Ãâÿ Ãâ¬ÃÂÿ÷óÿÃÂüõýÿ] dddd [{}] LT"; 7149 default: 7150 return "[Ãâ÷ý Ãâ¬ÃÂÿ÷óÿÃÂüõý÷] dddd [{}] LT" 7151 } 7152 }, 7153 sameElse: "L" 7154 }, 7155 calendar: function(key, mom) { 7156 var output = this._calendarEl[key], 7157 hours = mom && mom.hours(); 7158 return isFunction(output) && (output = output.apply(mom)), output.replace("{}", hours % 12 === 1 ? "ÃÆÃâ÷" : "ÃÆÃâùÃâ") 7159 }, 7160 relativeTime: { future: "̵̮ %s", past: "%s Ãâ¬ÃÂùý", s: "ûïóñ ôõÃâ¦ÃâõÃÂÃÅûõÃâ¬Ãâñ", m: "ÃÂýñ ûõÃâ¬ÃâÃÅ", mm: "%d ûõÃâ¬Ãâì", h: "üïñ ÃŽÃÂñ", hh: "%d ÃŽÃÂõÃâ", d: "üïñ üÃÂÃÂñ", dd: "%d üÃÂÃÂõÃâ", M: "ÃÂýñÃâ üîýñÃâ", MM: "%d üîýõÃâ", y: "ÃÂýñÃâ Ãâ¡ÃÂÃÅýÿÃâ", yy: "%d Ãâ¡ÃÂÃÅýùñ" }, 7161 ordinalParse: /\d{1,2}÷/, 7162 ordinal: "%d÷", 7163 week: { dow: 1, doy: 4 } 7164 }), moment__default.defineLocale("en-au", { 7165 months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), 7166 monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), 7167 weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), 7168 weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), 7169 weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), 7170 longDateFormat: { LT: "h:mm A", LTS: "h:mm:ss A", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY h:mm A", LLLL: "dddd, D MMMM YYYY h:mm A" }, 7171 calendar: { sameDay: "[Today at] LT", nextDay: "[Tomorrow at] LT", nextWeek: "dddd [at] LT", lastDay: "[Yesterday at] LT", lastWeek: "[Last] dddd [at] LT", sameElse: "L" }, 7172 relativeTime: { future: "in %s", past: "%s ago", s: "a few seconds", m: "a minute", mm: "%d minutes", h: "an hour", hh: "%d hours", d: "a day", dd: "%d days", M: "a month", MM: "%d months", y: "a year", yy: "%d years" }, 7173 ordinalParse: /\d{1,2}(st|nd|rd|th)/, 7174 ordinal: function(number) { 7175 var b = number % 10, 7176 output = 1 === ~~(number % 100 / 10) ? "th" : 1 === b ? "st" : 2 === b ? "nd" : 3 === b ? "rd" : "th"; 7177 return number + output 7178 }, 7179 week: { dow: 1, doy: 4 } 7180 }), moment__default.defineLocale("en-ca", { 7181 months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), 7182 monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), 7183 weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), 7184 weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), 7185 weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), 7186 longDateFormat: { LT: "h:mm A", LTS: "h:mm:ss A", L: "YYYY-MM-DD", LL: "MMMM D, YYYY", LLL: "MMMM D, YYYY h:mm A", LLLL: "dddd, MMMM D, YYYY h:mm A" }, 7187 calendar: { sameDay: "[Today at] LT", nextDay: "[Tomorrow at] LT", nextWeek: "dddd [at] LT", lastDay: "[Yesterday at] LT", lastWeek: "[Last] dddd [at] LT", sameElse: "L" }, 7188 relativeTime: { future: "in %s", past: "%s ago", s: "a few seconds", m: "a minute", mm: "%d minutes", h: "an hour", hh: "%d hours", d: "a day", dd: "%d days", M: "a month", MM: "%d months", y: "a year", yy: "%d years" }, 7189 ordinalParse: /\d{1,2}(st|nd|rd|th)/, 7190 ordinal: function(number) { 7191 var b = number % 10, 7192 output = 1 === ~~(number % 100 / 10) ? "th" : 1 === b ? "st" : 2 === b ? "nd" : 3 === b ? "rd" : "th"; 7193 return number + output 7194 } 7195 }), moment__default.defineLocale("en-gb", { 7196 months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), 7197 monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), 7198 weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), 7199 weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), 7200 weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), 7201 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, 7202 calendar: { sameDay: "[Today at] LT", nextDay: "[Tomorrow at] LT", nextWeek: "dddd [at] LT", lastDay: "[Yesterday at] LT", lastWeek: "[Last] dddd [at] LT", sameElse: "L" }, 7203 relativeTime: { future: "in %s", past: "%s ago", s: "a few seconds", m: "a minute", mm: "%d minutes", h: "an hour", hh: "%d hours", d: "a day", dd: "%d days", M: "a month", MM: "%d months", y: "a year", yy: "%d years" }, 7204 ordinalParse: /\d{1,2}(st|nd|rd|th)/, 7205 ordinal: function(number) { 7206 var b = number % 10, 7207 output = 1 === ~~(number % 100 / 10) ? "th" : 1 === b ? "st" : 2 === b ? "nd" : 3 === b ? "rd" : "th"; 7208 return number + output 7209 }, 7210 week: { dow: 1, doy: 4 } 7211 }), moment__default.defineLocale("en-ie", { 7212 months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), 7213 monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), 7214 weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), 7215 weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), 7216 weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), 7217 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD-MM-YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, 7218 calendar: { sameDay: "[Today at] LT", nextDay: "[Tomorrow at] LT", nextWeek: "dddd [at] LT", lastDay: "[Yesterday at] LT", lastWeek: "[Last] dddd [at] LT", sameElse: "L" }, 7219 relativeTime: { future: "in %s", past: "%s ago", s: "a few seconds", m: "a minute", mm: "%d minutes", h: "an hour", hh: "%d hours", d: "a day", dd: "%d days", M: "a month", MM: "%d months", y: "a year", yy: "%d years" }, 7220 ordinalParse: /\d{1,2}(st|nd|rd|th)/, 7221 ordinal: function(number) { 7222 var b = number % 10, 7223 output = 1 === ~~(number % 100 / 10) ? "th" : 1 === b ? "st" : 2 === b ? "nd" : 3 === b ? "rd" : "th"; 7224 return number + output 7225 }, 7226 week: { dow: 1, doy: 4 } 7227 }), moment__default.defineLocale("en-nz", { 7228 months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), 7229 monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), 7230 weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), 7231 weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), 7232 weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), 7233 longDateFormat: { LT: "h:mm A", LTS: "h:mm:ss A", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY h:mm A", LLLL: "dddd, D MMMM YYYY h:mm A" }, 7234 calendar: { sameDay: "[Today at] LT", nextDay: "[Tomorrow at] LT", nextWeek: "dddd [at] LT", lastDay: "[Yesterday at] LT", lastWeek: "[Last] dddd [at] LT", sameElse: "L" }, 7235 relativeTime: { future: "in %s", past: "%s ago", s: "a few seconds", m: "a minute", mm: "%d minutes", h: "an hour", hh: "%d hours", d: "a day", dd: "%d days", M: "a month", MM: "%d months", y: "a year", yy: "%d years" }, 7236 ordinalParse: /\d{1,2}(st|nd|rd|th)/, 7237 ordinal: function(number) { 7238 var b = number % 10, 7239 output = 1 === ~~(number % 100 / 10) ? "th" : 1 === b ? "st" : 2 === b ? "nd" : 3 === b ? "rd" : "th"; 7240 return number + output 7241 }, 7242 week: { dow: 1, doy: 4 } 7243 }), moment__default.defineLocale("eo", { months: "januaro_februaro_marto_aprilo_majo_junio_julio_aà Âgusto_septembro_oktobro_novembro_decembro".split("_"), monthsShort: "jan_feb_mar_apr_maj_jun_jul_aà Âg_sep_okt_nov_dec".split("_"), weekdays: "DimanÃâ°o_Lundo_Mardo_Merkredo_ôaà Âdo_Vendredo_Sabato".split("_"), weekdaysShort: "Dim_Lun_Mard_Merk_ôaà Â_Ven_Sab".split("_"), weekdaysMin: "Di_Lu_Ma_Me_ôa_Ve_Sa".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "YYYY-MM-DD", LL: "D[-an de] MMMM, YYYY", LLL: "D[-an de] MMMM, YYYY HH:mm", LLLL: "dddd, [la] D[-an de] MMMM, YYYY HH:mm" }, meridiemParse: /[ap]\.t\.m/i, isPM: function(input) { return "p" === input.charAt(0).toLowerCase() }, meridiem: function(hours, minutes, isLower) { return hours > 11 ? isLower ? "p.t.m." : "P.T.M." : isLower ? "a.t.m." : "A.T.M." }, calendar: { sameDay: "[Hodiaà  je] LT", nextDay: "[Morgaà  je] LT", nextWeek: "dddd [je] LT", lastDay: "[Hieraà  je] LT", lastWeek: "[pasinta] dddd [je] LT", sameElse: "L" }, relativeTime: { future: "je %s", past: "antaà  %s", s: "sekundoj", m: "minuto", mm: "%d minutoj", h: "horo", hh: "%d horoj", d: "tago", dd: "%d tagoj", M: "monato", MM: "%d monatoj", y: "jaro", yy: "%d jaroj" }, ordinalParse: /\d{1,2}a/, ordinal: "%da", week: { dow: 1, doy: 7 } }), "ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_")), 7244 es_do__monthsShort = "ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"), 7245 es__monthsShortDot = (moment__default.defineLocale("es-do", { months: "enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"), monthsShort: function(m, format) { return /-MMM-/.test(format) ? es_do__monthsShort[m.month()] : es_do__monthsShortDot[m.month()] }, monthsParseExact: !0, weekdays: "domingo_lunes_martes_miércoles_jueves_viernes_sábado".
vendor: 8,977 bytes, lines 7245-7265
7245split("_"), weekdaysShort: "dom._lun._mar._mié._jue._vie._sáb.".split("_"), weekdaysMin: "do_lu_ma_mi_ju_vi_sá".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "h:mm A", LTS: "h:mm:ss A", L: "DD/MM/YYYY", LL: "D [de] MMMM [de] YYYY", LLL: "D [de] MMMM [de] YYYY h:mm A", LLLL: "dddd, D [de] MMMM [de] YYYY h:mm A" }, calendar: { sameDay: function() { return "[hoy a la" + (1 !== this.hours() ? "s" : "") + "] LT" }, nextDay: function() { return "[mañana a la" + (1 !== this.hours() ? "s" : "") + "] LT" }, nextWeek: function() { return "dddd [a la" + (1 !== this.hours() ? "s" : "") + "] LT" }, lastDay: function() { return "[ayer a la" + (1 !== this.hours() ? "s" : "") + "] LT" }, lastWeek: function() { return "[el] dddd [pasado a la" + (1 !== this.hours() ? "s" : "") + "] LT" }, sameElse: "L" }, relativeTime: { future: "en %s", past: "hace %s", s: "unos segundos", m: "un minuto", mm: "%d minutos", h: "una hora", hh: "%d horas", d: "un dÃÂa", dd: "%d dÃÂas", M: "un mes", MM: "%d meses", y: "un año", yy: "%d años" }, ordinalParse: /\d{1,2}ú/, ordinal: "%dú", week: { dow: 1, doy: 4 } }), "ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_")), 7246 es__monthsShort = "ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"), 7247 fa__symbolMap = (moment__default.defineLocale("es", { 7248 months: "enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"), 7249 monthsShort: function(m, format) { return /-MMM-/.test(format) ? es__monthsShort[m.month()] : es__monthsShortDot[m.month()] }, 7250 monthsParseExact: !0, 7251 weekdays: "domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"), 7252 weekdaysShort: "dom._lun._mar._mié._jue._vie._sáb.".split("_"), 7253 weekdaysMin: "do_lu_ma_mi_ju_vi_sá".split("_"), 7254 weekdaysParseExact: !0, 7255 longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD/MM/YYYY", LL: "D [de] MMMM [de] YYYY", LLL: "D [de] MMMM [de] YYYY H:mm", LLLL: "dddd, D [de] MMMM [de] YYYY H:mm" }, 7256 calendar: { sameDay: function() { return "[hoy a la" + (1 !== this.hours() ? "s" : "") + "] LT" }, nextDay: function() { return "[mañana a la" + (1 !== this.hours() ? "s" : "") + "] LT" }, nextWeek: function() { return "dddd [a la" + (1 !== this.hours() ? "s" : "") + "] LT" }, lastDay: function() { return "[ayer a la" + (1 !== this.hours() ? "s" : "") + "] LT" }, lastWeek: function() { return "[el] dddd [pasado a la" + (1 !== this.hours() ? "s" : "") + "] LT" }, sameElse: "L" }, 7257 relativeTime: { future: "en %s", past: "hace %s", s: "unos segundos", m: "un minuto", mm: "%d minutos", h: "una hora", hh: "%d horas", d: "un dÃÂa", dd: "%d dÃÂas", M: "un mes", MM: "%d meses", y: "un año", yy: "%d años" }, 7258 ordinalParse: /\d{1,2}ú/, 7259 ordinal: "%dú", 7260 week: { dow: 1, doy: 4 } 7261 }), moment__default.defineLocale("et", { months: "jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"), monthsShort: "jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"), weekdays: "pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".split("_"), weekdaysShort: "P_E_T_K_N_R_L".split("_"), weekdaysMin: "P_E_T_K_N_R_L".split("_"), longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY H:mm", LLLL: "dddd, D. MMMM YYYY H:mm" }, calendar: { sameDay: "[Täna,] LT", nextDay: "[Homme,] LT", nextWeek: "[Järgmine] dddd LT", lastDay: "[Eile,] LT", lastWeek: "[Eelmine] dddd LT", sameElse: "L" }, relativeTime: { future: "%s pärast", past: "%s tagasi", s: et__processRelativeTime, m: et__processRelativeTime, mm: et__processRelativeTime, h: et__processRelativeTime, hh: et__processRelativeTime, d: et__processRelativeTime, dd: "%d päeva", M: et__processRelativeTime, MM: et__processRelativeTime, y: et__processRelativeTime, yy: et__processRelativeTime }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), moment__default.defineLocale("eu", { months: "urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"), monthsShort: "urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"), monthsParseExact: !0, weekdays: "igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"), weekdaysShort: "ig._al._ar._az._og._ol._lr.".split("_"), weekdaysMin: "ig_al_ar_az_og_ol_lr".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "YYYY-MM-DD", LL: "YYYY[ko] MMMM[ren] D[a]", LLL: "YYYY[ko] MMMM[ren] D[a] HH:mm", LLLL: "dddd, YYYY[ko] MMMM[ren] D[a] HH:mm", l: "YYYY-M-D", ll: "YYYY[ko] MMM D[a]", lll: "YYYY[ko] MMM D[a] HH:mm", llll: "ddd, YYYY[ko] MMM D[a] HH:mm" }, calendar: { sameDay: "[gaur] LT[etan]", nextDay: "[bihar] LT[etan]", nextWeek: "dddd LT[etan]", lastDay: "[atzo] LT[etan]", lastWeek: "[aurreko] dddd LT[etan]", sameElse: "L" }, relativeTime: { future: "%s barru", past: "duela %s", s: "segundo batzuk", m: "minutu bat", mm: "%d minutu", h: "ordu bat", hh: "%d ordu", d: "egun bat", dd: "%d egun", M: "hilabete bat", MM: "%d hilabete", y: "urte bat", yy: "%d urte" }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 7 } }), { 1: "ñ", 2: "ò", 3: "ó", 4: "ô", 5: "õ", 6: "ö", 7: "÷", 8: "ø", 9: "ù", 0: "ð" }), 7262 fa__numberMap = { "ñ": "1", "ò": "2", "ó": "3", "ô": "4", "õ": "5", "ö": "6", "÷": "7", "ø": "8", "ù": "9", "ð": "0" }, 7263 numbersPast = (moment__default.defineLocale("fa", { months: "ÃËçÃâ ÃËÃÅÃâ¡_ÃÂÃËñÃÅÃâ¡_Ãâ¦Ã§Ã±Ã³_âÃËñÃÅÃâ_Ãâ¦Ãâ¡_ÃËÃËæÃâ _ÃËÃËæÃÅÃâ¡_çÃËê_óþêçÃâ¦Ã¨Ã±_çéêèñ_Ãâ ÃËçÃâ¦Ã¨Ã±_ïóçÃâ¦Ã¨Ã±".split("_"), monthsShort: "ÃËçÃâ ÃËÃÅÃâ¡_ÃÂÃËñÃÅÃâ¡_Ãâ¦Ã§Ã±Ã³_âÃËñÃÅÃâ_Ãâ¦Ãâ¡_ÃËÃËæÃâ _ÃËÃËæÃÅÃâ¡_çÃËê_óþêçÃâ¦Ã¨Ã±_çéêèñ_Ãâ ÃËçÃâ¦Ã¨Ã±_ïóçÃâ¦Ã¨Ã±".split("_"), weekdays: "ÃÅéââ¬ÅôÃâ èÃâ¡_ïÃËôÃâ èÃâ¡_óÃâ¡Ã¢â¬ÅôÃâ èÃâ¡_Ãâ Ãâ¡Ã§Ã±Ã´Ãâ èÃâ¡_þÃâ Éâ¬ÅôÃâ èÃâ¡_ìÃâ¦Ã¹Ãâ¡_ôÃâ èÃâ¡".split("_"), weekdaysShort: "ÃÅéââ¬ÅôÃâ èÃâ¡_ïÃËôÃâ èÃâ¡_óÃâ¡Ã¢â¬ÅôÃâ èÃâ¡_Ãâ Ãâ¡Ã§Ã±Ã´Ãâ èÃâ¡_þÃâ Éâ¬ÅôÃâ èÃâ¡_ìÃâ¦Ã¹Ãâ¡_ôÃâ èÃâ¡".split("_"), weekdaysMin: "ÃÅ_ï_ó_Ãâ _þ_ì_ô".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, meridiemParse: /ÃâèÃâ çò øÃâ¡Ã±|èùï çò øÃâ¡Ã±/, isPM: function(input) { return /èùï çò øÃâ¡Ã±/.test(input) }, meridiem: function(hour, minute, isLower) { return hour < 12 ? "ÃâèÃâ çò øÃâ¡Ã±" : "èùï çò øÃâ¡Ã±" }, calendar: { sameDay: "[çÃâ¦Ã±ÃËò óçùê] LT", nextDay: "[ÃÂñïç óçùê] LT", nextWeek: "dddd [óçùê] LT", lastDay: "[ïÃÅñÃËò óçùê] LT", lastWeek: "dddd [þÃÅô] [óçùê] LT", sameElse: "L" }, relativeTime: { future: "ïñ %s", past: "%s þÃÅô", s: "Ãâ Ãâ ïÃÅÃâ ëçÃâ ÃÅÃâ¡", m: "ÃÅé ïÃâÃÅÃâÃâ¡", mm: "%d ïÃâÃÅÃâÃâ¡", h: "ÃÅé óçùê", hh: "%d óçùê", d: "ÃÅé ñÃËò", dd: "%d ñÃËò", M: "ÃÅé Ãâ¦Ã§Ãâ¡", MM: "%d Ãâ¦Ã§Ãâ¡", y: "ÃÅé óçÃâ", yy: "%d óçÃâ" }, preparse: function(string) { return string.replace(/[ð-ù]/g, function(match) { return fa__numberMap[match] }).replace(/ÃÅ/g, ",") }, postformat: function(string) { return string.replace(/\d/g, function(match) { return fa__symbolMap[match] }).replace(/,/g, "ÃÅ") }, ordinalParse: /\d{1,2}Ãâ¦/, ordinal: "%dÃâ¦", week: { dow: 6, doy: 12 } }), "nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" ")), 7264 numbersFuture = ["nolla", "yhden", "kahden", "kolmen", "neljän", "viiden", "kuuden", numbersPast[7], numbersPast[8], numbersPast[9]], 7265 fy__monthsShortWithDots = (moment__default.defineLocale("fi", { months: "tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"), monthsShort: "tammi_helmi_maalis_huhti_touko_kesä_he
7265inä_elo_syys_loka_marras_joulu".split("_"), weekdays: "sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"), weekdaysShort: "su_ma_ti_ke_to_pe_la".split("_"), weekdaysMin: "su_ma_ti_ke_to_pe_la".split("_"), longDateFormat: { LT: "HH.mm", LTS: "HH.mm.ss", L: "DD.MM.YYYY", LL: "Do MMMM[ta] YYYY", LLL: "Do MMMM[ta] YYYY, [klo] HH.mm", LLLL: "dddd, Do MMMM[ta] YYYY, [klo] HH.mm", l: "D.M.YYYY", ll: "Do MMM YYYY", lll: "Do MMM YYYY, [klo] HH.mm", llll: "ddd, Do MMM YYYY, [klo] HH.mm" }, calendar: { sameDay: "[tänään] [klo] LT", nextDay: "[huomenna] [klo] LT", nextWeek: "dddd [klo] LT", lastDay: "[eilen] [klo] LT", lastWeek: "[viime] dddd[na] [klo] LT", sameElse: "L" }, relativeTime: { future: "%s päästä", past: "%s sitten", s: fi__translate, m: fi__translate, mm: fi__translate, h: fi__translate, hh: fi__translate, d: fi__translate, dd: fi__translate, M: fi__translate, MM: fi__translate, y: fi__translate, yy: fi__translate }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), moment__default.defineLocale("fo", { months: "januar_februar_mars_aprÃÂl_mai_juni_juli_august_september_oktober_november_desember".split("_"), monthsShort: "jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"), weekdays: "sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_frÃÂggjadagur_leygardagur".split("_"), weekdaysShort: "sun_mán_týs_mik_hós_frÃÂ_ley".split("_"), weekdaysMin: "su_má_tý_mi_hó_fr_le".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D. MMMM, YYYY HH:mm" }, calendar: { sameDay: "[àdag kl.] LT", nextDay: "[àmorgin kl.] LT", nextWeek: "dddd [kl.] LT", lastDay: "[àgjár kl.] LT", lastWeek: "[sÃÂðstu] dddd [kl] LT", sameElse: "L" }, relativeTime: { future: "um %s", past: "%s sÃÂðani", s: "fá sekund", m: "ein minutt", mm: "%d minuttir", h: "ein tÃÂmi", hh: "%d tÃÂmar", d: "ein dagur", dd: "%d dagar", M: "ein mánaði", MM: "%d mánaðir", y: "eitt ár", yy: "%d ár" }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), moment__default.defineLocale("fr-ca", { months: "janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"), monthsShort: "janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"), monthsParseExact: !0, weekdays: "dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"), weekdaysShort: "dim._lun._mar._mer._jeu._ven._sam.".split("_"), weekdaysMin: "Di_Lu_Ma_Me_Je_Ve_Sa".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "YYYY-MM-DD", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, calendar: { sameDay: "[Aujourd'hui à ] LT", nextDay: "[Demain à ] LT", nextWeek: "dddd [à ] LT", lastDay: "[Hier à ] LT", lastWeek: "dddd [dernier à ] LT", sameElse: "L" }, relativeTime: { future: "dans %s", past: "il y a %s", s: "quelques secondes", m: "une minute", mm: "%d minutes", h: "une heure", hh: "%d heures", d: "un jour", dd: "%d jours", M: "un mois", MM: "%d mois", y: "un an", yy: "%d ans" }, ordinalParse: /\d{1,2}(er|e)/, ordinal: function(number) { return number + (1 === number ? "er" : "e") } }), moment__default.defineLocale("fr-ch", { months: "janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"), monthsShort: "janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"), monthsParseExact: !0, weekdays: "dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"), weekdaysShort: "dim._lun._mar._mer._jeu._ven._sam.".split("_"), weekdaysMin: "Di_Lu_Ma_Me_Je_Ve_Sa".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, calendar: { sameDay: "[Aujourd'hui à ] LT", nextDay: "[Demain à ] LT", nextWeek: "dddd [à ] LT", lastDay: "[Hier à ] LT", lastWeek: "dddd [dernier à ] LT", sameElse: "L" }, relativeTime: { future: "dans %s", past: "il y a %s", s: "quelques secondes", m: "une minute", mm: "%d minutes", h: "une heure", hh: "%d heures", d: "un jour", dd: "%d jours", M: "un mois", MM: "%d mois", y: "un an", yy: "%d ans" }, ordinalParse: /\d{1,2}(er|e)/, ordinal: function(number) { return number + (1 === number ? "er" : "e") }, week: { dow: 1, doy: 4 } }), moment__default.defineLocale("fr", { months: "janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"), monthsShort: "janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"), monthsParseExact: !0, weekdays: "dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"), weekdaysShort: "dim._lun._mar._mer._jeu._ven._sam.".split("_"), weekdaysMin: "Di_Lu_Ma_Me_Je_Ve_Sa".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, calendar: { sameDay: "[Aujourd'hui à ] LT", nextDay: "[Demain à ] LT", nextWeek: "dddd [à ] LT", lastDay: "[Hier à ] LT", lastWeek: "dddd [dernier à ] LT", sameElse: "L" }, relativeTime: { future: "dans %s", past: "il y a %s", s: "quelques secondes", m: "une minute", mm: "%d minutes", h: "une heure", hh: "%d heures", d: "un jour", dd: "%d jours", M: "un mois", MM: "%d mois", y: "un an", yy: "%d ans" }, ordinalParse: /\d{1,2}(er|)/, ordinal: function(number) { return number + (1 === number ? "er" : "") }, week: { dow: 1, doy: 4 } }), "jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_")), 7266 fy__monthsShortWithoutDots = "jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"), 7267 gd__months = (moment__default.defineLocale("fy", { months: "jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"), monthsShort: function(m, format) { return /-MMM-/.test(format) ? fy__monthsShortWithoutDots[m.month()] : fy__monthsShortWithDots[m.month()] }
vendor: 8,244 bytes, lines 7267-7274
7267, monthsParseExact: !0, weekdays: "snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"), weekdaysShort: "si._mo._ti._wo._to._fr._so.".split("_"), weekdaysMin: "Si_Mo_Ti_Wo_To_Fr_So".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD-MM-YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, calendar: { sameDay: "[hjoed om] LT", nextDay: "[moarn om] LT", nextWeek: "dddd [om] LT", lastDay: "[juster om] LT", lastWeek: "[ôfrûne] dddd [om] LT", sameElse: "L" }, relativeTime: { future: "oer %s", past: "%s lyn", s: "in pear sekonden", m: "ien minút", mm: "%d minuten", h: "ien oere", hh: "%d oeren", d: "ien dei", dd: "%d dagen", M: "ien moanne", MM: "%d moannen", y: "ien jier", yy: "%d jierren" }, ordinalParse: /\d{1,2}(ste|de)/, ordinal: function(number) { return number + (1 === number || 8 === number || number >= 20 ? "ste" : "de") }, week: { dow: 1, doy: 4 } }), ["Am Faoilleach", "An Gearran", "Am Mà rt", "An Giblean", "An Cèitean", "An t-Ãâgmhios", "An t-Iuchar", "An Lùnastal", "An t-Sultain", "An Dà mhair", "An t-Samhain", "An Dùbhlachd"]), 7268 gd__monthsShort = ["Faoi", "Gear", "Mà rt", "Gibl", "Cèit", "Ãâgmh", "Iuch", "Lùn", "Sult", "Dà mh", "Samh", "Dùbh"], 7269 gd__weekdays = ["Didòmhnaich", "Diluain", "Dimà irt", "Diciadain", "Diardaoin", "Dihaoine", "Disathairne"], 7270 weekdaysShort = ["Did", "Dil", "Dim", "Dic", "Dia", "Dih", "Dis"], 7271 weekdaysMin = ["Dò", "Lu", "Mà ", "Ci", "Ar", "Ha", "Sa"], 7272 hi__symbolMap = (moment__default.defineLocale("gd", { months: gd__months, monthsShort: gd__monthsShort, monthsParseExact: !0, weekdays: gd__weekdays, weekdaysShort: weekdaysShort, weekdaysMin: weekdaysMin, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, calendar: { sameDay: "[An-diugh aig] LT", nextDay: "[A-mà ireach aig] LT", nextWeek: "dddd [aig] LT", lastDay: "[An-dè aig] LT", lastWeek: "dddd [seo chaidh] [aig] LT", sameElse: "L" }, relativeTime: { future: "ann an %s", past: "bho chionn %s", s: "beagan diogan", m: "mionaid", mm: "%d mionaidean", h: "uair", hh: "%d uairean", d: "latha", dd: "%d latha", M: "mìos", MM: "%d mìosan", y: "bliadhna", yy: "%d bliadhna" }, ordinalParse: /\d{1,2}(d|na|mh)/, ordinal: function(number) { var output = 1 === number ? "d" : number % 10 === 2 ? "na" : "mh"; return number + output }, week: { dow: 1, doy: 4 } }), moment__default.defineLocale("gl", { months: "xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro".split("_"), monthsShort: "xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.".split("_"), monthsParseExact: !0, weekdays: "domingo_luns_martes_mércores_xoves_venres_sábado".split("_"), weekdaysShort: "dom._lun._mar._mér._xov._ven._sáb.".split("_"), weekdaysMin: "do_lu_ma_mé_xo_ve_sá".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD/MM/YYYY", LL: "D [de] MMMM [de] YYYY", LLL: "D [de] MMMM [de] YYYY H:mm", LLLL: "dddd, D [de] MMMM [de] YYYY H:mm" }, calendar: { sameDay: function() { return "[hoxe " + (1 !== this.hours() ? "ás" : "á") + "] LT" }, nextDay: function() { return "[mañá " + (1 !== this.hours() ? "ás" : "á") + "] LT" }, nextWeek: function() { return "dddd [" + (1 !== this.hours() ? "ás" : "a") + "] LT" }, lastDay: function() { return "[onte " + (1 !== this.hours() ? "á" : "a") + "] LT" }, lastWeek: function() { return "[o] dddd [pasado " + (1 !== this.hours() ? "ás" : "a") + "] LT" }, sameElse: "L" }, relativeTime: { future: function(str) { return 0 === str.indexOf("un") ? "n" + str : "en " + str }, past: "hai %s", s: "uns segundos", m: "un minuto", mm: "%d minutos", h: "unha hora", hh: "%d horas", d: "un dÃÂa", dd: "%d dÃÂas", M: "un mes", MM: "%d meses", y: "un ano", yy: "%d anos" }, ordinalParse: /\d{1,2}ú/, ordinal: "%dú", week: { dow: 1, doy: 4 } }), moment__default.defineLocale("he", { months: "Ãâ¢Ã Ãâ¢ÃÂè_äÃâèÃâ¢ÃÂè_ÞèÃÂ¥_ÃÂäèÃâ¢ÃÅ_ÞÃÂÃâ¢_Ãâ¢Ãâ¢Ã Ãâ¢_Ãâ¢Ãâ¢ÃÅÃâ¢_ÃÂÃâ¢ÃâÃâ¢Ã¡ÃË_áäÃËÞÃâè_ÃÂÃâ¢Ã§ÃËÃâ¢Ãâè_à Ãâ¢ÃâÞÃâè_ÃâæÞÃâè".split("_"), monthsShort: "Ãâ¢Ã Ãâ¢Ã³_äÃâèó_ÞèÃÂ¥_ÃÂäèó_ÞÃÂÃâ¢_Ãâ¢Ãâ¢Ã Ãâ¢_Ãâ¢Ãâ¢ÃÅÃâ¢_ÃÂÃâ¢Ãâó_áäÃËó_ÃÂÃâ¢Ã§Ã³_à Ãâ¢Ãâó_ÃâæÞó".split("_"), weekdays: "èÃÂéÃâ¢ÃŸ_éà Ãâ¢_éÃÅÃâ¢Ã©Ãâ¢_èÃâÃâ¢Ã¢Ãâ¢_ÃâÞÃâ¢Ã©Ãâ¢_éÃâ¢Ã©Ãâ¢_éÃâê".split("_"), weekdaysShort: "ÃÂó_Ãâó_Ãâó_Ãâó_Ãâó_Ãâ¢Ã³_éó".split("_"), weekdaysMin: "ÃÂ_Ãâ_Ãâ_Ãâ_Ãâ_Ãâ¢_é".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D [Ãâ]MMMM YYYY", LLL: "D [Ãâ]MMMM YYYY HH:mm", LLLL: "dddd, D [Ãâ]MMMM YYYY HH:mm", l: "D/M/YYYY", ll: "D MMM YYYY", lll: "D MMM YYYY HH:mm", llll: "ddd, D MMM YYYY HH:mm" }, calendar: { sameDay: "[ÃâÃâ¢Ãâ¢Ã Ãâþ]LT", nextDay: "[ÞÃâè Ãâþ]LT", nextWeek: "dddd [ÃâéâÃâ] LT", lastDay: "[ÃÂêÞÃâ¢ÃÅ Ãâþ]LT", lastWeek: "[ÃâÃâ¢Ãâ¢ÃÂ] dddd [ÃâÃÂÃâèÃâ¢ÃŸ ÃâéâÃâ] LT", sameElse: "L" }, relativeTime: { future: "ÃââÃâ¢Ãâ %s", past: "ÃÅäà Ã⢠%s", s: "Þáäè éà Ãâ¢Ãâ¢Ãª", m: "ÃâçÃâ", mm: "%d ÃâçÃâ¢Ãª", h: "éâÃâ", hh: function(number) { return 2 === number ? "éâêÃâ¢Ãâ¢ÃÂ" : number + " éâÃâ¢Ãª" }, d: "Ãâ¢Ãâ¢ÃÂ", dd: function(number) { return 2 === number ? "Ãâ¢Ãâ¢ÃžÃâ¢Ãâ¢ÃÂ" : number + " Ãâ¢ÃžÃâ¢ÃÂ" }, M: "ÃâÃâ¢Ãâé", MM: function(number) { return 2 === number ? "ÃâÃâ¢ÃâéÃâ¢Ãâ¢ÃÂ" : number + " ÃâÃâ¢ÃâéÃâ¢ÃÂ" }, y: "éà Ãâ", yy: function(number) { return 2 === number ? "éà êÃâ¢Ãâ¢ÃÂ" : number % 10 === 0 && 10 !== number ? number + " éà Ãâ" : number + " éà Ãâ¢ÃÂ" } }, meridiemParse: /ÃÂÃâÃâ"æ|ÃÅäà Ãâ"æ|ÃÂÃâèÃ⢠ÃâæÃâèÃâ¢Ãâ¢ÃÂ|ÃÅäà Ã⢠ÃâæÃâèÃâ¢Ãâ¢ÃÂ|ÃÅäà Ãâ¢Ãª ÃâÃâ¢Ã§Ã¨|ÃâÃâÃâ¢Ã§Ã¨|ÃââèÃâ/i, isPM: function(input) { return /^(ÃÂÃâÃâ"æ|ÃÂÃâèÃ⢠ÃâæÃâèÃâ¢Ãâ¢ÃÂ|ÃââèÃâ)$/.test(input) }, meridiem: function(hour, minute, isLower) { return hour < 5 ? "ÃÅäà Ãâ¢Ãª ÃâÃâ¢Ã§Ã¨" : hour < 10 ? "ÃâÃâÃâ¢Ã§Ã¨" : hour < 12 ? isLower ? 'ÃÅäà Ãâ"æ' : "ÃÅäà Ã⢠ÃâæÃâèÃâ¢Ãâ¢ÃÂ" : hour < 18 ? isLower ? 'ÃÂÃâÃâ"æ' : "ÃÂÃâèÃ⢠ÃâæÃâèÃâ¢Ãâ¢ÃÂ" : "ÃââèÃâ" } }), { 1: "à ¥§", 2: "à ¥¨", 3: "à ¥©", 4: "à ¥ª", 5: "à ¥«", 6: "à ¥¬", 7: "à ¥Â", 8: "à ¥®", 9: "à ¥¯", 0: "à ¥¦" }), 7273 hi__numberMap = { "à ¥§": "1", "à ¥¨": "2", "à ¥©": "3", "à ¥ª": "4", "à ¥«": "5", "à ¥¬": "6", "à ¥Â": "7", "à ¥®": "8", "à ¥¯": "9", "à ¥¦": "0" }, 7274 weekEndings = (moment__default.defineLocale("hi", { months: "à ¤Åà ¤¨à ¤µà ¤°à ¥â¬_à ¤«à ¤¼à ¤°à ¤µà ¤°à ¥â¬_à ¤®à ¤¾à ¤°à ¥Âà ¤š_à ¤â¦Ã ¤ªà ¥Âà ¤°à ¥Ëà ¤²_à ¤®à ¤Ë_à ¤Åà ¥âà ¤¨_à ¤Åà ¥Âà ¤²à ¤¾à ¤Ë_à ¤â¦Ã ¤âà ¤¸à ¥Âà ¤¤_à ¤¸à ¤¿à ¤¤à ¤®à ¥Âà ¤¬à ¤°_à ¤â¦Ã ¤â¢Ã Â¥Âà ¤Ÿà ¥âà ¤¬à ¤°_à ¤¨à ¤µà ¤®à ¥Âà ¤¬à ¤°_à ¤¦à ¤¿à ¤¸à ¤®à ¥Âà ¤¬à ¤°".split("_"), monthsShort: "à ¤Åà ¤¨._à ¤«à ¤¼à ¤°._à ¤®à ¤¾à ¤°à ¥Âà ¤š_à ¤â¦Ã ¤ªà ¥Âà ¤°à ¥Ë._à ¤®à ¤Ë_à ¤Åà ¥âà ¤¨_à ¤Åà ¥Âà ¤²._à ¤â¦Ã ¤â._à ¤¸à ¤¿à ¤¤._à ¤â¦Ã ¤â¢Ã Â¥Âà ¤Ÿà ¥â._à ¤¨à ¤µ._à ¤¦à ¤¿à ¤¸.".split("_"), monthsParseExact: !0, weekdays: "à ¤°à ¤µà ¤¿à ¤µà ¤¾à ¤°_
7274à ¤¸à ¥â¹Ã ¤®à ¤µà ¤¾à ¤°_à ¤®à ¤âà ¤âà ¤²à ¤µà ¤¾à ¤°_à ¤¬à ¥Âà ¤§à ¤µà ¤¾à ¤°_à ¤âà ¥Âà ¤°à ¥âà ¤µà ¤¾à ¤°_à ¤¶à ¥Âà ¤â¢Ã Â¥Âà ¤°à ¤µà ¤¾à ¤°_à ¤¶à ¤¨à ¤¿à ¤µà ¤¾à ¤°".split("_"), weekdaysShort: "à ¤°à ¤µà ¤¿_à ¤¸à ¥â¹Ã ¤®_à ¤®à ¤âà ¤âà ¤²_à ¤¬à ¥Âà ¤§_à ¤âà ¥Âà ¤°à ¥â_à ¤¶à ¥Âà ¤â¢Ã Â¥Âà ¤°_à ¤¶à ¤¨à ¤¿".split("_"), weekdaysMin: "à ¤°_à ¤¸à ¥â¹_à ¤®à ¤â_à ¤¬à ¥Â_à ¤âà ¥Â_à ¤¶à ¥Â_à ¤¶".split("_"), longDateFormat: { LT: "A h:mm à ¤¬à ¤Åà ¥â¡", LTS: "A h:mm:ss à ¤¬à ¤Åà ¥â¡", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY, A h:mm à ¤¬à ¤Åà ¥â¡", LLLL: "dddd, D MMMM YYYY, A h:mm à ¤¬à ¤Åà ¥â¡" }, calendar: { sameDay: "[à ¤â à ¤Å] LT", nextDay: "[à ¤â¢Ã ¤²] LT", nextWeek: "dddd, LT", lastDay: "[à ¤â¢Ã ¤²] LT", lastWeek: "[à ¤ªà ¤¿à ¤âºÃ ¤²à ¥â¡] dddd, LT", sameElse: "L" }, relativeTime: { future: "%s à ¤®à ¥â¡Ã ¤â", past: "%s à ¤ªà ¤¹à ¤²à ¥â¡", s: "à ¤â¢Ã Â¥Âà ¤⺠à ¤¹à ¥⬠à ¤â¢Ã Â¥Âà ¤·à ¤£", m: "à ¤Âà ¤⢠à ¤®à ¤¿à ¤¨à ¤Ÿ", mm: "%d à ¤®à ¤¿à ¤¨à ¤Ÿ", h: "à ¤Âà ¤⢠à ¤Ëà ¤âà ¤Ÿà ¤¾", hh: "%d à ¤Ëà ¤âà ¤Ÿà ¥â¡", d: "à ¤Âà ¤⢠à ¤¦à ¤¿à ¤¨", dd: "%d à ¤¦à ¤¿à ¤¨", M: "à ¤Âà ¤⢠à ¤®à ¤¹à ¥â¬Ã ¤¨à ¥â¡", MM: "%d à ¤®à ¤¹à ¥â¬Ã ¤¨à ¥â¡", y: "à ¤Âà ¤⢠à ¤µà ¤°à ¥Âà ¤·", yy: "%d à ¤µà ¤°à ¥Âà ¤·" }, preparse: function(string) { return string.replace(/[à ¥§à ¥¨à ¥©à ¥ªà ¥«à ¥¬à ¥Âà ¥®à ¥¯à ¥¦]/g, function(match) { return hi__numberMap[match] }) }, postformat: function(string) { return string.replace(/\d/g, function(match) { return hi__symbolMap[match] }) }, meridiemParse: /à ¤°à ¤¾à ¤¤|à ¤¸à ¥Âà ¤¬à ¤¹|à ¤¦à ¥â¹Ã ¤ªà ¤¹à ¤°|à ¤¶à ¤¾à ¤®/, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "à ¤°à ¤¾à ¤¤" === meridiem ? hour < 4 ? hour : hour + 12 : "à ¤¸à ¥Âà ¤¬à ¤¹" === meridiem ? hour : "à ¤¦à ¥â¹Ã ¤ªà ¤¹à ¤°" === meridiem ? hour >= 10 ? hour : hour + 12 : "à ¤¶à ¤¾à ¤®" === meridiem ? hour + 12 : void 0 }, meridiem: function(hour, minute, isLower) { return hour < 4 ? "à ¤°à ¤¾à ¤¤" : hour < 10 ? "à ¤¸à ¥Âà ¤¬à ¤¹" : hour < 17 ? "à ¤¦à ¥â¹Ã ¤ªà ¤¹à ¤°" : hour < 20 ? "à ¤¶à ¤¾à ¤®" : "à ¤°à ¤¾à ¤¤" }, week: { dow: 0, doy: 6 } }), moment__default.defineLocale("hr", { 7275 months: { format: "sijeÃÂnja_veljaÃÂe_oà ¾ujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"), standalone: "sijeÃÂanj_veljaÃÂa_oà ¾ujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_") }, 7276 monthsShort: "sij._velj._oà ¾u._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"), 7277 monthsParseExact: !0, 7278 weekdays: "nedjelja_ponedjeljak_utorak_srijeda_ÃÂetvrtak_petak_subota".split("_"), 7279 weekdaysShort: "ned._pon._uto._sri._ÃÂet._pet._sub.".split("_"), 7280 weekdaysMin: "ne_po_ut_sr_ÃÂe_pe_su".split("_"), 7281 weekdaysParseExact: !0, 7282 longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY H:mm", LLLL: "dddd, D. MMMM YYYY H:mm" }, 7283 calendar: { 7284 sameDay: "[danas u] LT", 7285 nextDay: "[sutra u] LT", 7286 nextWeek: function() { 7287 switch (this.day()) { 7288 case 0: 7289 return "[u] [nedjelju] [u] LT"; 7290 case 3: 7291 return "[u] [srijedu] [u] LT"; 7292 case 6: 7293 return "[u] [subotu] [u] LT"; 7294 case 1: 7295 case 2: 7296 case 4: 7297 case 5: 7298 return "[u] dddd [u] LT" 7299 } 7300 }, 7301 lastDay: "[juÃÂer u] LT", 7302 lastWeek: function() { 7303 switch (this.day()) { 7304 case 0: 7305 case 3: 7306 return "[proà ¡lu] dddd [u] LT"; 7307 case 6: 7308 return "[proà ¡le] [subote] [u] LT"; 7309 case 1: 7310 case 2: 7311 case 4: 7312 case 5: 7313 return "[proà ¡li] dddd [u] LT" 7314 } 7315 }, 7316 sameElse: "L" 7317 }, 7318 relativeTime: { future: "za %s", past: "prije %s", s: "par sekundi", m: hr__translate, mm: hr__translate, h: hr__translate, hh: hr__translate, d: "dan", dd: hr__translate, M: "mjesec", MM: hr__translate, y: "godinu", yy: hr__translate }, 7319 ordinalParse: /\d{1,2}\./, 7320 ordinal: "%d.", 7321 week: { dow: 1, doy: 7 } 7322 }), "vasárnap hétfà ân kedden szerdán csütörtökön pénteken szombaton".split(" ")), 7323 kk__suffixes = (moment__default.defineLocale("hu", { months: "január_február_március_április_máju
7323s_június_július_augusztus_szeptember_október_november_december".split("_"), monthsShort: "jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec".split("_"), weekdays: "vasárnap_hétfà â_kedd_szerda_csütörtök_péntek_szombat".split("_"), weekdaysShort: "vas_hét_kedd_sze_csüt_pén_szo".split("_"), weekdaysMin: "v_h_k_sze_cs_p_szo".split("_"), longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "YYYY.MM.DD.", LL: "YYYY. MMMM D.", LLL: "YYYY. MMMM D. H:mm", LLLL: "YYYY. MMMM D., dddd H:mm" }, meridiemParse: /de|du/i, isPM: function(input) { return "u" === input.charAt(1).toLowerCase() }, meridiem: function(hours, minutes, isLower) { return hours < 12 ? isLower === !0 ? "de" : "DE" : isLower === !0 ? "du" : "DU" }, calendar: { sameDay: "[ma] LT[-kor]", nextDay: "[holnap] LT[-kor]", nextWeek: function() { return week.call(this, !0) }, lastDay: "[tegnap] LT[-kor]", lastWeek: function() { return week.call(this, !1) }, sameElse: "L" }, relativeTime: { future: "%s múlva", past: "%s", s: hu__translate, m: hu__translate, mm: hu__translate, h: hu__translate, hh: hu__translate, d: hu__translate, dd: hu__translate, M: hu__translate, MM: hu__translate, y: hu__translate, yy: hu__translate }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 7 } }), moment__default.defineLocale("hy-am", { 7324 months: { format: "ðøÃâöþáÃâ¬Ã«_ÃÆÃ¥ÿÃâ¬Ã¾Ã¡Ãâ¬Ã«_ôáÃâ¬Ã¿Ã«_áúÃâ¬Ã«Ã¬Ã«_ôáõëýë_ð
vendor: 4,686 bytes, lines 7324-7348
7324øÃâöëýë_ðøÃâìëýë_Ãâ¦Ã£Ã¸Ã½Ã¿Ã¸Ã½Ã«_ýÃ¥úÿÃ¥ôâÃÂ¥Ãâ¬Ã«_ðøïÿÃ¥ôâÃÂ¥Ãâ¬Ã«_öøõÃ¥ôâÃÂ¥Ãâ¬Ã«_äÃ¥ïÿÃ¥ôâÃÂ¥Ãâ¬Ã«".split("_"), standalone: "ðøÃâöþáÃâ¬_ÃÆÃ¥ÿÃâ¬Ã¾Ã¡Ãâ¬_ôáÃâ¬Ã¿_áúÃâ¬Ã«Ã¬_ôáõëý_ðøÃâöëý_ðøÃâìëý_Ãâ¦Ã£Ã¸Ã½Ã¿Ã¸Ã½_ýÃ¥úÿÃ¥ôâÃÂ¥Ãâ¬_ðøïÿÃ¥ôâÃÂ¥Ãâ¬_öøõÃ¥ôâÃÂ¥Ãâ¬_äÃ¥ïÿÃ¥ôâÃÂ¥Ãâ¬".split("_") }, 7325 monthsShort: "ðöþ_ÃÆÃ¿Ãâ¬_ôÃâ¬Ã¿_áúÃâ¬_ôõý_ðöý_ðìý_Ãâ¦Ã£Ã½_ýúÿ_ðïÿ_öôâ_äïÿ".split("_"), 7326 weekdays: "ïëÃâ¬Ã¡Ã¯Ã«_ÃÂ¥Ãâ¬Ã¯Ã¸Ãâ÷áâéë_ÃÂ¥Ãâ¬ÃÂ¥Ãâ÷áâéë_ùøÃâ¬ÃÂ¥Ãâ÷áâéë_ðëöã÷áâéë_øÃâÃâ¬Ã¢Ã¡Ã©_÷áâáé".split("_"), 7327 weekdaysShort: "ïÃâ¬Ã¯_ÃÂ¥Ãâ¬Ã¯_ÃÂ¥Ãâ¬Ãâ_ùÃâ¬Ãâ_ðöã_øÃâÃâ¬Ã¢_÷âé".split("_"), 7328 weekdaysMin: "ïÃâ¬Ã¯_ÃÂ¥Ãâ¬Ã¯_ÃÂ¥Ãâ¬Ãâ_ùÃâ¬Ãâ_ðöã_øÃâÃâ¬Ã¢_÷âé".split("_"), 7329 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY é.", LLL: "D MMMM YYYY é., HH:mm", LLLL: "dddd, D MMMM YYYY é., HH:mm" }, 7330 calendar: { sameDay: "[áõýÃâ¦Ãâ¬] LT", nextDay: "[þáòè] LT", lastDay: "[ÃÂ¥Ãâ¬Ã¥ï] LT", nextWeek: function() { return "dddd [Ãâ¦Ãâ¬Ã¨ êáôè] LT" }, lastWeek: function() { return "[áöÃÂáî] dddd [Ãâ¦Ãâ¬Ã¨ êáôè] LT" }, sameElse: "L" }, 7331 relativeTime: { future: "%s ðÃ¥ÿø", past: "%s áüáû", s: "ôë Ãâáöë þáõÃâ¬Ã¯ÃµÃ¡Ã¶", m: "Ãâ¬Ã¸ÃºÃÂ¥", mm: "%d Ãâ¬Ã¸ÃºÃÂ¥", h: "êáô", hh: "%d êáô", d: "Ãâ¦Ãâ¬", dd: "%d Ãâ¦Ãâ¬", M: "áôëý", MM: "%d áôëý", y: "ÿáÃâ¬Ã«", yy: "%d ÿáÃâ¬Ã«" }, 7332 meridiemParse: /ãë÷ÃÂ¥Ãâ¬Ã¾Ã¡|áüáþøÿþá|ÃÂÃÂ¥Ãâ¬Ã¥ïþá|ÃÂ¥Ãâ¬Ã¥ïøõáö/, 7333 isPM: function(input) { return /^(ÃÂÃÂ¥Ãâ¬Ã¥ïþá|ÃÂ¥Ãâ¬Ã¥ïøõáö)$/.test(input) }, 7334 meridiem: function(hour) { return hour < 4 ? "ãë÷ÃÂ¥Ãâ¬Ã¾Ã¡" : hour < 12 ? "áüáþøÿþá" : hour < 17 ? "ÃÂÃÂ¥Ãâ¬Ã¥ïþá" : "ÃÂ¥Ãâ¬Ã¥ïøõáö" }, 7335 ordinalParse: /\d{1,2}|\d{1,2}-(ëö|Ãâ¬Ã¤)/, 7336 ordinal: function(number, period) { 7337 switch (period) { 7338 case "DDD": 7339 case "w": 7340 case "W": 7341 case "DDDo": 7342 return 1 === number ? number + "-ëö" : number + "-Ãâ¬Ã¤"; 7343 default: 7344 return number 7345 } 7346 }, 7347 week: { dow: 1, doy: 7 } 7348 }), moment__default.defineLocale("id", { months: "Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"), monthsShort: "Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des".split("_"), weekdays: "Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"), weekdaysShort: "Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"), weekdaysMin: "Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"), longDateFormat: { LT: "HH.mm", LTS: "HH.mm.ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY [pukul] HH.mm", LLLL: "dddd, D MMMM YYYY [pukul] HH.mm" }, meridiemParse: /pagi|siang|sore|malam/, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "pagi" === meridiem ? hour : "siang" === meridiem ? hour >= 11 ? hour : hour + 12 : "sore" === meridiem || "malam" === meridiem ? hour + 12 : void 0 }, meridiem: function(hours, minutes, isLower) { return hours < 11 ? "pagi" : hours < 15 ? "siang" : hours < 19 ? "sore" : "malam" }, calendar: { sameDay: "[Hari ini pukul] LT", nextDay: "[Besok pukul] LT", nextWeek: "dddd [pukul] LT", lastDay: "[Kemarin pukul] LT", lastWeek: "dddd [lalu pukul] LT", sameElse: "L" }, relativeTime: { future: "dalam %s", past: "%s yang lalu", s: "beberapa detik", m: "semenit", mm: "%d menit", h: "sejam", hh: "%d j
7348am", d: "sehari", dd: "%d hari", M: "sebulan", MM: "%d bulan", y: "setahun", yy: "%d tahun" }, week: { dow: 1, doy: 7 } }), moment__default.defineLocale("is", { months: "janúar_febrúar_mars_aprÃÂl_maÃÂ_júnÃÂ_júlÃÂ_ágúst_september_október_nóvember_desember".split("_"), monthsShort: "jan_feb_mar_apr_maÃÂ_jún_júl_ágú_sep_okt_nóv_des".split("_"), weekdays: "sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"), weekdaysShort: "sun_mán_þri_mið_fim_fös_lau".split("_"), weekdaysMin: "Su_Má_Þr_Mi_Fi_Fö_La".split("_"), longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY [kl.] H:mm", LLLL: "dddd, D. MMMM YYYY [kl.] H:mm" }, calendar: { sameDay: "[àdag kl.] LT", nextDay: "[á morgun kl.] LT", nextWeek: "dddd [kl.] LT", lastDay: "[àgær kl.] LT", lastWeek: "[sÃÂðasta] dddd [kl.] LT", sameElse: "L" }, relativeTime: { future: "eftir %s", past: "fyrir %s sÃÂðan", s: is__translate, m: is__translate, mm: is__translate, h: "klukkustund", hh: is__translate, d: is__translate, dd: is__translate, M: is__translate, MM: is__translate, y: is__translate, yy: is__translate }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), moment__default.defineLocale("it", { 7349 months: "gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"), 7350 monthsShort: "gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"), 7351 weekdays: "Domenica_Lunedì_Martedì_Mercoledì_Giovedì_Venerdì_Sabato".split("_"), 7352 weekdaysShort: "Dom_Lun_Mar_Mer_Gio_Ven_Sab".split("_"), 7353 weekdaysMin: "Do_Lu_Ma_Me_Gi_Ve_Sa".split("_"), 7354 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, 7355 calendar: { 7356 sameDay: "[Oggi alle] LT", 7357 nextDay: "[Domani alle] LT", 7358 nextWeek: "dddd [alle] LT", 7359 lastDay: "[Ieri alle] LT", 7360 lastWeek: function() { 7361 switch (this.day()) { 7362 case 0: 7363 return "[la scorsa] dddd [alle] LT"; 7364 default: 7365 return "[lo scorso] dddd [alle] LT" 7366 } 7367 }, 7368 sameElse: "L" 7369 }, 7370 relativeTime: { future: function(s) { return (/^[0-9].+$/.test(s) ? "tra" : "in") + " " + s }, past: "%s fa", s: "alcuni secondi", m: "un minuto", mm: "%d minuti", h: "un'ora", hh: "%d ore", d: "un giorno", dd: "%d giorni", M: "un mese", MM: "%d mesi", y: "un anno", yy: "%d anni" }, 7371 ordinalParse: /\d{1,2}ú/, 7372 ordinal: "%dú", 7373 week: { dow: 1, doy: 4 } 7374 }), moment__default.defineLocale("ja", { 7375 months: "1æÅË_2æÅË_3æÅË_4æÅË_5æÅË_6æÅË_7æÅË_8æÅË_9æÅË_10æÅË_11æÅË_12æÅË".split("_"), 7376 monthsShort: "1æÅË_2æÅË_3æÅË_4æÅË_5æÅË_6æÅË_7æÅË_8æÅË_9æÅË_10æÅË_11æÅË_12æÅË".split("_"), 7377 weekdays: "æâ¥æâºÅæâÂ¥_æÅËæâºÅæâÂ¥_ç«æâºÅæâÂ¥_æ°´æâºÅæâÂ¥_æÅ¨æâºÅæâÂ¥_éâ¡âæâºÅæâÂ¥_åşæâºÅæâÂ¥".split("_"), 7378 weekdaysShort: "æâÂ¥_æÅË_ç«_æ°´_æÅ¨_éâ¡â_åş".split("_"), 7379 weekdaysMin: "æâÂ¥_æÅË_ç«_æ°´_æÅ¨_éâ¡â_åş".split("_"), 7380 longDateFormat: { LT: "Ahæâ¢âmÃ¥Ëâ ", LTS: "Ahæâ¢âmÃ¥Ëâ sç§â", L: "YYYY/MM/DD", LL: "YYYYå¹´MæÅËDæâÂ¥", LLL: "YYYYå¹´MæÅËDæâÂ¥Ahæâ¢âmÃ¥Ëâ ", LLLL: "YYYYå¹´MæÅËDæâÂ¥Ahæâ¢âmÃ¥Ëâ dddd" }, 7381 meridiemParse: /Ã¥ÂËÃ¥â°Â|Ã¥ÂËå¾Å/i, 7382 isPM: function(input) { return "Ã¥ÂËå¾Å" === input }, 7383 meridiem: function(hour, minute, isLower) { return hour < 12 ? "Ã¥ÂËÃ¥â°Â" : "Ã¥ÂËå¾Å" }, 7384 calendar: { sameDay: "[今æâÂ¥] LT", nextDay: "[æËŽæâÂ¥] LT", nextWeek: "[æÂ¥éâ¬Â±]dddd LT", lastDay: "[æË¨æâÂ¥] LT", lastWeek: "[Ã¥â°Âéâ¬Â±]dddd LT", sameElse: "L" }, 7385 ordinalParse: /\d{1,2}æâÂ¥/, 7386 ordinal: function(number, period) { 7387 switch (period) { 7388 case "d": 7389 case "D": 7390 case "DDD": 7391 return number + "æâÂ¥"; 7392 default: 7393 return number 7394 } 7395 }, 7396 relativeTime: { future: "%så¾Å", past: "%sÃ¥â°Â", s: "æâ¢Â°Ã§Â§â", m: "1Ã¥Ëâ ", mm: "%dÃ¥Ëâ ", h: "1æâ¢âéââ", hh: "%dæâ¢âéââ", d: "1æâÂ¥", dd: "%dæâÂ¥", M: "1ãÆÂ¶Ã¦ÅË", MM: "%dãÆÂ¶Ã¦ÅË", y: "1å¹´", yy: "%då¹´" } 7397 }), moment__default.defineLocale("jv", { months: "Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember".split("_"), monthsShort: "Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des".split("_"), weekdays: "Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu".split("_"), weekdaysShort: "Min_Sen_Sel_Reb_Kem_Jem_Sep".split("_"), weekdaysMin: "Mg_Sn_Sl_Rb_Km_Jm_Sp".split("_"), longDateFormat: { LT: "HH.mm", LTS: "HH.mm.ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY [pukul] HH.mm", LLLL: "dddd, D MMMM YYYY [pukul] HH.mm" }, meridiemParse: /enjing|siyang|sonten|ndalu/, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "enjing" === meridiem ? hour : "siyang" === meridiem ? hour >= 11 ? hour : hour + 12 : "sonten" === meridiem || "ndalu" === meridiem ? hour + 12 : void 0 }, meridiem: function(hours, minutes, isLower) { return hours < 11 ? "enjing" : hours < 15 ? "siyang" : hours < 19 ? "sonten" : "ndalu" }, calendar: { sameDay: "[Dinten puniko pukul] LT", nextDay: "[Mbenjang pukul] LT", nextWeek: "dddd [pukul] LT", lastDay: "[Kala wingi pukul] LT", lastWeek: "dddd [kepengker pukul] LT", sameElse: "L" }, relativeTime: { future: "wonten ing %s", past: "%s ingkang kepengker", s: "sawetawis detik", m: "setunggal menit", mm: "%d menit", h: "setunggal jam", hh: "%d j
7397am", d: "sedinten", dd: "%d dinten", M: "sewulan", MM: "%d wulan", y: "setaun", yy: "%d taun" }, week: { dow: 1, doy: 7 } }), moment__default.defineLocale("ka", { months: { standalone: "áÆËáÆÂáÆÅáÆâ¢Ã¡ÆÂÃ¡Æ Ã¡ÆË_áÆâáÆâáÆâáÆâÃ¡Æ Ã¡Æâ¢Ã¡ÆÂáÆÅ¡Ã¡ÆË_áÆâºÃ¡ÆÂÃ¡Æ Ã¡ÆÂ¢Ã¡ÆË_áÆÂáÆÅ¾Ã¡Æ áÆËáÆÅ¡Ã¡ÆË_áÆâºÃ¡ÆÂáÆËáÆÂ¡Ã¡ÆË_áÆËáÆâ¢Ã¡ÆÅáÆËáÆÂ¡Ã¡ÆË_áÆËáÆâ¢Ã¡ÆÅ¡Ã¡ÆËáÆÂ¡Ã¡ÆË_áÆÂáÆâáÆâ¢Ã¡ÆËáÆÂ¡Ã¡ÆÂ¢Ã¡ÆÂ_áÆÂ¡Ã¡ÆâáÆÂ¥Ã¡ÆÂ¢Ã¡ÆâáÆâºÃ¡ÆâáÆâÃ¡Æ Ã¡ÆË_áÆÂáÆÂ¥Ã¡ÆÂ¢Ã¡ÆÂáÆâºÃ¡ÆâáÆâÃ¡Æ Ã¡ÆË_áÆÅáÆÂáÆâáÆâºÃ¡ÆâáÆâÃ¡Æ Ã¡ÆË_áÆâáÆâáÆâ¢Ã¡ÆâáÆâºÃ¡ÆâáÆâÃ¡Æ Ã¡ÆË".split("_"), format: "áÆËáÆÂáÆÅáÆâ¢Ã¡ÆÂÃ¡Æ Ã¡ÆÂ¡_áÆâáÆâáÆâáÆâÃ¡Æ Ã¡Æâ¢Ã¡ÆÂáÆÅ¡Ã¡ÆÂ¡_áÆâºÃ¡ÆÂÃ¡Æ Ã¡ÆÂ¢Ã¡ÆÂ¡_áÆÂáÆÅ¾Ã¡Æ áÆËáÆÅ¡Ã¡ÆËáÆÂ¡_áÆâºÃ¡ÆÂáÆËáÆÂ¡Ã¡ÆÂ¡_áÆËáÆâ¢Ã¡ÆÅáÆËáÆÂ¡Ã¡ÆÂ¡_áÆËáÆâ¢Ã¡ÆÅ¡Ã¡ÆËáÆÂ¡Ã¡ÆÂ¡_áÆÂáÆâáÆâ¢Ã¡ÆËáÆÂ¡Ã¡ÆÂ¢Ã¡ÆÂ¡_áÆÂ¡Ã¡ÆâáÆÂ¥Ã¡ÆÂ¢Ã¡ÆâáÆâºÃ¡ÆâáÆâÃ¡Æ Ã¡ÆÂ¡_áÆÂáÆÂ¥Ã¡ÆÂ¢Ã¡ÆÂáÆâºÃ¡ÆâáÆâÃ¡Æ Ã¡ÆÂ¡_áÆÅáÆÂáÆâáÆâºÃ¡ÆâáÆâÃ¡Æ Ã¡ÆÂ¡_áÆâáÆâáÆâ¢Ã¡ÆâáÆâºÃ¡ÆâáÆâÃ¡Æ Ã¡ÆÂ¡".split("_") }, monthsShort: "áÆËáÆÂáÆÅ_áÆâáÆâáÆâ_áÆâºÃ¡ÆÂÃ¡Æ _áÆÂáÆÅ¾Ã¡Æ _áÆâºÃ¡ÆÂáÆË_áÆËáÆâ¢Ã¡ÆÅ_áÆËáÆâ¢Ã¡ÆÅ¡_áÆÂáÆâáÆâ¢_áÆÂ¡Ã¡ÆâáÆÂ¥_áÆÂáÆÂ¥Ã¡ÆÂ¢_áÆÅáÆÂáÆâ_áÆâáÆâáÆâ¢".split("_"), weekdays: { standalone: "áÆâ¢Ã¡Æâ¢Ã¡ÆËÃ¡Æ Ã¡ÆÂ_áÆÂÃ¡Æ Ã¡ÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆË_áÆÂ¡Ã¡ÆÂáÆâºÃ¡ÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆË_áÆÂáÆâáÆÂ®Ã¡ÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆË_áÆÂ®Ã¡ÆÂ£Ã¡ÆâáÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆË_áÆÅ¾Ã¡ÆÂÃ¡Æ Ã¡ÆÂáÆÂ¡Ã¡Æâ¢Ã¡ÆâáÆâ¢Ã¡ÆË_áÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆË".split("_"), format: "áÆâ¢Ã¡Æâ¢Ã¡ÆËÃ¡Æ Ã¡ÆÂáÆÂ¡_áÆÂÃ¡Æ Ã¡ÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆÂ¡_áÆÂ¡Ã¡ÆÂáÆâºÃ¡ÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆÂ¡_áÆÂáÆâáÆÂ®Ã¡ÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆÂ¡_áÆÂ®Ã¡ÆÂ£Ã¡ÆâáÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆÂ¡_áÆÅ¾Ã¡ÆÂÃ¡Æ Ã¡ÆÂáÆÂ¡Ã¡Æâ¢Ã¡ÆâáÆâ¢Ã¡ÆÂ¡_áÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆÂ¡".split("_"), isFormat: /(áÆÂ¬Ã¡ÆËáÆÅáÆÂ|áÆÂ¨Ã¡ÆâáÆâºÃ¡ÆâáÆâáÆâ)/ }, weekdaysShort: "áÆâ¢Ã¡Æâ¢Ã¡ÆË_áÆÂÃ¡Æ Ã¡ÆÂ¨_áÆÂ¡Ã¡ÆÂáÆâº_áÆÂáÆâáÆÂ®_áÆÂ®Ã¡ÆÂ£Ã¡Æâ_áÆÅ¾Ã¡ÆÂÃ¡Æ _áÆÂ¨Ã¡ÆÂáÆâ".split("_"), weekdaysMin: "áÆâ¢Ã¡Æâ¢_áÆÂÃ¡Æ _áÆÂ¡Ã¡ÆÂ_áÆÂáÆâ_áÆÂ®Ã¡ÆÂ£_áÆÅ¾Ã¡ÆÂ_áÆÂ¨Ã¡ÆÂ".split("_"), longDateFormat: { LT: "h:mm A", LTS: "h:mm:ss A", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY h:mm A", LLLL: "dddd, D MMMM YYYY h:mm A" }, calendar: { sameDay: "[áÆâáÆÂ¦Ã¡ÆâáÆÂ¡] LT[-áÆâáÆâ]", nextDay: "[áÆÂ®Ã¡Æâ¢Ã¡ÆÂáÆÅ¡] LT[-áÆâáÆâ]", lastDay: "[áÆâáÆÂ£Ã¡ÆÂ¨Ã¡ÆËáÆÅ] LT[-áÆâáÆâ]", nextWeek: "[áÆÂ¨Ã¡ÆâáÆâºÃ¡ÆâáÆâáÆâ] dddd LT[-áÆâáÆâ]", lastWeek: "[áÆÂ¬Ã¡ÆËáÆÅáÆÂ] dddd LT-áÆâáÆâ", sameElse: "L" }, relativeTime: { future: function(s) { return /(áÆÂ¬Ã¡ÆÂáÆâºÃ¡ÆË|áÆÂ¬Ã¡ÆÂ£Ã¡ÆâáÆË|áÆÂ¡Ã¡ÆÂáÆÂáÆâáÆË|áÆÂ¬Ã¡ÆâáÆÅ¡Ã¡ÆË)/.test(s) ? s.replace(/áÆË$/, "áÆÂ¨Ã¡ÆË") : s + "áÆÂ¨Ã¡ÆË" }, past: function(s) { return /(áÆÂ¬Ã¡ÆÂáÆâºÃ¡ÆË|áÆÂ¬Ã¡ÆÂ£Ã¡ÆâáÆË|áÆÂ¡Ã¡ÆÂáÆÂáÆâáÆË|áÆâáÆÂ¦Ã¡Æâ|áÆâáÆâ¢Ã¡Æâ)/.test(s) ? s.replace(/(áÆË|áÆâ)$/, "áÆËáÆÂ¡ áÆÂ¬Ã¡ÆËáÆÅ") : /áÆÂ¬Ã¡ÆâáÆÅ¡Ã¡ÆË/.test(s) ? s.replace(/áÆÂ¬Ã¡ÆâáÆÅ¡Ã¡ÆË$/, "áÆÂ¬Ã¡ÆÅ¡Ã¡ÆËáÆÂ¡ áÆÂ¬Ã¡ÆËáÆÅ") : void 0 }, s: "Ã¡Æ Ã¡ÆÂáÆâºÃ¡ÆâáÆâáÆÅáÆËáÆâºÃ¡Æâ áÆÂ¬Ã¡ÆÂáÆâºÃ¡ÆË", m: "áÆÂ¬Ã¡ÆÂ£Ã¡ÆâáÆË", mm: "%d áÆÂ¬Ã¡ÆÂ£Ã¡ÆâáÆË", h: "áÆÂ¡Ã¡ÆÂáÆÂáÆâáÆË", hh: "%d áÆÂ¡Ã¡ÆÂáÆÂáÆâáÆË", d: "áÆâáÆÂ¦Ã¡Æâ", dd: "%d áÆâáÆÂ¦Ã¡Æâ", M: "áÆâáÆâ¢Ã¡Æâ", MM: "%d áÆâáÆâ¢Ã¡Æâ", y: "áÆÂ¬Ã¡ÆâáÆÅ¡Ã¡ÆË", yy: "%d áÆÂ¬Ã¡ÆâáÆÅ¡Ã¡ÆË" }, ordinalParse: /0|1-áÆÅ¡Ã¡ÆË|áÆâºÃ¡Æâ-\d{1,2}|\d{1,2}-áÆâ/, ordinal: function(number) { return 0 === number ? number : 1 === number ? number + "-áÆÅ¡Ã¡ÆË" : number < 20 || number <= 100 && number % 20 === 0 || number % 100 === 0 ? "áÆâºÃ¡Æâ-" + number : number + "-áÆâ" }, week: { dow: 1, doy: 7 } }), { 0: "-ÃËÃâ", 1: "-ÃËÃâ", 2: "-ÃËÃâ", 3: "-ÃËÃâ", 4: "-ÃËÃâ", 5: "-ÃËÃâ", 6: "-ÃËÃâ¹", 7: "-ÃËÃâ", 8: "-ÃËÃâ", 9: "-ÃËÃâ¹", 10: "-ÃËÃâ¹", 20: "-ÃËÃâ¹", 30: "-ÃËÃâ¹", 40: "-ÃËÃâ¹", 50: "-ÃËÃâ", 60: "-ÃËÃâ¹", 70: "-ÃËÃâ", 80: "-ÃËÃâ", 90: "-ÃËÃâ¹", 100: "-ÃËÃâ" }), 7398 ky__suffixes = (moment__default.defineLocale("kk", { 7399 months: "ÃâºÃ°Ã£ÃâðÃâ¬_ðÃâºÃ¿Ã°Ã½_ýÃÂ°ÃÆÃâ¬Ãâ¹Ã·_ÃÂÃâ¢ÃÆÃâÃâ¬_üðüÃâ¹Ãâ¬_üÃÂ°ÃÆÃÂÃâ¹Ã¼_ÃËÃâûôõ_ÃâðüÃâ¹Ã·_ÃâºÃâ¹Ãâ¬ÃºÃ¯Ã¹ÃµÃº_ÃâºÃ°Ã·Ã°Ã½_ÃâºÃ°Ãâ¬Ã°ÃËð_öõûÃâþÃâºÃÂðý".split("_"), 7400 monthsShort: "ÃâºÃ°Ã£_ðÃâºÃ¿_ýÃÂ°ÃÆ_ÃÂÃâ¢ÃÆ_üðü_üÃÂ°ÃÆ_ÃËÃâû_Ãâðü_ÃâºÃâ¹Ãâ¬_ÃâºÃ°Ã·_ÃâºÃ°Ãâ¬_öõû".split("_"), 7401 weekdays: "öõúÃÂõýñÃâ_ôïùÃÂõýñÃâ_ÃÂõùÃÂõýñÃâ_ÃÂÃâ¢Ãâ¬ÃÂõýñÃâ_ñõùÃÂõýñÃâ_öñüð_ÃÂõýñÃâ".split("_"), 7402 weekdaysShort: "öõú_ôïù_ÃÂõù_ÃÂÃâ¢Ãâ¬_ñõù_öñü_ÃÂõý".split("_"), 7403 weekdaysMin: "öú_ôù_ÃÂù_ÃÂÃâ¬_ñù_öü_ÃÂý".split("_"), 7404 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, 7405 calendar: { sameDay: "[ÃâïóÃâý ÃÂðÃâðÃâ] LT", nextDay: "[Ãâ¢Ãâ¬Ãâõã ÃÂðÃâðÃâ] LT", nextWeek: "dddd [ÃÂðÃâðÃâ] LT", lastDay: "[ÚõÃËõ ÃÂðÃâðÃâ] LT", lastWeek: "[èÃâúõý ðÿÃâðýÃâ¹Ã£] dddd [ÃÂðÃâðÃâ] LT", sameElse: "L" }, 7406 relativeTime: { future: "%s ÃâÃËÃâýôõ", past: "%s ññÃâ¬Ãâ¹Ã½", s: "ñÃâÃâ¬Ã½ÃµÃËõ ÃÂõÃÂºÃÆÃ½Ã´", m: "ñÃâÃ⬠üøÃÂ½ÃÆÃâ", mm: "%d üøÃÂ½ÃÆÃâ", h: "ñÃâÃ⬠ÃÂðÃâðÃâ", hh: "%d ÃÂðÃâðÃâ", d: "ñÃâÃ⬠úïý", dd: "%d úïý", M: "ñÃâÃ⬠ðù", MM: "%d ðù", y: "ñÃâÃ⬠öÃâ¹Ã»", yy: "%d öÃâ¹Ã»" }, 7407 ordinalParse: /\d{1,2}-(ÃËÃâ|ÃËÃâ¹)/, 7408 ordinal: function(number) { 7409 var a = number % 10, 7410 b = number >= 100 ? 100 : null; 7411 return number + (kk__suffixes[number] || kk__suffixes[a] || kk__suffixes[b]) 7412 }, 7413 week: { dow: 1, doy: 7 } 7414 }), moment__default.defineLocale("km", { months: "ážËážâ¬Ã¡Å¾Å¡Ã¡Å¾Â¶_ážâ¬Ã¡Å¾Â»Ã¡Å¾ËáŸâážâáŸË_ážËីážâáž¶_ážËáŸÂសា_ឧសážâáž¶_ážËáž·ážÂáž»ážâáž¶_ážâ¬Ã¡Å¾â¬Ã¡Å¸âážâ¬Ã¡Å¾Å áž¶_សីáž áž¶_ážâ¬Ã¡Å¾â°Ã¡Å¸âážâ°Ã¡Å¾Â¶_ážÂáž»ážâºÃ¡Å¾Â¶_ážÅáž·ážâ¦Ã¡Å¸âážâ áž·ážâ¬Ã¡Å¾Â¶_ážâáŸâážâáž¼".split("_"), monthsShort: "ážËážâ¬Ã¡Å¾Å¡Ã¡Å¾Â¶_ážâ¬Ã¡Å¾Â»Ã¡Å¾ËáŸâážâáŸË_ážËីážâáž¶_ážËáŸÂសា_ឧសážâáž¶_ážËáž·ážÂáž»ážâáž¶_ážâ¬Ã¡Å¾â¬Ã¡Å¸âážâ¬Ã¡Å¾Å áž¶_សីáž áž¶_ážâ¬Ã¡Å¾â°Ã¡Å¸âážâ°Ã¡Å¾Â¶_ážÂáž»ážâºÃ¡Å¾Â¶_ážÅáž·ážâ¦Ã¡Å¸âážâ áž·ážâ¬Ã¡Å¾Â¶_ážâáŸâážâáž¼".split("_"), weekdays: "អាážâáž·ážÂáŸâážâ¢_ážâ¦Ã¡Å¸ÂážâáŸâážâ_អážâáŸâážâáž¶ážš_ážâáž»ážâ_ážâáŸâážšáž សáŸâážâážÂáž·áŸÂ_សុážâ¬Ã¡Å¸âážš_សáŸâ¦Ã¡Å¾Å¡Ã¡Å¸Â".split("_"), weekdaysShort: "អាážâáž·ážÂáŸâážâ¢_ážâ¦Ã¡Å¸ÂážâáŸâážâ_អážâáŸâážâáž¶ážš_ážâáž»ážâ_ážâáŸâážšáž សáŸâážâážÂáž·áŸÂ_សុážâ¬Ã¡Å¸âážš_សáŸâ¦Ã¡Å¾Å¡Ã¡Å¸Â".split("_"), weekdaysMin: "អាážâáž·ážÂáŸâážâ¢_ážâ¦Ã¡Å¸ÂážâáŸâážâ_អážâáŸâážâáž¶ážš_ážâáž»ážâ_ážâáŸâážšáž សáŸâážâážÂáž·áŸÂ_សុážâ¬Ã¡Å¸âážš_សáŸâ¦Ã¡Å¾Å¡Ã¡Å¸Â".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, calendar: { sameDay: "[ážÂáŸâážâáŸÆÃ¡Å¾âáŸÂáŸ⡠ážËáŸâ°Ã¡Å¸âážâ] LT", nextDay: "[សáŸâáž
7414¢áŸâáž⬠ážËáŸâ°Ã¡Å¸âážâ] LT", nextWeek: "dddd [ážËáŸâ°Ã¡Å¸âážâ] LT", lastDay: "[ážËáŸâសិážâºÃ¡Å¾Ëáž·ážⰠážËáŸâ°Ã¡Å¸âážâ] LT", lastWeek: "dddd [សážâáŸâážÂáž¶áž áŸÂážËáž»ážâ] [ážËáŸâ°Ã¡Å¸âážâ] LT", sameElse: "L" }, relativeTime: { future: "%sážâáŸâ¬Ã¡Å¾Â", past: "%sážËáž»ážâ", s: "ážâáŸâ°Ã¡Å¾Â»Ã¡Å¾âáŸâážËáž¶ážâážÅáž·ážâáž¶ážâី", m: "ážËáž½ážâ¢Ã¡Å¾âáž¶ážâី", mm: "%d ážâáž¶ážâី", h: "ážËáž½ážâ¢Ã¡Å¾ËáŸâ°Ã¡Å¸âážâ", hh: "%d ážËáŸâ°Ã¡Å¸âážâ", d: "ážËáž½ážâ¢Ã¡Å¾ÂáŸâážâáŸÆ", dd: "%d ážÂáŸâážâáŸÆ", M: "ážËáž½ážâ¢Ã¡Å¾ÂáŸâ", MM: "%d ážÂáŸâ", y: "ážËáž½ážâ¢Ã¡Å¾â áŸâážâáž¶áŸâ ", yy: "%d ážâ áŸâážâáž¶áŸâ " }, week: { dow: 1, doy: 4 } }), moment__default.defineLocale("ko", { months: "1ìâºâ_2ìâºâ_3ìâºâ_4ìâºâ_5ìâºâ_6ìâºâ_7ìâºâ_8ìâºâ_9ìâºâ_10ìâºâ_11ìâºâ_12ìâºâ".split("_"), monthsShort: "1ìâºâ_2ìâºâ_3ìâºâ_4ìâºâ_5ìâºâ_6ìâºâ_7ìâºâ_8ìâºâ_9ìâºâ_10ìâºâ_11ìâºâ_12ìâºâ".split("_"), weekdays: "ì¼ìšâì¼_ìâºâìšâì¼_Ãâ¢âìšâì¼_ìËËìšâì¼_목ìšâì¼_ê¸Ëìšâì¼_Ãâ ìšâì¼".split("_"), weekdaysShort: "ì¼_ìâºâ_Ãâ¢â_ìËË_목_ê¸Ë_Ãâ ".split("_"), weekdaysMin: "ì¼_ìâºâ_Ãâ¢â_ìËË_목_ê¸Ë_Ãâ ".split("_"), longDateFormat: { LT: "A hìâ¹Å më¶â", LTS: "A hìâ¹Å më¶â sì´Ë", L: "YYYY.MM.DD", LL: "YYYYëâ¦â MMMM Dì¼", LLL: "YYYYëâ¦â MMMM Dì¼ A hìâ¹Å më¶â", LLLL: "YYYYëâ¦â MMMM Dì¼ dddd A hìâ¹Å më¶â" }, calendar: { sameDay: "ìËÂ¤Ã«Å Ë LT", nextDay: "ëâ´ì¼ LT", nextWeek: "dddd LT", lastDay: "ìâ´ì Å LT", lastWeek: "ì§â¬Ã«âÅ주 dddd LT", sameElse: "L" }, relativeTime: { future: "%s Ãâºâ", past: "%s ì â", s: "ëª⡠ì´Ë", ss: "%dì´Ë", m: "ì¼ë¶â", mm: "%dë¶â", h: "Ãâ¢Å ìâ¹Åê°â", hh: "%dìâ¹Åê°â", d: "Ãâ¢Ë루", dd: "%dì¼", M: "Ãâ¢Å ëâ¹Â¬", MM: "%dëâ¹Â¬", y: "ì¼ ëâ¦â", yy: "%dëâ¦â" }, ordinalParse: /\d{1,2}ì¼/, ordinal: "%dì¼", meridiemParse: /ìˤì â|ìˤÃâºâ/, isPM: function(token) { return "ìˤÃâºâ" === token }, meridiem: function(hour, minute, isUpper) { return hour < 12 ? "ìˤì â" : "ìˤÃâºâ" } }), { 7415 0: "-Ãâ¡Ã¯", 7416 1: "-Ãâ¡Ã¸", 7417 2: "-Ãâ¡Ã¸", 7418 3: "-Ãâ¡Ã¯", 7419 4: "-Ãâ¡Ã¯", 7420 5: "-Ãâ¡Ã¸", 7421 6: "-Ãâ¡Ãâ¹", 7422 7: "-Ãâ¡Ã¸", 7423 8: "-Ãâ¡Ã¸", 7424 9: "-Ãâ¡ÃÆ", 7425 10: "-Ãâ¡ÃÆ", 7426 20: "-Ãâ¡Ãâ¹", 7427 30: "-Ãâ¡ÃÆ", 7428 40: "-Ãâ¡Ãâ¹", 7429 50: "-Ãâ¡Ã¯", 7430 60: "-Ãâ¡Ãâ¹", 7431 70: "-Ãâ¡Ã¸", 7432 80: "-Ãâ¡Ã¸", 7433 90: "-Ãâ¡ÃÆ", 7434 100: "-Ãâ¡Ã¯" 7435 }), 7436 lt__units = (moment__default.defineLocale("ky", { 7437 months: "ÃÂýòðÃâ¬ÃÅ_ÃâõòÃâ¬Ã°Ã»ÃÅ_üðÃâ¬Ãâ_ðÿÃâ¬ÃµÃ»ÃÅ_üðù_øÎýÃÅ_øÎûÃÅ_ðòÃÂ³ÃÆÃÂÃâ_ÃÂõýÃâÃÂñÃâ¬ÃÅ_þúÃâÃÂñÃâ¬ÃÅ_ýþÃÂñÃâ¬ÃÅ_ôõúðñÃâ¬ÃÅ".split("_"), 7438 monthsShort: "ÃÂýò_Ãâõò_üðÃâ¬Ãâ_ðÿÃâ¬_üðù_øÎýÃÅ_øÎûÃÅ_ðòó_ÃÂõý_þúÃâ_ýþÃÂ_ôõú".split("_"), 7439 weekdays: "ÃâõúÃËõüñø_ÃâïùÃËéüñï_èõùÃËõüñø_èðÃâ¬ÃËõüñø_ÃâõùÃËõüñø_ÃâÃÆÃ¼Ã°_ÃËÃËÃÂ
vendor: 4,196 bytes, lines 7439-7481
7439µÃ¼Ã±Ã¸".split("_"), 7440 weekdaysShort: "Ãâõú_Ãâïù_èõù_èðÃâ¬_Ãâõù_ÃâÃÆÃ¼_ÃËÃËõ".split("_"), 7441 weekdaysMin: "Ãâú_Ãâù_èù_èÃâ¬_Ãâù_Ãâü_ÃËÃË".split("_"), 7442 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, 7443 calendar: { sameDay: "[Ãâïóïý ÃÂððÃâ] LT", nextDay: "[ÃÂÃâ¬Ãâõã ÃÂððÃâ] LT", nextWeek: "dddd [ÃÂððÃâ] LT", lastDay: "[ÚõÃâ¡Ãµ ÃÂððÃâ] LT", lastWeek: "[èÃâúõý ðÿÃâðýÃâ¹Ã½] dddd [úïýï] [ÃÂððÃâ] LT", sameElse: "L" }, 7444 relativeTime: { future: "%s øÃâ¡Ã¸Ã½Ã´Ãµ", past: "%s ÃÂ¼ÃÆÃâ¬ÃÆÃ½", s: "ñøÃâ¬Ã½ÃµÃâ¡Ãµ ÃÂõÃÂºÃÆÃ½Ã´", m: "ñøÃ⬠üïýéÃâ", mm: "%d üïýéÃâ", h: "ñøÃ⬠ÃÂððÃâ", hh: "%d ÃÂððÃâ", d: "ñøÃ⬠úïý", dd: "%d úïý", M: "ñøÃ⬠ðù", MM: "%d ðù", y: "ñøÃ⬠öÃâ¹Ã»", yy: "%d öÃâ¹Ã»" }, 7445 ordinalParse: /\d{1,2}-(Ãâ¡Ã¸|Ãâ¡Ãâ¹|Ãâ¡Ã¯|Ãâ¡ÃÆ)/, 7446 ordinal: function(number) { 7447 var a = number % 10, 7448 b = number >= 100 ? 100 : null; 7449 return number + (ky__suffixes[number] || ky__suffixes[a] || ky__suffixes[b]) 7450 }, 7451 week: { dow: 1, doy: 7 } 7452 }), moment__default.defineLocale("lb", { 7453 months: "Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"), 7454 monthsShort: "Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"), 7455 monthsParseExact: !0, 7456 weekdays: "Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"), 7457 weekdaysShort: "So._Mé._Dë._Më._Do._Fr._Sa.".split("_"), 7458 weekdaysMin: "So_Mé_Dë_Më_Do_Fr_Sa".split("_"), 7459 weekdaysParseExact: !0, 7460 longDateFormat: { LT: "H:mm [Auer]", LTS: "H:mm:ss [Auer]", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY H:mm [Auer]", LLLL: "dddd, D. MMMM YYYY H:mm [Auer]" }, 7461 calendar: { 7462 sameDay: "[Haut um] LT", 7463 sameElse: "L", 7464 nextDay: "[Muer um] LT", 7465 nextWeek: "dddd [um] LT", 7466 lastDay: "[Gëschter um] LT", 7467 lastWeek: function() { 7468 switch (this.day()) { 7469 case 2: 7470 case 4: 7471 return "[Leschten] dddd [um] LT"; 7472 default: 7473 return "[Leschte] dddd [um] LT" 7474 } 7475 } 7476 }, 7477 relativeTime: { future: processFutureTime, past: processPastTime, s: "e puer Sekonnen", m: lb__processRelativeTime, mm: "%d Minutten", h: lb__processRelativeTime, hh: "%d Stonnen", d: lb__processRelativeTime, dd: "%d Deeg", M: lb__processRelativeTime, MM: "%d Méint", y: lb__processRelativeTime, yy: "%d Joer" }, 7478 ordinalParse: /\d{1,2}\./, 7479 ordinal: "%d.", 7480 week: { dow: 1, doy: 4 } 7481 }), moment__default.defineLocale("lo", { months: "à º¡à º±à ºâ¡Ã ºÂà ºÂà ºâ¢_à ºÂà º¸à º¡à ºžà º²_à º¡à ºµà ºâ¢Ã º²_à »â¬Ã º¡à ºªà º²_à ºžà º¶à ºâà ºªà º°à ºžà º²_à º¡à º´à ºâà º¸à ºâ¢Ã º²_à ºÂà »Âà º¥à º°à ºÂà º»à ºâ_à ºªà º´à ºâ¡Ã º«à º²_à ºÂà º±à ºâ¢Ã ºÂà º²_à ºâ¢Ã º¸à º¥à º²_à ºžà º°à ºËà º´à ºÂ_à ºâà º±à ºâ¢Ã º§à º²".split("_"), monthsShort: "à º¡à º±à ºâ¡Ã ºÂà ºÂà ºâ¢_à ºÂà º¸à º¡à ºžà º²_à º¡à ºµà ºâ¢Ã º²_à »â¬Ã º¡à ºªà º²_à º
7481žà º¶à ºâà ºªà º°à ºžà º²_à º¡à º´à ºâà º¸à ºâ¢Ã º²_à ºÂà »Âà º¥à º°à ºÂà º»à ºâ_à ºªà º´à ºâ¡Ã º«à º²_à ºÂà º±à ºâ¢Ã ºÂà º²_à ºâ¢Ã º¸à º¥à º²_à ºžà º°à ºËà º´à ºÂ_à ºâà º±à ºâ¢Ã º§à º²".split("_"), weekdays: "à ºÂà º²à ºâà º´à ºâ_à ºËà º±à ºâ¢_à ºÂà º±à ºâ¡Ã ºâà º²à ºâ¢_à ºžà º¸à ºâ_à ºžà º°à º«à º±à ºâ_à ºªà º¸à ºÂ_à »â¬Ã ºªà º»à º²".split("_"), weekdaysShort: "à ºâà º´à ºâ_à ºËà º±à ºâ¢_à ºÂà º±à ºâ¡Ã ºâà º²à ºâ¢_à ºžà º¸à ºâ_à ºžà º°à º«à º±à ºâ_à ºªà º¸à ºÂ_à »â¬Ã ºªà º»à º²".split("_"), weekdaysMin: "à ºâ_à ºË_à ºÂà ºâ_à ºž_à ºžà º«_à ºªà ºÂ_à ºª".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "à º§à º±à ºâ¢dddd D MMMM YYYY HH:mm" }, meridiemParse: /à ºâ¢Ã ºÂà ºâ¢Ã »â¬Ã ºŠà º»à »â°Ã º²|à ºâ¢Ã ºÂà ºâ¢Ã »Âà º¥à ºâ¡/, isPM: function(input) { return "à ºâ¢Ã ºÂà ºâ¢Ã »Âà º¥à ºâ¡" === input }, meridiem: function(hour, minute, isLower) { return hour < 12 ? "à ºâ¢Ã ºÂà ºâ¢Ã »â¬Ã ºŠà º»à »â°Ã º²" : "à ºâ¢Ã ºÂà ºâ¢Ã »Âà º¥à ºâ¡" }, calendar: { sameDay: "[à º¡à º·à »â°Ã ºâ¢Ã ºµà »â°Ã »â¬Ã º§à º¥à º²] LT", nextDay: "[à º¡à º·à »â°Ã ºÂà º·à »Ëà ºâ¢Ã »â¬Ã º§à º¥à º²] LT", nextWeek: "[à º§à º±à ºâ¢]dddd[à »Åà »â°Ã º²à »â¬Ã º§à º¥à º²] LT", lastDay: "[à º¡à º·à »â°Ã º§à º²à ºâ¢Ã ºâ¢Ã ºµà »â°Ã »â¬Ã º§à º¥à º²] LT", lastWeek: "[à º§à º±à ºâ¢]dddd[à »Âà º¥à »â°Ã º§à ºâ¢Ã ºµà »â°Ã »â¬Ã º§à º¥à º²] LT", sameElse: "L" }, relativeTime: { future: "à ºÂà ºµà º %s", past: "%sà ºÅà »Ëà º²à ºâ¢Ã º¡à º²", s: "à ºšà »Âà »Ëà »â¬Ã ºâà º»à »Ëà º²à »ÆÃ ºâà º§à º´à ºâ¢Ã º²à ºâà ºµ", m: "1 à ºâ¢Ã º²à ºâà ºµ", mm: "%d à ºâ¢Ã º²à ºâà ºµ", h: "1 à ºŠà º»à »Ëà º§à »âà º¡à ºâ¡", hh: "%d à ºŠà º»à »Ëà º§à »âà º¡à ºâ¡", d: "1 à º¡à º·à »â°", dd: "%d à º¡à º·à »â°", M: "1 à »â¬Ã ºâà º·à ºÂà ºâ¢", MM: "%d à »â¬Ã ºâà º·à ºÂà ºâ¢", y: "1 à ºâºÃ ºµ", yy: "%d à ºâºÃ ºµ" }, ordinalParse: /(à ºâà ºµà »Ë)\d{1,2}/, ordinal: function(number) { return "à ºâà ºµà »Ë" + number } }), { m: "minutÃâ_minutÃâs_minutÃâ¢", mm: "minutÃâs_minuÃÂià ³_minutes", h: "valanda_valandos_valandÃâ¦", hh: "valandos_valandà ³_valandas", d: "diena_dienos_dienÃâ¦", dd: "dienos_dienà ³_dienas", M: "mÃânuo_mÃânesio_mÃânesï", MM: "mÃânesiai_mÃânesià ³_mÃânesius", y: "metai_metà ³_metus", yy: "metai_metà ³_metus" }), 7482 lv__units = (moment__default.defineLocale("lt", { months: { format: "sausio_vasario_kovo_balandà ¾io_geguà ¾Ãâs_birà ¾elio_liepos_rugpjà «ÃÂio_rugsÃâjo_spalio_lapkriÃÂio_gruodà ¾io".split("_"), standalone: "sausis_vasaris_kovas_balandis_geguà ¾Ãâ_birà ¾elis_liepa_rugpjà «tis_rugsÃâjis_spalis_lapkritis_gruodis".split("_"), isFormat: /D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?|MMMM?(\[[^\[\]]*\]|\s+)+D[oD]?/ }, monthsShort: "sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"), weekdays: { format: "sekmadienï_pirmadienï_antradienï_treÃÂiadienï_ketvirtadienï_penktadienï_à ¡eà ¡tadienï".split("_"), standalone: "sekmadienis_pirmadienis_antradienis_treÃÂiadienis_ketvirtadienis_penktadienis_à ¡eà ¡tadienis".split("_"), isFormat: /dddd HH:mm/ }, weekdaysShort: "Sek_Pir_Ant_Tre_Ket_Pen_à eà ¡".split("_"), weekdaysMin: "S_P_A_T_K_Pn_à ".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "YYYY-MM-DD", LL: "YYYY [m.] MMMM D [d.]", LLL: "YYYY [m.] MMMM D [d.], HH:mm [val.]", LLLL: "YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]", l: "YYYY-MM-DD", ll: "YYYY [m.] MMMM D [d.]", lll: "YYYY [m.] MMMM D [d.], HH:mm [val.]", llll: "YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]" }, calendar: { sameDay: "[à iandien] LT", nextDay: "[Rytoj] LT", nextWeek: "dddd LT", lastDay: "[Vakar] LT", lastWeek: "[PraÃâjusï] dddd LT", sameElse: "L" }, relativeTime: { future: "po %s", past: "prieà ¡ %s", s: translateSeconds, m: translateSingular, mm: lt__translate, h: translateSingular, hh: lt__translate, d: translateSingular, dd: lt__translate, M: translateSingular, MM: lt__translate, y: translateSingular, yy: lt__translate }, ordinalParse: /\d{1,2}-oji/, ordinal: function(number) { return number + "-oji" }, week: { dow: 1, doy: 4 } }), { m: "minà «tes_minà «tÃâm_minà «te_minà «tes".split("_"), mm: "minà «tes_minà «tÃâm_minà «te_minà «tes".split("_"), h: "stundas_stundÃÂm_stunda_stundas".split("_"), hh: "stundas_stundÃÂm_stunda_stundas".split("_"), d: "dienas_die
vendor: 6,859 bytes, lines 7482-7522
7482nÃÂm_diena_dienas".split("_"), dd: "dienas_dienÃÂm_diena_dienas".split("_"), M: "mÃâneà ¡a_mÃâneà ¡iem_mÃânesis_mÃâneà ¡i".split("_"), MM: "mÃâneà ¡a_mÃâneà ¡iem_mÃânesis_mÃâneà ¡i".split("_"), y: "gada_gadiem_gads_gadi".split("_"), yy: "gada_gadiem_gads_gadi".split("_") }), 7483 me__translator = (moment__default.defineLocale("lv", { months: "janvÃÂris_februÃÂris_marts_aprëlis_maijs_jà «nijs_jà «lijs_augusts_septembris_oktobris_novembris_decembris".split("_"), monthsShort: "jan_feb_mar_apr_mai_jà «n_jà «l_aug_sep_okt_nov_dec".split("_"), weekdays: "svÃâtdiena_pirmdiena_otrdiena_treà ¡diena_ceturtdiena_piektdiena_sestdiena".split("_"), weekdaysShort: "Sv_P_O_T_C_Pk_S".split("_"), weekdaysMin: "Sv_P_O_T_C_Pk_S".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY.", LL: "YYYY. [gada] D. MMMM", LLL: "YYYY. [gada] D. MMMM, HH:mm", LLLL: "YYYY. [gada] D. MMMM, dddd, HH:mm" }, calendar: { sameDay: "[à odien pulksten] LT", nextDay: "[Rët pulksten] LT", nextWeek: "dddd [pulksten] LT", lastDay: "[Vakar pulksten] LT", lastWeek: "[PagÃÂjuà ¡ÃÂ] dddd [pulksten] LT", sameElse: "L" }, relativeTime: { future: "pÃâc %s", past: "pirms %s", s: relativeSeconds, m: relativeTimeWithSingular, mm: lv__relativeTimeWithPlural, h: relativeTimeWithSingular, hh: lv__relativeTimeWithPlural, d: relativeTimeWithSingular, dd: lv__relativeTimeWithPlural, M: relativeTimeWithSingular, MM: lv__relativeTimeWithPlural, y: relativeTimeWithSingular, yy: lv__relativeTimeWithPlural }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), { words: { m: ["jedan minut", "jednog minuta"], mm: ["minut", "minuta", "minuta"], h: ["jedan sat", "jednog sata"], hh: ["sat", "sata", "sati"], dd: ["dan", "dana", "dana"], MM: ["mjesec", "mjeseca", "mjeseci"], yy: ["godina", "godine", "godina"] }, correctGrammaticalCase: function(number, wordKey) { return 1 === number ? wordKey[0] : number >= 2 && number <= 4 ? wordKey[1] : wordKey[2] }, translate: function(number, withoutSuffix, key) { var wordKey = me__translator.words[key]; return 1 === key.length ? withoutSuffix ? wordKey[0] : wordKey[1] : number + " " + me__translator.correctGrammaticalCase(number, wordKey) } }), 7484 mr__symbolMap = (moment__default.defineLocale("me", { 7485 months: "januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"), 7486 monthsShort: "jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"), 7487 monthsParseExact: !0, 7488 weekdays: "nedjelja_ponedjeljak_utorak_srijeda_ÃÂetvrtak_petak_subota".split("_"), 7489 weekdaysShort: "ned._pon._uto._sri._ÃÂet._pet._sub.".split("_"), 7490 weekdaysMin: "ne_po_ut_sr_ÃÂe_pe_su".split("_"), 7491 weekdaysParseExact: !0, 7492 longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY H:mm", LLLL: "dddd, D. MMMM YYYY H:mm" }, 7493 calendar: { 7494 sameDay: "[danas u] LT", 7495 nextDay: "[sjutra u] LT", 7496 nextWeek: function() { 7497 switch (this.day()) { 7498 case 0: 7499 return "[u] [nedjelju] [u] LT"; 7500 case 3: 7501 return "[u] [srijedu] [u] LT"; 7502 case 6: 7503 return "[u] [subotu] [u] LT"; 7504 case 1: 7505 case 2: 7506 case 4: 7507 case 5: 7508 return "[u] dddd [u] LT" 7509 } 7510 }, 7511 lastDay: "[juÃÂe u] LT", 7512 lastWeek: function() { var lastWeekDays = ["[proà ¡le] [nedjelje] [u] LT", "[proà ¡log] [ponedjeljka] [u] LT", "[proà ¡log] [utorka] [u] LT", "[proà ¡le] [srijede] [u] LT", "[proà ¡log] [ÃÂetvrtka] [u] LT", "[proà ¡log] [petka] [u] LT", "[proà ¡le] [subote] [u] LT"]; return lastWeekDays[this.day()] }, 7513 sameElse: "L" 7514 }, 7515 relativeTime: { future: "za %s", past: "prije %s", s: "nekoliko sekundi", m: me__translator.translate, mm: me__translator.translate, h: me__translator.translate, hh: me__translator.translate, d: "dan", dd: me__translator.translate, M: "mjesec", MM: me__translator.translate, y: "godinu", yy: me__translator.translate }, 7516 ordinalParse: /\d{1,2}\./, 7517 ordinal: "%d.", 7518 week: { dow: 1, doy: 7 } 7519 }), moment__default.defineLocale("mi", { months: "Kohi-tÃÂte_Hui-tanguru_Poutà «-te-rangi_Paenga-whÃÂwhÃÂ_Haratua_Pipiri_Hà Ângoingoi_Here-turi-kà ÂkÃÂ_Mahuru_Whiringa-ÃÂ-nuku_Whiringa-ÃÂ-rangi_Hakihea".split("_"), monthsShort: "Kohi_Hui_Pou_Pae_Hara_Pipi_Hà Ângoi_Here_Mahu_Whi-nu_Whi-ra_Haki".split("_"), monthsRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i, monthsStrictRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i, monthsShortRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i, monthsShortStrictRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i, weekdays: "RÃÂtapu_Mane_Tà «rei_Wenerei_TÃÂite_Paraire_HÃÂtarei".split("_"), weekdaysShort: "Ta_Ma_Tà «_We_TÃÂi_Pa_HÃÂ".split("_"), weekdaysMin: "Ta_Ma_Tà «_We_TÃÂi_Pa_HÃÂ".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY [i] HH:mm", LLLL: "dddd, D MMMM YYYY [i] HH:mm" }, calendar: { sameDay: "[i teie mahana, i] LT", nextDay: "[apopo i] LT", nextWeek: "dddd [i] LT", lastDay: "[inanahi i] LT", lastWeek: "dddd [whakamutunga i] LT", sameElse: "L" }, relativeTime: { future: "i roto i %s", past: "%s i mua", s: "te hÃâkona ruarua", m: "he meneti", mm: "%d meneti", h: "te haora", hh: "%d haora", d: "he ra", dd: "%d ra", M: "he marama", MM: "%d marama", y: "he tau", yy: "%d tau" }, ordinalParse: /\d{1,2}ú/, ordinal: "%dú", week: { dow: 1, doy: 4 } }), moment__default.defineLocale("mk", { 7520 months: "ÃËðÃÂ½ÃÆÃ°Ãâ¬Ã¸_ÃâõòÃâ¬ÃÆÃ°Ãâ¬Ã¸_üðÃâ¬Ãâ_ðÿÃâ¬Ã¸Ã»_üðÃË_ÃËÃÆÃ½Ã¸_ÃËÃÆÃ»Ã¸_ðòÃÂ³ÃÆÃÂÃâ_ÃÂõÿÃâõüòÃâ¬Ã¸_þúÃâþüòÃâ¬Ã¸_ýþõüòÃâ¬Ã¸_ôõúõüòÃâ¬Ã¸".split("_"), 7521 monthsShort: "ÃËðý_Ãâõò_üðÃâ¬_ðÿÃâ¬_üðÃË_ÃËÃÆÃ½_ÃËÃÆÃ»_ðòó_ÃÂõÿ_þúÃâ_ýþõ_ôõú".split("_"), 7522 weekdays: "ýõôõûð_ÿþýõôõûýøú_òÃâþÃâ¬Ã½Ã¸Ãº_ÃÂÃâ¬ÃµÃ´Ã°_
vendor: 7,352 bytes, lines 7522-7556
7522Ãâ¡ÃµÃâòÃâ¬Ãâþú_ÿõÃâþú_ÃÂðñþÃâð".split("_"), 7523 weekdaysShort: "ýõô_ÿþý_òÃâþ_ÃÂÃâ¬Ãµ_Ãâ¡ÃµÃâ_ÿõÃâ_ÃÂðñ".split("_"), 7524 weekdaysMin: "ýe_ÿo_òÃâ_ÃÂÃâ¬_Ãâ¡Ãµ_ÿõ_ÃÂa".split("_"), 7525 longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "D.MM.YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY H:mm", LLLL: "dddd, D MMMM YYYY H:mm" }, 7526 calendar: { 7527 sameDay: "[Ãâõýõàòþ] LT", 7528 nextDay: "[ãÃâÃâ¬Ãµ òþ] LT", 7529 nextWeek: "[Ãâþ] dddd [òþ] LT", 7530 lastDay: "[ÃâÃâ¡ÃµÃâ¬Ã° òþ] LT", 7531 lastWeek: function() { 7532 switch (this.day()) { 7533 case 0: 7534 case 3: 7535 case 6: 7536 return "[ÃË÷üøýðÃâðÃâð] dddd [òþ] LT"; 7537 case 1: 7538 case 2: 7539 case 4: 7540 case 5: 7541 return "[ÃË÷üøýðÃâøþÃâ] dddd [òþ] LT" 7542 } 7543 }, 7544 sameElse: "L" 7545 }, 7546 relativeTime: { future: "ÿþÃÂûõ %s", past: "ÿÃâ¬ÃµÃ´ %s", s: "ýõúþûÃÂºÃÆ ÃÂõÃÂºÃÆÃ½Ã´Ã¸", m: "üøÃÂ½ÃÆÃâð", mm: "%d üøÃÂ½ÃÆÃâø", h: "Ãâ¡Ã°ÃÂ", hh: "%d Ãâ¡Ã°ÃÂð", d: "ôõý", dd: "%d ôõýð", M: "üõÃÂõÃâ ", MM: "%d üõÃÂõÃâ ø", y: "óþôøýð", yy: "%d óþôøýø" }, 7547 ordinalParse: /\d{1,2}-(õò|õý|Ãâø|òø|Ãâ¬Ã¸|üø)/, 7548 ordinal: function(number) { 7549 var lastDigit = number % 10, 7550 last2Digits = number % 100; 7551 return 0 === number ? number + "-õò" : 0 === last2Digits ? number + "-õý" : last2Digits > 10 && last2Digits < 20 ? number + "-Ãâø" : 1 === lastDigit ? number + "-òø" : 2 === lastDigit ? number + "-Ãâ¬Ã¸" : 7 === lastDigit || 8 === lastDigit ? number + "-üø" : number + "-Ãâø" 7552 }, 7553 week: { dow: 1, doy: 7 } 7554 }), moment__default.defineLocale("ml", { months: "à ´Åà ´¨à µÂà ´µà ´°à ´¿_à ´«à µâ à ´¬à µÂà ´°à µÂà ´µà ´°à ´¿_à ´®à ´¾à µ¼à ´šà µÂà ´šà µÂ_à ´Âà ´ªà µÂà ´°à ´¿à µ½_à ´®à µâ¡Ã ´¯à µÂ_à ´Åà µâà µº_à ´Åà µâà ´²à µË_à ´âà ´âà ´¸à µÂà ´±à µÂà ´±à µÂ_à ´¸à µâ à ´ªà µÂà ´±à µÂà ´±à ´âà ´¬à µ¼_à ´âà ´â¢Ã µÂà ´Ÿà µâ¹Ã ´¬à µ¼_à ´¨à ´µà ´âà ´¬à µ¼_à ´¡à ´¿à ´¸à ´âà ´¬à µ¼".split("_"), monthsShort: "à ´Åà ´¨à µÂ._à ´«à µâ à ´¬à µÂà ´°à µÂ._à ´®à ´¾à µ¼._à ´Âà ´ªà µÂà ´°à ´¿._à ´®à µâ¡Ã ´¯à µÂ_à ´Åà µâà µº_à ´Åà µâà ´²à µË._à ´âà ´â._à ´¸à µâ à ´ªà µÂà ´±à µÂà ´±._à ´âà ´â¢Ã µÂà ´Ÿà µâ¹._à ´¨à ´µà ´â._à ´¡à ´¿à ´¸à ´â.".split("_"), monthsParseExact: !0, weekdays: "à ´žà ´¾à ´¯à ´±à ´¾à ´´à µÂà ´š_à ´¤à ´¿à ´â¢Ã µÂà ´â¢Ã ´³à ´¾à ´´à µÂà ´š_à ´šà µŠà ´µà µÂà ´µà ´¾à ´´à µÂà ´š_à ´¬à µÂà ´§à ´¨à ´¾à ´´à µÂà ´š_à ´µà µÂà ´¯à ´¾à ´´à ´¾à ´´à µÂà ´š_à ´µà µâ à ´³à µÂà ´³à ´¿à ´¯à ´¾à ´´à µÂà ´š_à ´¶à ´¨à ´¿à ´¯à ´¾à ´´à µÂà ´š".split("_"), weekdaysShort: "à ´žà ´¾à ´¯à µ¼_à ´¤à ´¿à ´â¢Ã µÂà ´â¢Ã µ¾_à ´šà µŠà ´µà µÂà ´µ_à ´¬à µÂà ´§à µ»_à ´µà µÂà ´¯à ´¾à ´´à ´â_à ´µà µâ à ´³à µÂà ´³à ´¿_à ´¶à ´¨à ´¿".split("_"), weekdaysMin: "à ´žà ´¾_à ´¤à ´¿_à ´šà µŠ_à ´¬à µÂ_à ´µà µÂà ´¯à ´¾_à ´µà µâ _à ´¶".split("_"), longDateFormat: { LT: "A h:mm -à ´¨à µÂ", LTS: "A h:mm:ss -à ´¨à µÂ", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY, A h:mm -à ´¨à µÂ", LLLL: "dddd, D MMMM YYYY, A h:mm -à ´¨à µÂ" }, calendar: { sameDay: "[à ´â¡Ã ´¨à µÂà ´¨à µÂ] LT", nextDay: "[à ´¨à ´¾à ´³à µâ ] LT", nextWeek: "dddd, LT", lastDay: "[à ´â¡Ã ´¨à µÂà ´¨à ´²à µâ ] LT", lastWeek: "[à ´â¢Ã ´´à ´¿à ´žà µÂà ´ž] dddd, LT", sameElse: "L" }, relativeTime: { future: "%s à ´â¢Ã ´´à ´¿à ´žà µÂà ´žà µÂ", past: "%s à ´®à µÂà µ»à ´ªà µÂ", s: "à ´â¦Ã µ½à ´ª à ´¨à ´¿à ´®à ´¿à ´·à ´â¢Ã µÂà ´â¢Ã µ¾", m: "à ´âà ´°à µ à ´®à ´¿à ´¨à ´¿à ´±à µÂà ´±à µÂ", mm: "%d à ´®à ´¿à ´¨à ´¿à ´±à µÂà ´±à µÂ", h: "à ´âà ´°à µ à ´®à ´£à ´¿à ´â¢Ã µÂà ´â¢Ã µâà µ¼", hh: "%d à ´®à ´£à ´¿à ´â¢Ã µÂà ´â¢Ã µâà µ¼", d: "à ´âà ´°à µ à ´¦à ´¿à ´µà ´¸à ´â", dd: "%d à ´¦à ´¿à ´µà ´¸à ´â", M: "à ´âà ´°à µ à ´®à ´¾à ´¸à ´â", MM: "%d à ´®à ´¾à ´¸à ´â", y: "à ´âà ´°à µ à ´µà µ¼à ´·à ´â", yy: "%d à ´µà µ¼à ´·à ´â" }, meridiemParse: /à ´°à ´¾à ´¤à µÂà ´°à ´¿|à ´°à ´¾à ´µà ´¿à ´²à µâ |à ´â°Ã ´šà µÂà ´š à ´â¢Ã ´´à ´¿à ´žà µÂà ´žà µÂ|à ´µà µËà ´â¢Ã µÂà ´¨à µÂà ´¨à µâ¡Ã ´°à ´â|à ´°à ´¾à ´¤à µÂà ´°à ´¿/i, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "à ´°à ´¾à ´¤à µÂà ´°à ´¿" === meridiem && hour >= 4 || "à ´â°Ã ´šà µÂà ´š à ´â¢Ã ´´à ´¿à ´žà µÂà ´žà µÂ" === meridiem || "à ´µà µËà ´â¢Ã µÂà ´¨à µÂà ´¨à µâ¡Ã ´°à ´â" === meridiem ? hour + 12 : hour }, meridiem: function(hour, minute, isLower) { return hour < 4 ? "à ´°à ´¾à ´¤à µÂà ´°à ´¿" : hour < 12 ? "à ´°à ´¾à ´µà ´¿à ´²à µâ " : hour < 17 ? "à ´â°Ã ´šà µÂà ´š à ´â¢Ã ´´à ´¿à ´žà µÂà ´žà µÂ" : hour < 20 ? "à ´µà µËà ´â¢Ã µÂà ´¨à µÂà ´¨à µâ¡Ã ´°à ´â" : "à ´°à ´¾à ´¤à µÂà ´°à ´¿" } }), { 1: "à ¥§", 2: "à ¥¨", 3: "à ¥©", 4: "à ¥ª", 5: "à ¥«", 6: "à ¥¬", 7: "à ¥Â", 8: "à ¥®", 9: "à ¥¯", 0: "à ¥¦" }), 7555 mr__numberMap = { "à ¥§": "1", "à ¥¨": "2", "à ¥©": "3", "à ¥ª": "4", "à ¥«": "5", "à ¥¬": "6", "à ¥Â": "7", "à ¥®": "8", "à ¥¯": "9", "à ¥¦": "0" }, 7556 my__symbolMap = (moment__default.defineLocale("mr", { months: "à ¤Åà ¤¾à ¤¨à ¥â¡Ã ¤µà ¤¾à ¤°à ¥â¬_à ¤«à ¥â¡Ã ¤¬à ¥Âà ¤°à ¥Âà ¤µà ¤¾à ¤°à ¥â¬_à ¤®à ¤¾à ¤°à ¥Âà ¤š_à ¤Âà ¤ªà ¥Âà ¤°à ¤¿à ¤²_à ¤®à ¥â¡_à ¤Åà ¥âà ¤¨_à ¤Åà ¥Âà ¤²à ¥Ë_à ¤âà ¤âà ¤¸à ¥Âà ¤Ÿ_à ¤¸à ¤ªà ¥Âà ¤Ÿà ¥â¡Ã ¤âà ¤¬à ¤°_à ¤âà ¤â¢Ã Â¥Âà ¤Ÿà ¥â¹Ã ¤¬à ¤°_à ¤¨à ¥â¹Ã ¤µà ¥Âà ¤¹à ¥â¡Ã ¤âà ¤¬à ¤°_à ¤¡à ¤¿à ¤¸à ¥â¡Ã ¤âà ¤¬à ¤°".split("_"), monthsShort: "à ¤Åà ¤¾à ¤¨à ¥â¡._
7556à ¤«à ¥â¡Ã ¤¬à ¥Âà ¤°à ¥Â._à ¤®à ¤¾à ¤°à ¥Âà ¤š._à ¤Âà ¤ªà ¥Âà ¤°à ¤¿._à ¤®à ¥â¡._à ¤Åà ¥âà ¤¨._à ¤Åà ¥Âà ¤²à ¥Ë._à ¤âà ¤â._à ¤¸à ¤ªà ¥Âà ¤Ÿà ¥â¡Ã ¤â._à ¤âà ¤â¢Ã Â¥Âà ¤Ÿà ¥â¹._à ¤¨à ¥â¹Ã ¤µà ¥Âà ¤¹à ¥â¡Ã ¤â._à ¤¡à ¤¿à ¤¸à ¥â¡Ã ¤â.".split("_"), monthsParseExact: !0, weekdays: "à ¤°à ¤µà ¤¿à ¤µà ¤¾à ¤°_à ¤¸à ¥â¹Ã ¤®à ¤µà ¤¾à ¤°_à ¤®à ¤âà ¤âà ¤³à ¤µà ¤¾à ¤°_à ¤¬à ¥Âà ¤§à ¤µà ¤¾à ¤°_à ¤âà ¥Âà ¤°à ¥âà ¤µà ¤¾à ¤°_à ¤¶à ¥Âà ¤â¢Ã Â¥Âà ¤°à ¤µà ¤¾à ¤°_à ¤¶à ¤¨à ¤¿à ¤µà ¤¾à ¤°".split("_"), weekdaysShort: "à ¤°à ¤µà ¤¿_à ¤¸à ¥â¹Ã ¤®_à ¤®à ¤âà ¤âà ¤³_à ¤¬à ¥Âà ¤§_à ¤âà ¥Âà ¤°à ¥â_à ¤¶à ¥Âà ¤â¢Ã Â¥Âà ¤°_à ¤¶à ¤¨à ¤¿".split("_"), weekdaysMin: "à ¤°_à ¤¸à ¥â¹_à ¤®à ¤â_à ¤¬à ¥Â_à ¤âà ¥Â_à ¤¶à ¥Â_à ¤¶".split("_"), longDateFormat: { LT: "A h:mm à ¤µà ¤¾à ¤Åà ¤¤à ¤¾", LTS: "A h:mm:ss à ¤µà ¤¾à ¤Åà ¤¤à ¤¾", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY, A h:mm à ¤µà ¤¾à ¤Åà ¤¤à ¤¾", LLLL: "dddd, D MMMM YYYY, A h:mm à ¤µà ¤¾à ¤Åà ¤¤à ¤¾" }, calendar: { sameDay: "[à ¤â à ¤Å] LT", nextDay: "[à ¤â°Ã ¤¦à ¥Âà ¤¯à ¤¾] LT", nextWeek: "dddd, LT", lastDay: "[à ¤â¢Ã ¤¾à ¤²] LT", lastWeek: "[à ¤®à ¤¾à ¤âà ¥â¬Ã ¤²] dddd, LT", sameElse: "L" }, relativeTime: { future: "%sà ¤®à ¤§à ¥Âà ¤¯à ¥â¡", past: "%sà ¤ªà ¥âà ¤°à ¥Âà ¤µà ¥â¬", s: relativeTimeMr, m: relativeTimeMr, mm: relativeTimeMr, h: relativeTimeMr, hh: relativeTimeMr, d: relativeTimeMr, dd: relativeTimeMr, M: relativeTimeMr, MM: relativeTimeMr, y: relativeTimeMr, yy: relativeTimeMr }, preparse: function(string) { return string.replace(/[à ¥§à ¥¨à ¥©à ¥ªà ¥«à ¥¬à ¥Âà ¥®à ¥¯à ¥¦]/g, function(match) { return mr__numberMap[match] }) }, postformat: function(string) { return string.replace(/\d/g, function(match) { return mr__symbolMap[match] }) }, meridiemParse: /à ¤°à ¤¾à ¤¤à ¥Âà ¤°à ¥â¬|à ¤¸à ¤â¢Ã ¤¾à ¤³à ¥â¬|à ¤¦à ¥Âà ¤ªà ¤¾à ¤°à ¥â¬|à ¤¸à ¤¾à ¤¯à ¤âà ¤â¢Ã ¤¾à ¤³à ¥â¬/, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "à ¤°à ¤¾à ¤¤à ¥Âà ¤°à ¥â¬" === meridiem ? hour < 4 ? hour : hour + 12 : "à ¤¸à ¤â¢Ã ¤¾à ¤³à ¥â¬" === meridiem ? hour : "à ¤¦à ¥Âà ¤ªà ¤¾à ¤°à ¥â¬" === meridiem ? hour >= 10 ? hour : hour + 12 : "à ¤¸à ¤¾à ¤¯à ¤âà ¤â¢Ã ¤¾à ¤³à ¥â¬" === meridiem ? hour + 12 : void 0 }, meridiem: function(hour, minute, isLower) { return hour < 4 ? "à ¤°à ¤¾à ¤¤à ¥Âà ¤°à ¥â¬" : hour < 10 ? "à ¤¸à ¤â¢Ã ¤¾à ¤³à ¥â¬" : hour < 17 ? "à ¤¦à ¥Âà ¤ªà ¤¾à ¤°à ¥â¬" : hour < 20 ? "à ¤¸à ¤¾à ¤¯à ¤âà ¤â¢Ã ¤¾à ¤³à ¥â¬" : "à ¤°à ¤¾à ¤¤à ¥Âà ¤°à ¥â¬" }, week: { dow: 0, doy: 6 } }), moment__default.defineLocale("ms-my", { months: "Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"), monthsShort: "Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"), weekdays: "Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"), weekdaysShort: "Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"), weekdaysMin: "Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"), longDateFormat: { LT: "HH.mm", LTS: "HH.mm.ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY [pukul] HH.mm", LLLL: "dddd, D MMMM YYYY [pukul] HH.mm" }, meridiemParse: /pagi|tengahari|petang|malam/, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "pagi" === meridiem ? hour : "tengahari" === meridiem ? hour >= 11 ? hour : hour + 12 : "petang" === meridiem || "malam" === meridiem ? hour + 12 : void 0 }, meridiem: function(hours, minutes, isLower) { return hours < 11 ? "pagi" : hours < 15 ? "tengahari" : hours < 19 ? "petang" : "malam" }, calendar: { sameDay: "[Hari ini pukul] LT", nextDay: "[Esok pukul] LT", nextWeek: "dddd [pukul] LT", lastDay: "[Kelmarin pukul] LT", lastWeek: "dddd [lepas pukul] LT", sameElse: "L" }, relativeTime: { future: "dalam %s", past: "%s yang lepas", s: "beberapa saat", m: "seminit", mm: "%d minit", h: "sejam", hh: "%d j
7556am", d: "sehari", dd: "%d hari", M: "sebulan", MM: "%d bulan", y: "setahun", yy: "%d tahun" }, week: { dow: 1, doy: 7 } }), moment__default.defineLocale("ms", { months: "Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"), monthsShort: "Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"), weekdays: "Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"), weekdaysShort: "Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"), weekdaysMin: "Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"), longDateFormat: { LT: "HH.mm", LTS: "HH.mm.ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY [pukul] HH.mm", LLLL: "dddd, D MMMM YYYY [pukul] HH.mm" }, meridiemParse: /pagi|tengahari|petang|malam/, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "pagi" === meridiem ? hour : "tengahari" === meridiem ? hour >= 11 ? hour : hour + 12 : "petang" === meridiem || "malam" === meridiem ? hour + 12 : void 0 }, meridiem: function(hours, minutes, isLower) { return hours < 11 ? "pagi" : hours < 15 ? "tengahari" : hours < 19 ? "petang" : "malam" }, calendar: { sameDay: "[Hari ini pukul] LT", nextDay: "[Esok pukul] LT", nextWeek: "dddd [pukul] LT", lastDay: "[Kelmarin pukul] LT", lastWeek: "dddd [lepas pukul] LT", sameElse: "L" }, relativeTime: { future: "dalam %s", past: "%s yang lepas", s: "beberapa saat", m: "seminit", mm: "%d minit", h: "sejam", hh: "%d jam", d: "sehari", dd: "%d hari", M: "sebulan", MM: "%d bulan", y: "setahun", yy: "%d tahun" }, week: { dow: 1, doy: 7 } }), { 1: "áÂÂ", 2: "áÂâ", 3: "Ã¡ÂÆ", 4: "áÂâ", 5: "áÂâ¦", 6: "áÂâ ", 7: "áÂâ¡", 8: "áÂË", 9: "áÂâ°", 0: "áÂâ¬" }), 7557 my__numberMap = { "áÂÂ": "1", "áÂâ": "2", "Ã¡ÂÆ": "3", "áÂâ": "4", "áÂâ¦": "5", "áÂâ ": "6", "áÂâ¡": "7", "áÂË": "8", "áÂâ°": "9", "áÂâ¬": "0" }, 7558 ne__symbolMap = (moment__default.defineLocale("my", { months: "áâ¬â¡Ã¡â¬âáâ¬ÂºÃ¡â¬âáâ¬Âáâ¬Â«Ã¡â¬âºÃ¡â¬Â®_áâ¬âáâ¬Â±Ã¡â¬âáâ¬Â±Ã¡â¬Â¬Ã¡â¬ÂºÃ¡â¬Âáâ¬Â«Ã¡â¬âºÃ¡â¬Â®_áâ¬â¢Ã¡â¬Âáâ¬Âº_áâ¬Â§Ã¡â¬â¢Ã¡â¬Â¼Ã¡â¬Â®_áâ¬â¢Ã¡â¬Â±_áâ¬â¡Ã¡â¬Â½Ã¡â¬âáâ¬Âº_áâ¬â¡Ã¡â¬Â°Ã¡â¬Åáâ¬Âáâ¬Â¯Ã¡â¬âáâ¬Âº_áâ¬Å¾Ã¡â¬Â¼Ã¡â¬âáâ¬Â¯Ã¡â¬Âáâ¬Âº_áâ¬â¦Ã¡â¬â¬Ã¡â¬ÂºÃ¡â¬Âáâ¬âáâ¬ÂºÃ¡â¬Ëáâ¬Â¬_áâ¬Â¡Ã¡â¬Â±Ã¡â¬Â¬Ã¡â¬â¬Ã¡â¬ÂºÃ¡â¬Âáâ¬Âáâ¬Â¯Ã¡â¬Ëáâ¬Â¬_áâ¬âáâ¬Âáâ¬Â¯Ã¡â¬Âáâ¬âáâ¬ÂºÃ¡â¬Ëáâ¬Â¬_áâ¬âáâ¬Â®Ã¡â¬â¡Ã¡â¬âáâ¬ÂºÃ¡â¬Ëáâ¬Â¬".split("_"), monthsShort: "áâ¬â¡Ã¡â¬âáâ¬Âº_áâ¬âáâ¬Â±_áâ¬â¢Ã¡â¬Âáâ¬Âº_áâ¬â¢Ã¡â¬Â¼Ã¡â¬Â®_áâ¬â¢Ã¡â¬Â±_áâ¬â¡Ã¡â¬Â½Ã¡â¬âáâ¬Âº_áâ¬Åáâ¬Âáâ¬Â¯Ã¡â¬âáâ¬Âº_áâ¬Å¾Ã¡â¬Â¼_áâ¬â¦Ã¡â¬â¬Ã¡â¬Âº_áâ¬Â¡Ã¡â¬Â±Ã¡â¬Â¬Ã¡â¬â¬Ã¡â¬Âº_áâ¬âáâ¬Âáâ¬Â¯_áâ¬âáâ¬Â®".split("_"), weekdays: "áâ¬Âáâ¬âáâ¬âáâ¬ÂºÃ¡â¬Â¹Ã¡â¬âáâ¬âáâ¬Â½Ã¡â¬Â±_áâ¬Âáâ¬âáâ¬âáâ¬ÂºÃ¡â¬Â¹Ã¡â¬Åáâ¬Â¬_áâ¬Â¡Ã¡â¬âáâ¬ÂºÃ¡â¬Â¹Ã¡â¬âáâ¬Â«_áâ¬âáâ¬Â¯Ã¡â¬âáâ¬Â¹Ã¡â¬âáâ¬Å¸Ã¡â¬Â°Ã¡â¬Â¸_áâ¬â¬Ã¡â¬Â¼Ã¡â¬Â¬Ã¡â¬Å¾Ã¡â¬â¢Ã¡â¬Âáâ¬Â±Ã¡â¬Â¸_áâ¬Å¾Ã¡â¬Â±Ã¡â¬Â¬Ã¡â¬â¬Ã¡â¬Â¼Ã¡â¬Â¬_áâ¬â¦Ã¡â¬âáâ¬Â±".split("_"), weekdaysShort: "áâ¬âáâ¬Â½Ã¡â¬Â±_áâ¬Åáâ¬Â¬_áâ¬âáâ¬Â«_áâ¬Å¸Ã¡â¬Â°Ã¡â¬Â¸_áâ¬â¬Ã¡â¬Â¼Ã¡â¬Â¬_áâ¬Å¾Ã¡â¬Â±Ã¡â¬Â¬_áâ¬âáâ¬Â±".split("_"), weekdaysMin: "áâ¬âáâ¬Â½Ã¡â¬Â±_áâ¬Åáâ¬Â¬_áâ¬âáâ¬Â«_áâ¬Å¸Ã¡â¬Â°Ã¡â¬Â¸_áâ¬â¬Ã¡â¬Â¼Ã¡â¬Â¬_áâ¬Å¾Ã¡â¬Â±Ã¡â¬Â¬_áâ¬âáâ¬Â±".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, calendar: { sameDay: "[áâ¬Å¡Ã¡â¬âáâ¬Â±.] LT [áâ¬â¢Ã¡â¬Â¾Ã¡â¬Â¬]", nextDay: "[áâ¬â¢Ã¡â¬âáâ¬â¬Ã¡â¬ÂºÃ¡â¬âáâ¬Â¼Ã¡â¬âáâ¬Âº] LT [áâ¬â¢Ã¡â¬Â¾Ã¡â¬Â¬]", nextWeek: "dddd LT [áâ¬â¢Ã¡â¬Â¾Ã¡â¬Â¬]", lastDay: "[áâ¬â¢Ã¡â¬âáâ¬Â±.áâ¬â¬] LT [áâ¬â¢Ã¡â¬Â¾Ã¡â¬Â¬]", lastWeek: "[áâ¬â¢Ã¡â¬Â¼Ã¡â¬Â®Ã¡â¬Â¸Ã¡â¬Âáâ¬Â²Ã¡â¬Â·Ã¡â¬Å¾Ã¡â¬Â±Ã¡â¬Â¬] dddd LT [áâ¬â¢Ã¡â¬Â¾Ã¡â¬Â¬]", sameElse: "L" }, relativeTime: { future: "áâ¬Åáâ¬Â¬Ã¡â¬â¢Ã¡â¬Å áâ¬ÂºÃ¡â¬Â· %s áâ¬â¢Ã¡â¬Â¾Ã¡â¬Â¬", past: "áâ¬Åáâ¬Â½Ã¡â¬âáâ¬ÂºÃ¡â¬Âáâ¬Â²Ã¡â¬Â·Ã¡â¬Å¾Ã¡â¬Â±Ã¡â¬Â¬ %s áâ¬â¬", s: "áâ¬â¦Ã¡â¬â¬Ã¡â¬Â¹Ã¡â¬â¬Ã¡â¬âáâ¬Âº.áâ¬Â¡Ã¡â¬âáâ¬Å áâ¬ÂºÃ¡â¬Â¸Ã¡â¬âáâ¬Å¡Ã¡â¬Âº", m: "áâ¬Âáâ¬â¦Ã¡â¬ÂºÃ¡â¬â¢Ã¡â¬Âáâ¬âáâ¬â¦Ã¡â¬Âº", mm: "%d áâ¬â¢Ã¡â¬Âáâ¬âáâ¬â¦Ã¡â¬Âº", h: "áâ¬Âáâ¬â¦Ã¡â¬ÂºÃ¡â¬âáâ¬Â¬Ã¡â¬âºÃ¡â¬Â®", hh: "%d áâ¬âáâ¬Â¬Ã¡â¬âºÃ¡â¬Â®", d: "áâ¬Âáâ¬â¦Ã¡â¬ÂºÃ¡â¬âºÃ¡â¬â¬Ã¡â¬Âº", dd: "%d áâ¬âºÃ¡â¬â¬Ã¡â¬Âº", M: "áâ¬Âáâ¬â¦Ã¡â¬ÂºÃ¡â¬Å", MM: "%d áâ¬Å", y: "áâ¬Âáâ¬â¦Ã¡â¬ÂºÃ¡â¬âáâ¬Â¾Ã¡â¬â¦Ã¡â¬Âº", yy: "%d áâ¬âáâ¬Â¾Ã¡â¬â¦Ã¡â¬Âº" }, preparse: function(string) { return string.replace(/[áÂÂáÂâÃ¡ÂÆÃ¡ÂâáÂâ¦Ã¡Ââ áÂâ¡Ã¡ÂËáÂâ°Ã¡Ââ¬]/g, function(match) { return my__numberMap[match] }) }, postformat: function(string) { return string.replace(/\d/g, function(match) { return my__symbolMap[match] }) }, week: { dow: 1, doy: 4 } }), moment__default.defineLocale("nb", { months: "januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"), monthsShort: "jan._feb._mars_april_mai_juni_juli_aug._sep._okt._nov._des.".split("_"), monthsParseExact: !0, weekdays: "
7558søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"), weekdaysShort: "sø._ma._ti._on._to._fr._lø.".split("_"), weekdaysMin: "sø_ma_ti_on_to_fr_lø".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY [kl.] HH:mm", LLLL: "dddd D. MMMM YYYY [kl.] HH:mm" }, calendar: { sameDay: "[i dag kl.] LT", nextDay: "[i morgen kl.] LT", nextWeek: "dddd [kl.] LT", lastDay: "[i gÃÂ¥r kl.] LT", lastWeek: "[forrige] dddd [kl.] LT", sameElse: "L" }, relativeTime: { future: "om %s", past: "%s siden", s: "noen sekunder", m: "ett minutt", mm: "%d minutter", h: "en time", hh: "%d timer", d: "en dag", dd: "%d dager", M: "en mÃÂ¥ned", MM: "%d mÃÂ¥neder", y: "ett ÃÂ¥r", yy: "%d ÃÂ¥r" }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), { 1: "à ¥§", 2: "à ¥¨", 3: "à ¥©", 4: "à ¥ª", 5: "à ¥«", 6: "à ¥¬", 7: "à ¥Â", 8: "à ¥®", 9: "à ¥¯", 0: "à ¥¦" }), 7559 ne__numberMap = { "à ¥§": "1", "à ¥¨": "2", "à ¥©": "3", "à ¥ª": "4", "à ¥«": "5", "à ¥¬": "6", "à ¥Â": "7", "à ¥®": "8", "à ¥¯": "9", "à ¥¦": "0" }, 7560 nl__monthsShortWithDots = (moment__default.defineLocale("ne", { months: "à ¤Åà ¤¨à ¤µà ¤°à ¥â¬_à ¤«à ¥â¡Ã ¤¬à ¥Âà ¤°à ¥Âà ¤µà ¤°à ¥â¬_à ¤®à ¤¾à ¤°à ¥Âà ¤š_à ¤â¦Ã ¤ªà ¥Âà ¤°à ¤¿à ¤²_à ¤®à ¤Ë_à ¤Åà ¥Âà ¤¨_à ¤Åà ¥Âà ¤²à ¤¾à ¤Ë_à ¤â¦Ã ¤âà ¤·à ¥Âà ¤Ÿ_à ¤¸à ¥â¡Ã ¤ªà ¥Âà ¤Ÿà ¥â¡Ã ¤®à ¥Âà ¤¬à ¤°_à ¤â¦Ã ¤â¢Ã Â¥Âà ¤Ÿà ¥â¹Ã ¤¬à ¤°_à ¤¨à ¥â¹Ã ¤Âà ¥â¡Ã ¤®à ¥Âà ¤¬à ¤°_à ¤¡à ¤¿à ¤¸à ¥â¡Ã ¤®à ¥Âà ¤¬à ¤°".split("_"), monthsShort: "à ¤Åà ¤¨._à ¤«à ¥â¡Ã ¤¬à ¥Âà ¤°à ¥Â._à ¤®à ¤¾à ¤°à ¥Âà ¤š_à ¤â¦Ã ¤ªà ¥Âà ¤°à ¤¿._à ¤®à ¤Ë_à ¤Åà ¥Âà ¤¨_à ¤Åà ¥Âà ¤²à ¤¾à ¤Ë._à ¤â¦Ã ¤â._à ¤¸à ¥â¡Ã ¤ªà ¥Âà ¤Ÿ._à ¤â¦Ã ¤â¢Ã Â¥Âà ¤Ÿà ¥â¹._à ¤¨à ¥â¹Ã ¤Âà ¥â¡._à ¤¡à ¤¿à ¤¸à ¥â¡.".split("_"), monthsParseExact: !0, weekdays: "à ¤â à ¤â¡Ã ¤¤à ¤¬à ¤¾à ¤°_à ¤¸à ¥â¹Ã ¤®à ¤¬à ¤¾à ¤°_à ¤®à ¤â¢Ã Â¥Âà ¤âà ¤²à ¤¬à ¤¾à ¤°_à ¤¬à ¥Âà ¤§à ¤¬à ¤¾à ¤°_à ¤¬à ¤¿à ¤¹à ¤¿à ¤¬à ¤¾à ¤°_à ¤¶à ¥Âà ¤â¢Ã Â¥Âà ¤°à ¤¬à ¤¾à ¤°_à ¤¶à ¤¨à ¤¿à ¤¬à ¤¾à ¤°".split("_"), weekdaysShort: "à ¤â à ¤â¡Ã ¤¤._à ¤¸à ¥â¹Ã ¤®._à ¤®à ¤â¢Ã Â¥Âà ¤âà ¤²._à ¤¬à ¥Âà ¤§._à ¤¬à ¤¿à ¤¹à ¤¿._à ¤¶à ¥Âà ¤â¢Ã Â¥Âà ¤°._à ¤¶à ¤¨à ¤¿.".split("_"), weekdaysMin: "à ¤â ._à ¤¸à ¥â¹._à ¤®à ¤â._à ¤¬à ¥Â._à ¤¬à ¤¿._à ¤¶à ¥Â._à ¤¶.".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "Aà ¤â¢Ã ¥⹠h:mm à ¤¬à ¤Åà ¥â¡", LTS: "Aà ¤â¢Ã ¥⹠h:mm:ss à ¤¬à ¤Åà ¥â¡", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY, Aà ¤â¢Ã ¥⹠h:mm à ¤¬à ¤Åà ¥â¡", LLLL: "dddd, D MMMM YYYY, Aà ¤â¢Ã ¥⹠h:mm à ¤¬à ¤Åà ¥â¡" }, preparse: function(string) { return string.replace(/[à ¥§à ¥¨à ¥©à ¥ªà ¥«à ¥¬à ¥Âà ¥®à ¥¯à ¥¦]/g, function(match) { return ne__numberMap[match] }) }, postformat: function(string) { return string.replace(/\d/g, function(match) { return ne__symbolMap[match] }) }, meridiemParse: /à ¤°à ¤¾à ¤¤à ¤¿|à ¤¬à ¤¿à ¤¹à ¤¾à ¤¨|à ¤¦à ¤¿à ¤â°Ã ¤Âà ¤¸à ¥â¹|à ¤¸à ¤¾à ¤Âà ¤Â/, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "à ¤°à ¤¾à ¤¤à ¤¿" === meridiem ? hour < 4 ? hour : hour + 12 : "à ¤¬à ¤¿à ¤¹à ¤¾à ¤¨" === meridiem ? hour : "à ¤¦à ¤¿à ¤â°Ã ¤Âà ¤¸à ¥â¹" === meridiem ? hour >= 10 ? hour : hour + 12 : "à ¤¸à ¤¾à ¤Âà ¤Â" === meridiem ? hour + 12 : void 0 }, meridiem: function(hour, minute, isLower) { return hour < 3 ? "à ¤°à ¤¾à ¤¤à ¤¿" : hour < 12 ? "à ¤¬à ¤¿à ¤¹à ¤¾à ¤¨" : hour < 16 ? "à ¤¦à ¤¿à ¤â°Ã ¤Âà ¤¸à ¥â¹" : hour < 20 ? "à ¤¸à ¤¾à ¤Âà ¤Â" : "à ¤°à ¤¾à ¤¤à ¤¿" }, calendar: { sameDay: "[à ¤â à ¤Å] LT", nextDay: "[à ¤Âà ¥â¹Ã ¤²à ¤¿] LT", nextWeek: "[à ¤â à ¤â°Ã ¤Âà ¤¦à ¥â¹] dddd[,] LT", lastDay: "[à ¤¹à ¤¿à ¤Åà ¥â¹] LT", lastWeek: "[à ¤âà ¤Âà ¤â¢Ã Â¥â¹] dddd[,] LT", sameElse: "L" }, relativeTime: { future: "%sà ¤®à ¤¾", past: "%s à ¤â¦Ã ¤âà ¤¾à ¤¡à ¤¿", s: "à ¤â¢Ã Â¥â¡Ã ¤¹à ¥⬠à ¤â¢Ã Â¥Âà ¤·à ¤£", m: "à ¤Âà ¤⢠à ¤®à ¤¿à ¤¨à ¥â¡Ã ¤Ÿ", mm: "%d à ¤®à ¤¿à ¤¨à ¥â¡Ã ¤Ÿ", h: "à ¤Âà ¤⢠à ¤Ëà ¤£à ¥Âà ¤Ÿà ¤¾", hh: "%d à ¤Ëà ¤£à ¥Âà ¤Ÿà ¤¾", d: "à ¤Âà ¤⢠à ¤¦à ¤¿à ¤¨", dd: "%d à ¤¦à ¤¿à ¤¨", M: "à ¤Âà ¤⢠à ¤®à ¤¹à ¤¿à ¤¨à ¤¾", MM: "%d à ¤®à ¤¹à ¤¿à ¤¨à ¤¾", y: "à ¤Âà ¤⢠à ¤¬à ¤°à ¥Âà ¤·", yy: "%d à ¤¬à ¤°à ¥Âà ¤·" }, week: { dow: 0, doy: 6 } }), "jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_")), 7561 nl__monthsShortWithoutDots = "jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"), 7562 nl__monthsParse = [/^jan/i, /^feb/i, /^maart|mrt.?$/i, /^apr/i, /^mei$/i, /^jun[i.]?$/i, /^jul[i.]?$/i, /^aug/i, /^sep/i, /^okt/i, /^nov/i, /^dec/i], 7563 nl__monthsRegex = /^(januari|februari|maart|april|mei|april|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,
7564 pa_in__symbolMap = (moment__default.defineLocale("nl", { months: "januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"), monthsShort: function(m, format) { return /-MMM-/.test(format) ? nl__monthsShortWithoutDots[m.month()] : nl__monthsShortWithDots[m.month()] }, monthsRegex: nl__monthsRegex, monthsShortRegex: nl__monthsRegex, monthsStrictRegex: /^(januari|februari|maart|mei|ju[nl]i|april|augustus|september|oktober|november|december)/i, monthsShortStrictRegex: /^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i, monthsParse: nl__monthsParse, longMonthsParse: nl__monthsParse, shortMonthsParse: nl__monthsParse, weekdays: "zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"), weekdaysShort: "zo._ma._di._wo._do._vr._za.".split("_"), weekdaysMin: "Zo_Ma_Di_Wo_Do_Vr_Za".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD-MM-YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, calendar: { sameDay: "[vandaag om] LT", nextDay: "[morgen om] LT", nextWeek: "dddd [om] LT", lastDay: "[gisteren om] LT", lastWeek: "[afgelopen] dddd [om] LT", sameElse: "L" }, relativeTime: { future: "over %s", past: "%s geleden", s: "een paar seconden", m: "één minuut", mm: "%d minuten", h: "één uur", hh: "%d uur", d: "één dag", dd: "%d dagen", M: "één maand", MM: "%d maanden", y: "één jaar", yy: "%d jaar" }, ordinalParse: /\d{1,2}(ste|de)/, ordinal: function(number) { return number + (1 === number || 8 === number || number >= 20 ? "ste" : "de") }, week: { dow: 1, doy: 4 } }), moment__default.defineLocale("nn", { months: "januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"), monthsShort: "jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"), weekdays: "sundag_mÃÂ¥ndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"), weekdaysShort: "sun_mÃÂ¥n_tys_ons_tor_fre_lau".split("_"), weekdaysMin: "su_mÃÂ¥_ty_on_to_fr_lø".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY [kl.] H:mm", LLLL: "dddd D. MMMM YYYY [kl.] HH:mm" }, calendar: { sameDay: "[I dag klokka] LT", nextDay: "[I morgon klokka] LT", nextWeek: "dddd [klokka] LT", lastDay: "[I gÃÂ¥r klokka] LT", lastWeek: "[FøregÃÂ¥ande] dddd [klokka] LT", sameElse: "L" }, relativeTime: { future: "om %s", past: "%s sidan", s: "nokre sekund", m: "eit minutt", mm: "%d minutt", h: "ein time", hh: "%d timar", d: "ein dag", dd: "%d dagar", M: "ein mÃÂ¥nad", MM: "%d mÃÂ¥nader", y: "eit ÃÂ¥r", yy: "%d ÃÂ¥r" }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), { 1: "à ©§", 2: "à ©¨", 3: "à ©©", 4: "à ©ª", 5: "à ©«", 6: "à ©¬", 7: "à ©Â", 8: "à ©®", 9: "à ©¯", 0: "à ©¦" }), 7565 pa_in__numberMap = { "à ©§": "1", "à ©¨": "2", "à ©©": "3", "à ©ª": "4", "à ©«": "5", "à ©¬": "6", "à ©Â": "7", "à ©®": "8", "à ©¯": "9", "à ©¦": "0" }, 7566 monthsNominative = (moment__default.defineLocale("pa-in", { months: "à ¨Åà ¨¨à ¨µà ¨°à ©â¬_à ¨«à ¨¼à ¨°à ¨µà ¨°à ©â¬_à ¨®à ¨¾à ¨°à ¨š_à ¨â¦Ã ¨ªà ©Âà ¨°à ©Ëà ¨²_à ¨®à ¨Ë_à ¨Åà ©âà ¨¨_à ¨Åà ©Âà ¨²à ¨¾à ¨Ë_à ¨â¦Ã ¨âà ¨¸à ¨¤_à ¨¸à ¨¤à ©°à ¨¬à ¨°_à ¨â¦Ã ¨â¢Ã ¨¤à ©âà ¨¬à ¨°_à ¨¨à ¨µà ©°à ¨¬à ¨°_à ¨¦à ¨¸à ©°à ¨¬à ¨°".split("_"), monthsShort: "à ¨Åà ¨¨à ¨µà ¨°à ©â¬_à ¨«à ¨¼à ¨°à ¨µà ¨°à ©â¬_à ¨®à ¨¾à ¨°à ¨š_à ¨â¦Ã ¨ªà ©Âà ¨°à ©Ëà ¨²_à ¨®à ¨Ë_à ¨Åà ©âà ¨¨_à ¨Åà ©Âà ¨²à ¨¾à ¨Ë_à ¨â¦Ã ¨âà ¨¸à ¨¤_à ¨¸à ¨¤à ©°à ¨¬à ¨°_à ¨â¦Ã ¨â¢Ã ¨¤à ©âà ¨¬à ¨°_à ¨¨à ¨µà ©°à ¨¬à ¨°_à ¨¦à ¨¸à ©°à ¨¬à ¨°".split("_"), weekdays: "à ¨Âà ¨¤à ¨µà ¨¾à ¨°_à ¨¸à ©â¹Ã ¨®à ¨µà ¨¾à ¨°_à ¨®à ©°à ¨âà ¨²à ¨µà ¨¾à ¨°_à ¨¬à ©Âà ¨§à ¨µà ¨¾à ¨°_à ¨µà ©â¬Ã ¨°à ¨µà ¨¾à ¨°_à ¨¸à ¨¼à ©Âà ©±à ¨â¢Ã ¨°à ¨µà ¨¾à ¨°_à ¨¸à ¨¼à ¨¨à ©â¬Ã ¨šà ¨°à ¨µà ¨¾à ¨°".split("_"), weekdaysShort: "à ¨Âà ¨¤_à ¨¸à ©â¹Ã ¨®_à ¨®à ©°à ¨âà ¨²_à ¨¬à ©Âà ¨§_à ¨µà ©â¬Ã ¨°_à ¨¸à ¨¼à ©Âà ¨â¢Ã ¨°_à ¨¸à ¨¼à ¨¨à ©â¬".split("_"), weekdaysMin: "à ¨Âà ¨¤_à ¨¸à ©â¹Ã ¨®_à ¨®à ©°à ¨âà ¨²_à ¨¬à ©Âà ¨§_à ¨µà ©â¬Ã ¨°_à ¨¸à ¨¼à ©Âà ¨â¢Ã ¨°_à ¨¸à ¨¼à ¨¨à ©â¬".split("_"), longDateFormat: { LT: "A h:mm à ¨µà ¨Åà ©â¡", LTS: "A h:mm:ss à ¨µà ¨Åà ©â¡", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY, A h:mm à ¨µà ¨Åà ©â¡", LLLL: "dddd, D MMMM YYYY, A h:mm à ¨µà ¨Åà ©â¡" }, calendar: { sameDay: "[à ¨â¦Ã ¨Å] LT", nextDay: "[à ¨â¢Ã ¨²] LT", nextWeek: "dddd, LT", lastDay: "[à ¨â¢Ã ¨²] LT", lastWeek: "[à ¨ªà ¨¿à ¨âºÃ ¨²à ©â¡] dddd, LT", sameElse: "L" }, relativeTime: { future: "%s à ¨µà ¨¿à ©±à ¨š", past: "%s à ¨ªà ¨¿à ¨âºÃ ¨²à ©â¡", s: "à ¨â¢Ã ©Âà ¨ à ¨¸à ¨â¢Ã ¨¿à ©°à ¨Ÿ", m: "à ¨â¡Ã ¨⢠à ¨®à ¨¿à ©°à ¨Ÿ", mm: "%d à ¨®à ¨¿à ©°à ¨Ÿ", h: "à ¨â¡Ã ©±à ¨⢠à ¨Ëà ©°à ¨Ÿà ¨¾", hh: "%d à ¨Ëà ©°à ¨Ÿà ©â¡", d: "à ¨â¡Ã ©±à ¨⢠à ¨¦à ¨¿à ¨¨", dd: "%d à ¨¦à ¨¿à ¨¨", M: "à ¨â¡Ã ©±à ¨⢠à ¨®à ¨¹à ©â¬Ã ¨¨à ¨¾", MM: "%d à ¨®à ¨¹à ©â¬Ã ¨¨à ©â¡", y: "à ¨â¡Ã ©±à ¨⢠à ¨¸à ¨¾à ¨²", yy: "%d à ¨¸à ¨¾à ¨²" }, preparse: function(string) { return string.replace(/[à ©§à ©¨à ©©à ©ªà ©«à ©¬à ©Âà ©®à ©¯à ©¦]/g, function(match) { return pa_in__numberMap[match] }) }, postformat: function(string) { return string.replace(/\d/g, function(match) { return pa_in__symbolMap[match] }) }, meridiemParse: /à ¨°à ¨¾à ¨¤|à ¨¸à ¨µà ©â¡Ã ¨°|à ¨¦à ©Âà ¨ªà ¨¹à ¨¿à ¨°|à ¨¸à ¨¼à ¨¾à ¨®/, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "à ¨°à ¨¾à ¨¤" === meridiem ? hour < 4 ? hour : hour + 12 : "à ¨¸à ¨µà ©â¡Ã ¨°" === meridiem ? hour : "à ¨¦à ©Âà ¨ªà ¨¹à ¨¿à ¨°" === meridiem ? hour >= 10 ? hour : hour + 12 : "à ¨¸à ¨¼à ¨¾à ¨®" === meridiem ? hour + 12 : void 0 }, meridiem: function(hour, minute, isLower) { return hour < 4 ? "à ¨°à ¨¾à ¨¤" : hour < 10 ? "à ¨¸à ¨µà ©â¡Ã ¨°" : hour < 17 ? "à ¨¦à ©Âà ¨ªà ¨¹à ¨¿à ¨°" : hour < 20 ? "à ¨¸à ¨¼à ¨¾à ¨®" : "à ¨°à ¨¾à ¨¤" }, week: { dow: 0, doy: 6 } }), "styczeà â_luty_marzec_kwiecieà â_maj_czerwiec_lipiec_sierpieà â_wrzesieà â_paà ºdziernik_listopad_grudzieà â".split("_")), 7567 monthsSubjective = "stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_wrzeà âºnia_paà ºdziernika_listopada_grudnia".split("_"), 7568 ru__monthsParse = (moment__default.defineLocale("pl", { 7569 months: function(momentToFormat, format) { return "" === format ? "(" + monthsSubjective[momentToFormat.month()] + "|" + monthsNominative[momentToFormat.month()] + ")" : /D MMMM/.test(format) ? monthsSubjective[momentToFormat.month()] : monthsNominative[momentToFormat.month()] }, 7570 monthsShort: "sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paà º_lis_gru".split("_"), 7571 weekdays: "niedziela_poniedziaà âek_wtorek_à âºroda_czwartek_piÃâ¦tek_sobota".split("_"), 7572 weekdaysShort: "nie_pon_wt_à âºr_czw_pt_sb".split("_"), 7573 weekdaysMin: "Nd_Pn_Wt_à šr_Cz_Pt_So".split("_"), 7574 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, 7575 calendar: { 7576 sameDay: "[Dzià ⺠o] LT", 7577 nextDay: "[Jutro o] LT", 7578 nextWeek: "[W] dddd [o] LT", 7579 lastDay: "[Wczoraj o] LT", 7580 lastWeek: function() { 7581 switch (this.day()) { 7582 case 0: 7583 return "[W zeszà âÃ⦠niedzielÃ⢠o] LT"; 7584 case 3: 7585 return "[W zeszà âÃ⦠à âºrodÃ⢠o] LT"; 7586 case 6: 7587 return "[W zeszà âÃ⦠sobotÃ⢠o] LT"; 7588 default: 7589 return "[W zeszà ây] dddd [o] LT" 7590 } 7591 }, 7592 sameElse: "L" 7593 }, 7594 relativeTime: { future: "za %s", past: "%s temu", s: "kilka sekund", m: pl__translate, mm: pl__translate, h: pl__translate, hh: pl__translate, d: "1 dzieà â", dd: "%d dni", M: "miesiÃâ¦c", MM: pl__translate, y: "rok", yy: pl__translate }, 7595 ordinalParse: /\d{1,2}\./, 7596 ordinal: "%d.", 7597 week: { dow: 1, doy: 4 } 7598 }), moment__default.defineLocale("pt-br", { months: "Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"), monthsShort: "Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"), weekdays: "Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".
7598split("_"), weekdaysShort: "Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"), weekdaysMin: "Dom_2ê_3ê_4ê_5ê_6ê_Sáb".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D [de] MMMM [de] YYYY", LLL: "D [de] MMMM [de] YYYY [à s] HH:mm", LLLL: "dddd, D [de] MMMM [de] YYYY [à s] HH:mm" }, calendar: { sameDay: "[Hoje à s] LT", nextDay: "[Amanhã à s] LT", nextWeek: "dddd [à s] LT", lastDay: "[Ontem à s] LT", lastWeek: function() { return 0 === this.day() || 6 === this.day() ? "[ÃÅ¡ltimo] dddd [à s] LT" : "[ÃÅ¡ltima] dddd [à s] LT" }, sameElse: "L" }, relativeTime: { future: "em %s", past: "%s atrás", s: "poucos segundos", m: "um minuto", mm: "%d minutos", h: "uma hora", hh: "%d horas", d: "um dia", dd: "%d dias", M: "um mês", MM: "%d meses", y: "um ano", yy: "%d anos" }, ordinalParse: /\d{1,2}ú/, ordinal: "%dú" }), moment__default.defineLocale("pt", { months: "Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"), monthsShort: "Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"), weekdays: "Domingo_Segunda-Feira_Terça-Feira_Quarta-Feira_Quinta-Feira_Sexta-Feira_Sábado".split("_"), weekdaysShort: "Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"), weekdaysMin: "Dom_2ê_3ê_4ê_5ê_6ê_Sáb".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D [de] MMMM [de] YYYY", LLL: "D [de] MMMM [de] YYYY HH:mm", LLLL: "dddd, D [de] MMMM [de] YYYY HH:mm" }, calendar: { sameDay: "[Hoje à s] LT", nextDay: "[Amanhã à s] LT", nextWeek: "dddd [à s] LT", lastDay: "[Ontem à s] LT", lastWeek: function() { return 0 === this.day() || 6 === this.day() ? "[ÃÅ¡ltimo] dddd [à s] LT" : "[ÃÅ¡ltima] dddd [à s] LT" }, sameElse: "L" }, relativeTime: { future: "em %s", past: "há %s", s: "segundos", m: "um minuto", mm: "%d minutos", h: "uma hora", hh: "%d horas", d: "um dia", dd: "%d dias", M: "um mês", MM: "%d meses", y: "um ano", yy: "%d anos" }, ordinalParse: /\d{1,2}ú/, ordinal: "%dú", week: { dow: 1, doy: 4 } }), moment__default.defineLocale("ro", { months: "ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"), monthsShort: "ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"), monthsParseExact: !0, weekdays: "duminicÃÆ_luni_marÃâºi_miercuri_joi_vineri_sâmbÃÆtÃÆ".split("_"), weekdaysShort: "Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"), weekdaysMin: "Du_Lu_Ma_Mi_Jo_Vi_Sâ".split("_"), longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY H:mm", LLLL: "dddd, D MMMM YYYY H:mm" }, calendar: { sameDay: "[azi la] LT", nextDay: "[mâine la] LT", nextWeek: "dddd [la] LT", lastDay: "[ieri la] LT", lastWeek: "[fosta] dddd [la] LT", sameElse: "L" }, relativeTime: { future: "peste %s", past: "%s în urmÃÆ", s: "câteva secunde", m: "un minut", mm: ro__relativeTimeWithPlural, h: "o orÃÆ", hh: ro__relativeTimeWithPlural, d: "o zi", dd: ro__relativeTimeWithPlural, M: "o lunÃÆ", MM: ro__relativeTimeWithPlural, y: "un an", yy: ro__relativeTimeWithPlural }, week: { dow: 1, doy: 7 } }), [/^ÃÂýò/i, /^Ãâõò/i, /^üðÃâ¬/i, /^ðÿÃâ¬/i, /^üð[ùÃÂ]/i, /^øÎý/i, /^øÎû/i, /^ðòó/i, /^ÃÂõý/i, /^þúÃâ/i, /^ýþÃÂ/i, /^ôõú/i]), 7599 sk__months = (moment__default.defineLocale("ru", { 7600 months: { format: "ÃÂýòðÃâ¬ÃÂ_ÃâõòÃâ¬Ã°Ã»ÃÂ_üðÃâ¬Ãâð_ðÿÃâ¬ÃµÃ»ÃÂ_üðÃÂ_øÎýÃÂ_øÎûÃÂ_ðòÃÂ³ÃÆÃÂÃâð_ÃÂõýÃâÃÂñÃâ¬ÃÂ_þúÃâÃÂñÃâ¬ÃÂ_ýþÃÂñÃâ¬ÃÂ_ôõúðñÃâ¬ÃÂ".split("_"), standalone: "ÃÂýòðÃâ¬ÃÅ_ÃâõòÃâ¬Ã°Ã»ÃÅ_üðÃâ¬Ãâ_ðÿÃâ¬ÃµÃ»ÃÅ_üðù_øÎýÃÅ_øÎûÃÅ_ðòÃÂ³ÃÆÃÂÃâ_ÃÂõýÃâÃÂñÃâ¬ÃÅ_þúÃâÃÂñÃâ¬ÃÅ_ýþÃÂñÃâ¬ÃÅ_ôõúðñÃâ¬ÃÅ".split("_") }, 7601 monthsShort: { format: "ÃÂýò._ÃâõòÃâ¬._üðÃâ¬._ðÿÃâ¬._üðÃÂ_øÎýÃÂ_øÎûÃÂ_ðòó._ÃÂõýÃâ._þúÃâ._ýþÃÂñ._ôõú.".split("_"), standalone: "ÃÂýò._ÃâõòÃâ¬._üðÃâ¬Ãâ_ðÿÃâ¬._üðù_øÎýÃÅ_øÎûÃÅ_ðòó._ÃÂõýÃâ._þúÃâ._ýþÃÂñ._ôõú.".split("_") }, 7602 weekdays: { standalone: "òþÃÂúÃâ¬ÃµÃÂõýÃÅõ_ÿþýõôõûÃÅýøú_òÃâþÃâ¬Ã½Ã¸Ãº_ÃÂÃâ¬ÃµÃ´Ã°_
vendor: 6,822 bytes, lines 7602-7670
7602Ãâ¡ÃµÃâòõÃâ¬Ã³_ÿÃÂÃâýøÃâ ð_ÃÂÃÆÃ±Ã±Ã¾Ãâð".split("_"), format: "òþÃÂúÃâ¬ÃµÃÂõýÃÅõ_ÿþýõôõûÃÅýøú_òÃâþÃâ¬Ã½Ã¸Ãº_ÃÂÃâ¬ÃµÃÂ´ÃÆ_Ãâ¡ÃµÃâòõÃâ¬Ã³_ÿÃÂÃâýøÃâ ÃÆ_ÃÂÃÆÃ±Ã±Ã¾ÃâÃÆ".split("_"), isFormat: /\[ ?[Ãâò] ?(?:ÿÃâ¬Ã¾ÃËÃÂ»ÃÆÃŽ|ÃÂûõÃÂ´ÃÆÃŽÃâ°ÃÆÃŽ|ÃÂÃâÃÆ)? ?\] ?dddd/ }, 7603 weekdaysShort: "òÃÂ_ÿý_òÃâ_ÃÂÃâ¬_Ãâ¡Ãâ_ÿÃâ_ÃÂñ".split("_"), 7604 weekdaysMin: "òÃÂ_ÿý_òÃâ_ÃÂÃâ¬_Ãâ¡Ãâ_ÿÃâ_ÃÂñ".split("_"), 7605 monthsParse: ru__monthsParse, 7606 longMonthsParse: ru__monthsParse, 7607 shortMonthsParse: ru__monthsParse, 7608 monthsRegex: /^(ÃÂýòðÃâ¬[ÃÅÃÂ]|ÃÂýò\.?|ÃâõòÃâ¬Ã°Ã»[ÃÅÃÂ]|ÃâõòÃâ¬?\.?|üðÃâ¬Ãâð?|üðÃâ¬\.?|ðÿÃâ¬ÃµÃ»[ÃÅÃÂ]|ðÿÃâ¬\.?|üð[ùÃÂ]|øÎý[ÃÅÃÂ]|øÎý\.?|øÎû[ÃÅÃÂ]|øÎû\.?|ðòÃÂ³ÃÆÃÂÃâð?|ðòó\.?|ÃÂõýÃâÃÂñÃâ¬[ÃÅÃÂ]|ÃÂõýÃâ?\.?|þúÃâÃÂñÃâ¬[ÃÅÃÂ]|þúÃâ\.?|ýþÃÂñÃâ¬[ÃÅÃÂ]|ýþÃÂñ?\.?|ôõúðñÃâ¬[ÃÅÃÂ]|ôõú\.?)/i, 7609 monthsShortRegex: /^(ÃÂýòðÃâ¬[ÃÅÃÂ]|ÃÂýò\.?|ÃâõòÃâ¬Ã°Ã»[ÃÅÃÂ]|ÃâõòÃâ¬?\.?|üðÃâ¬Ãâð?|üðÃâ¬\.?|ðÿÃâ¬ÃµÃ»[ÃÅÃÂ]|ðÿÃâ¬\.?|üð[ùÃÂ]|øÎý[ÃÅÃÂ]|øÎý\.?|øÎû[ÃÅÃÂ]|øÎû\.?|ðòÃÂ³ÃÆÃÂÃâð?|ðòó\.?|ÃÂõýÃâÃÂñÃâ¬[ÃÅÃÂ]|ÃÂõýÃâ?\.?|þúÃâÃÂñÃâ¬[ÃÅÃÂ]|þúÃâ\.?|ýþÃÂñÃâ¬[ÃÅÃÂ]|ýþÃÂñ?\.?|ôõúðñÃâ¬[ÃÅÃÂ]|ôõú\.?)/i, 7610 monthsStrictRegex: /^(ÃÂýòðÃâ¬[ÃÂÃÅ]|ÃâõòÃâ¬Ã°Ã»[ÃÂÃÅ]|üðÃâ¬Ãâð?|ðÿÃâ¬ÃµÃ»[ÃÂÃÅ]|üð[ÃÂù]|øÎý[ÃÂÃÅ]|øÎû[ÃÂÃÅ]|ðòÃÂ³ÃÆÃÂÃâð?|ÃÂõýÃâÃÂñÃâ¬[ÃÂÃÅ]|þúÃâÃÂñÃâ¬[ÃÂÃÅ]|ýþÃÂñÃâ¬[ÃÂÃÅ]|ôõúðñÃâ¬[ÃÂÃÅ])/i, 7611 monthsShortStrictRegex: /^(ÃÂýò\.|ÃâõòÃâ¬?\.|üðÃâ¬[Ãâ.]|ðÿÃâ¬\.|üð[ÃÂù]|øÎý[ÃÅÃÂ.]|øÎû[ÃÅÃÂ.]|ðòó\.|ÃÂõýÃâ?\.|þúÃâ\.|ýþÃÂñ?\.|ôõú\.)/i, 7612 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY ó.", LLL: "D MMMM YYYY ó., HH:mm", LLLL: "dddd, D MMMM YYYY ó., HH:mm" }, 7613 calendar: { 7614 sameDay: "[áõóþôýàò] LT", 7615 nextDay: "[ÃâðòÃâÃâ¬Ã° ò] LT", 7616 lastDay: "[ÃâÃâ¡ÃµÃâ¬Ã° ò] LT", 7617 nextWeek: function(now) { 7618 if (now.week() === this.week()) return 2 === this.day() ? "[Ãâþ] dddd [ò] LT" : "[Ãâ] dddd [ò] LT"; 7619 switch (this.day()) { 7620 case 0: 7621 return "[Ãâ ÃÂûõÃÂ´ÃÆÃŽÃâ°ÃµÃµ] dddd [ò] LT"; 7622 case 1: 7623 case 2: 7624 case 4: 7625 return "[Ãâ ÃÂûõÃÂ´ÃÆÃŽÃâ°Ã¸Ã¹] dddd [ò] LT"; 7626 case 3: 7627 case 5: 7628 case 6: 7629 return "[Ãâ ÃÂûõÃÂ´ÃÆÃŽÃâ°ÃÆÃŽ] dddd [ò] LT" 7630 } 7631 }, 7632 lastWeek: function(now) { 7633 if (now.week() === this.week()) return 2 === this.day() ? "[Ãâþ] dddd [ò] LT" : "[Ãâ] dddd [ò] LT"; 7634 switch (this.day()) { 7635 case 0: 7636 return "[Ãâ ÿÃâ¬Ã¾ÃËûþõ] dddd [ò] LT"; 7637 case 1: 7638 case 2: 7639 case 4: 7640 return "[Ãâ ÿÃâ¬Ã¾ÃËûÃâ¹Ã¹] dddd [ò] LT"; 7641 case 3: 7642 case 5: 7643 case 6: 7644 return "[Ãâ ÿÃâ¬Ã¾ÃËÃÂ»ÃÆÃŽ] dddd [ò] LT" 7645 } 7646 }, 7647 sameElse: "L" 7648 }, 7649 relativeTime: { future: "Ãâ¡ÃµÃâ¬ÃµÃ· %s", past: "%s ýð÷ðô", s: "ýõÃÂúþûÃÅúþ ÃÂõÃÂºÃÆÃ½Ã´", m: ru__relativeTimeWithPlural, mm: ru__relativeTimeWithPlural, h: "Ãâ¡Ã°ÃÂ", hh: ru__relativeTimeWithPlural, d: "ôõýÃÅ", dd: ru__relativeTimeWithPlural, M: "üõÃÂÃÂÃâ ", MM: ru__relativeTimeWithPlural, y: "óþô", yy: ru__relativeTimeWithPlural }, 7650 meridiemParse: /ýþÃâ¡Ã¸|ÃÆÃâÃâ¬Ã°|ôýÃÂ|òõÃâ¡ÃµÃâ¬Ã°/i, 7651 isPM: function(input) { return /^(ôýÃÂ|òõÃâ¡ÃµÃâ¬Ã°)$/.test(input) }, 7652 meridiem: function(hour, minute, isLower) { return hour < 4 ? "ýþÃâ¡Ã¸" : hour < 12 ? "ÃÆÃâÃâ¬Ã°" : hour < 17 ? "ôýÃÂ" : "òõÃâ¡ÃµÃâ¬Ã°" }, 7653 ordinalParse: /\d{1,2}-(ù|óþ|ÃÂ)/, 7654 ordinal: function(number, period) { 7655 switch (period) { 7656 case "M": 7657 case "d": 7658 case "DDD": 7659 return number + "-ù"; 7660 case "D": 7661 return number + "-óþ"; 7662 case "w": 7663 case "W": 7664 return number + "-ÃÂ"; 7665 default: 7666 return number 7667 } 7668 }, 7669 week: { dow: 1, doy: 7 } 7670 }), moment__default.defineLocale("se", { months: "oÃâÃâajagemánnu_guovvamánnu_njukÃÂamánnu_cuoà â¹ománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_ÃÂakÃÂamánnu_golggotmánnu_skábmamánnu_juovlamánnu".split("_"), monthsShort: "oÃâÃâj_guov_njuk_cuo_mies_geas_suoi_borg_ÃÂakÃÂ_golg_skáb_juov".split("_"), weekdays: "
7670sotnabeaivi_vuossárga_maà â¹Ã â¹ebárga_gaskavahkku_duorastat_bearjadat_lávvardat".split("_"), weekdaysShort: "sotn_vuos_maà â¹_gask_duor_bear_láv".split("_"), weekdaysMin: "s_v_m_g_d_b_L".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "MMMM D. [b.] YYYY", LLL: "MMMM D. [b.] YYYY [ti.] HH:mm", LLLL: "dddd, MMMM D. [b.] YYYY [ti.] HH:mm" }, calendar: { sameDay: "[otne ti] LT", nextDay: "[ihttin ti] LT", nextWeek: "dddd [ti] LT", lastDay: "[ikte ti] LT", lastWeek: "[ovddit] dddd [ti] LT", sameElse: "L" }, relativeTime: { future: "%s geaà ¾es", past: "maà â¹it %s", s: "moadde sekunddat", m: "okta minuhta", mm: "%d minuhtat", h: "okta diimmu", hh: "%d diimmut", d: "okta beaivi", dd: "%d beaivvit", M: "okta mánnu", MM: "%d mánut", y: "okta jahki", yy: "%d jagit" }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), moment__default.defineLocale("si", { months: "à ¶¢à ¶±à ·â¬Ã ·Âà ¶»à ·â_à ¶´à ·â¢Ã ¶¶à ¶»à ·â¬Ã ·Âà ¶»à ·â_à ¶¸à ·Âà ¶»à ·Šà ¶Âà ·â_à ¶â¦Ã ¶´à ·Šââ¬Âà ¶»à ·šà ¶½à ·Š_à ¶¸à ·Âà ¶ºà ·â_à ¶¢à ·âà ¶±à ·â_à ¶¢à ·âà ¶½à ·â_à ¶â¦Ã ¶Åà ·Âà ·ÆÃ ·Šà ¶Âà ·â_à ·ÆÃ ·Âà ¶´à ·Šà ¶Âà ·Âà ¶¸à ·Šà ¶¶à ¶»à ·Š_à ¶âà ¶šà ·Šà ¶Âà ·Âà ¶¶à ¶»à ·Š_à ¶±à ·Åà ·â¬Ã ·Âà ¶¸à ·Šà ¶¶à ¶»à ·Š_à ¶¯à ·â¢Ã ·ÆÃ ·Âà ¶¸à ·Šà ¶¶à ¶»à ·Š".split("_"), monthsShort: "à ¶¢à ¶±_à ¶´à ·â¢Ã ¶¶_à ¶¸à ·Âà ¶»à ·Š_à ¶â¦Ã ¶´à ·Š_à ¶¸à ·Âà ¶ºà ·â_à ¶¢à ·âà ¶±à ·â_à ¶¢à ·âà ¶½à ·â_à ¶â¦Ã ¶Åà ·Â_à ·ÆÃ ·Âà ¶´à ·Š_à ¶âà ¶šà ·Š_à ¶±à ·Åà ·â¬Ã ·Â_à ¶¯à ·â¢Ã ·ÆÃ ·Â".split("_"), weekdays: "à ¶â°Ã ¶»à ·âà ¶¯à ·Â_à ·ÆÃ ¶³à ·âà ¶¯à ·Â_à ¶â¦Ã ¶Ÿà ·âà ¶»à ·âà ·â¬Ã ·Âà ¶¯à ·Â_à ¶¶à ¶¯à ·Âà ¶¯à ·Â_à ¶¶à ·Šââ¬Âà ¶»à ·âà ·ÆÃ ·Šà ¶´à ¶Âà ·âà ¶±à ·Šà ¶¯à ·Â_à ·ÆÃ ·âà ¶šà ·âà ¶»à ·Âà ¶¯à ·Â_à ·ÆÃ ·â¢Ã ¶±à ·ÆÃ ·âà ¶»à ·Âà ¶¯à ·Â".split("_"), weekdaysShort: "à ¶â°Ã ¶»à ·â_à ·ÆÃ ¶³à ·â_à ¶â¦Ã ¶Ÿ_à ¶¶à ¶¯à ·Â_à ¶¶à ·Šââ¬Âà ¶»à ·â_à ·ÆÃ ·âà ¶šà ·â_à ·ÆÃ ·â¢Ã ¶±".split("_"), weekdaysMin: "à ¶â°_à ·Æ_à ¶â¦_à ¶¶_à ¶¶à ·Šââ¬Âà ¶»_à ·ÆÃ ·â_à ·ÆÃ ·â¢".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "a h:mm", LTS: "a h:mm:ss", L: "YYYY/MM/DD", LL: "YYYY MMMM D", LLL: "YYYY MMMM D, a h:mm", LLLL: "YYYY MMMM D [à ·â¬Ã ·Âà ¶±à ·â] dddd, a h:mm:ss" }, calendar: { sameDay: "[à ¶â¦Ã ¶¯] LT[à ¶§]", nextDay: "[à ·âà ·â¢Ã ¶§] LT[à ¶§]", nextWeek: "dddd LT[à ¶§]", lastDay: "[à ¶Šà ¶ºà ·š] LT[à ¶§]", lastWeek: "[à ¶´à ·ÆÃ ·âà ¶Åà ·âà ¶º] dddd LT[à ¶§]", sameElse: "L" }, relativeTime: { future: "%sà ¶šà ·âà ¶±à ·Š", past: "%sà ¶šà ¶§ à ¶´à ·â¢Ã ¶»", s: "à ¶Âà ¶Âà ·Šà ¶´à ¶» à ¶šà ·âà ·âà ·âà ¶´à ¶º", m: "à ¶¸à ·âà ¶±à ·âà ¶Âà ·Šà ¶Âà ·âà ·â¬", mm: "à ¶¸à ·âà ¶±à ·âà ¶Âà ·Šà ¶Âà ·â %d", h: "à ¶´à ·Âà ¶º", hh: "à ¶´à ·Âà ¶º %d", d: "à ¶¯à ·âà ¶±à ¶º", dd: "à ¶¯à ·âà ¶± %d", M: "à ¶¸à ·Âà ·ÆÃ ¶º", MM: "à ¶¸à ·ÂÃ Â·Æ %d", y: "à ·â¬Ã ·ÆÃ ¶»", yy: "à ·â¬Ã ·ÆÃ ¶» %d" }, ordinalParse: /\d{1,2} à ·â¬Ã ·Âà ¶±à ·â/, ordinal: function(number) { return number + " à ·â¬Ã ·Âà ¶±à ·â" }, meridiemParse: /à ¶´à ·â¢Ã ¶» à ·â¬Ã ¶»à ·â|à ¶´à ·ÆÃ ·Šà ·â¬Ã ¶»à ·â|à ¶´à ·â¢.à ·â¬|à ¶´.à ·â¬./, isPM: function(input) { return "à ¶´.à ·â¬." === input || "à ¶´à ·ÆÃ ·Šà ·â¬Ã ¶»à ·â" === input }, meridiem: function(hours, minutes, isLower) { return hours > 11 ? isLower ? "à ¶´.à ·â¬." : "à ¶´à ·ÆÃ ·Šà ·â¬Ã ¶»à ·â" : isLower ? "à ¶´à ·â¢.à ·â¬." : "à ¶´à ·â¢Ã ¶» à ·â¬Ã ¶»à ·â" } }), "január_február_marec_aprÃÂl_máj_jún_júl_august_september_október_november_december".split("_")), 7671 sk__monthsShort = "jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_"), 7672 sr_cyrl__translator = (moment__default.defineLocale("sk", { 7673 months: sk__months, 7674 monthsShort: sk__monthsShort, 7675 weekdays: "nedeþa_pondelok_utorok_streda_à ¡tvrtok_piatok_sobota".split("_"), 7676 weekdaysShort: "ne_po_ut_st_à ¡t_pi_so".split("_"), 7677 weekdaysMin: "ne_po_ut_st_à ¡t_pi_so".split("_"), 7678 longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY H:mm", LLLL: "dddd D. MMMM YYYY H:mm" }, 7679 calendar: { 7680 sameDay: "[dnes o] LT", 7681 nextDay: "[zajtra o] LT", 7682 nextWeek: function() { 7683 switch (this.day()) { 7684 case 0: 7685 return "[v nedeþu o] LT"; 7686 case 1: 7687 case 2: 7688 return "[v] dddd [o] LT"; 7689 case 3: 7690 return "[v stredu o] LT"; 7691 case 4: 7692 return "[vo à ¡tvrtok o] LT"; 7693 case 5: 7694 return "[v piatok o] LT"; 7695 case 6: 7696 return "[v sobotu o] LT" 7697 } 7698 }, 7699 lastDay: "[vÃÂera o] LT", 7700 lastWeek: function() { 7701 switch (this.day()) { 7702 case 0: 7703 return "[minulú nedeþu o] LT"; 7704 case 1: 7705 case 2: 7706 return "[minulý] dddd [o] LT"; 7707 case 3: 7708 return "[minulú stredu o] LT"; 7709 case 4: 7710 case 5: 7711 return "[minulý] dddd [o] LT"; 7712 case 6: 7713 return "[minulú sobotu o] LT" 7714 } 7715 }, 7716 sameElse: "L" 7717 }, 7718 relativeTime: { future: "za %s", past: "pred %s", s: sk__translate, m: sk__translate, mm: sk__translate, h: sk__translate, hh: sk__translate, d: sk__translate, dd: sk__translate, M: sk__translate, MM: sk__translate, y: sk__translate, yy: sk__translate }, 7719 ordinalParse: /\d{1,2}\./, 7720 ordinal: "%d.", 7721 week: { dow: 1, doy: 4 } 7722 }), moment__default.defineLocale("sl", { 7723 months: "januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"), 7724 monthsShort: "jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"), 7725 monthsParseExact: !0, 7726 weekdays: "nedelja_ponedeljek_torek_sreda_ÃÂetrtek_petek_sobota".split("_"), 7727 weekdaysShort: "ned._pon._tor._sre._ÃÂet._pet._sob.".split("_"), 7728 weekdaysMin: "ne_po_to_sr_ÃÂe_pe_so".split("_"), 7729 weekdaysParseExact: !0, 7730 longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY H:mm", LLLL: "dddd, D. MMMM YYYY H:mm" }, 7731 calendar: { 7732 sameDay: "[danes ob] LT", 7733 nextDay: "[jutri ob] LT", 7734 nextWeek: function() { 7735 switch (this.day()) { 7736 case 0: 7737 return "[v] [nedeljo] [ob] LT"; 7738 case 3: 7739 return "[v] [sredo] [ob] LT"; 7740 case 6: 7741 return "[v] [soboto] [ob] LT"; 7742 case 1: 7743 case 2: 7744 case 4: 7745 case 5: 7746 return "[v] dddd [ob] LT" 7747 } 7748 }, 7749 lastDay: "[vÃÂeraj ob] LT", 7750 lastWeek: function() { 7751 switch (this.day()) { 7752 case 0: 7753 return "[prejà ¡njo] [nedeljo] [ob] LT"; 7754 case 3: 7755 return "[prejà ¡njo] [sredo] [ob] LT"; 7756 case 6: 7757 return "[prejà ¡njo] [soboto] [ob] LT"; 7758 case 1: 7759 case 2: 7760 case 4: 7761 case 5: 7762 return "[prejà ¡nji] dddd [ob] LT" 7763 } 7764 }, 7765 sameElse: "L" 7766 }, 7767 relativeTime: { future: "ÃÂez %s", past: "pred %s", s: sl__processRelativeTime, m: sl__processRelativeTime, mm: sl__processRelativeTime, h: sl__processRelativeTime, hh: sl__processRelativeTime, d: sl__processRelativeTime, dd: sl__processRelativeTime, M: sl__processRelativeTime, MM: sl__processRelativeTime, y: sl__processRelativeTime, yy: sl__processRelativeTime }, 7768 ordinalParse: /\d{1,2}\./, 7769 ordinal: "%d.", 7770 week: { dow: 1, doy: 7 } 7771 }), moment__default.defineLocale("sq", { months: "Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"), monthsShort: "Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"), weekdays: "E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"), weekdaysShort: "Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"), weekdaysMin: "D_H_Ma_Më_E_P_Sh".split("_"), weekdaysParseExact: !0, meridiemParse: /PD|MD/, isPM: function(input) { return "M" === input.charAt(0) }, meridiem: function(hours, minutes, isLower) { return hours < 12 ? "PD" : "MD" }, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }
vendor: 8,097 bytes, lines 7771-7843
7771, calendar: { sameDay: "[Sot në] LT", nextDay: "[Nesër në] LT", nextWeek: "dddd [në] LT", lastDay: "[Dje në] LT", lastWeek: "dddd [e kaluar në] LT", sameElse: "L" }, relativeTime: { future: "në %s", past: "%s më parë", s: "disa sekonda", m: "një minutë", mm: "%d minuta", h: "një orë", hh: "%d orë", d: "një ditë", dd: "%d ditë", M: "një muaj", MM: "%d muaj", y: "një vit", yy: "%d vite" }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), { words: { m: ["ÃËõôðý üøÃÂ½ÃÆÃâ", "ÃËõôýõ üøÃÂ½ÃÆÃâõ"], mm: ["üøÃÂ½ÃÆÃâ", "üøÃÂ½ÃÆÃâõ", "üøÃÂ½ÃÆÃâð"], h: ["ÃËõôðý ÃÂðÃâ", "ÃËõôýþó ÃÂðÃâð"], hh: ["ÃÂðÃâ", "ÃÂðÃâð", "ÃÂðÃâø"], dd: ["ôðý", "ôðýð", "ôðýð"], MM: ["üõÃÂõÃâ ", "üõÃÂõÃâ ð", "üõÃÂõÃâ ø"], yy: ["óþôøýð", "óþôøýõ", "óþôøýð"] }, correctGrammaticalCase: function(number, wordKey) { return 1 === number ? wordKey[0] : number >= 2 && number <= 4 ? wordKey[1] : wordKey[2] }, translate: function(number, withoutSuffix, key) { var wordKey = sr_cyrl__translator.words[key]; return 1 === key.length ? withoutSuffix ? wordKey[0] : wordKey[1] : number + " " + sr_cyrl__translator.correctGrammaticalCase(number, wordKey) } }), 7772 sr__translator = (moment__default.defineLocale("sr-cyrl", { 7773 months: "ÃËðÃÂ½ÃÆÃ°Ãâ¬_ÃâõñÃâ¬ÃÆÃ°Ãâ¬_üðÃâ¬Ãâ_ðÿÃâ¬Ã¸Ã»_üðÃË_ÃËÃÆÃ½_ÃËÃÆÃ»_ðòÃÂ³ÃÆÃÂÃâ_ÃÂõÿÃâõüñðÃâ¬_þúÃâþñðÃâ¬_ýþòõüñðÃâ¬_ôõÃâ õüñðÃâ¬".split("_"), 7774 monthsShort: "ÃËðý._Ãâõñ._üðÃâ¬._ðÿÃâ¬._üðÃË_ÃËÃÆÃ½_ÃËÃÆÃ»_ðòó._ÃÂõÿ._þúÃâ._ýþò._ôõÃâ .".split("_"), 7775 monthsParseExact: !0, 7776 weekdays: "ýõôõÃâ¢Ã°_ÿþýõôõÃâ¢Ã°Ãº_ÃÆÃâþÃâ¬Ã°Ãº_ÃÂÃâ¬ÃµÃ´Ã°_Ãâ¡ÃµÃâòÃâ¬Ãâðú_ÿõÃâðú_ÃÂÃÆÃ±Ã¾Ãâð".split("_"), 7777 weekdaysShort: "ýõô._ÿþý._ÃÆÃâþ._ÃÂÃâ¬Ãµ._Ãâ¡ÃµÃâ._ÿõÃâ._ÃÂ̮̱.".split("_"), 7778 weekdaysMin: "ýõ_ÿþ_ÃÆÃâ_ÃÂÃâ¬_Ãâ¡Ãµ_ÿõ_ÃÂÃÆ".split("_"), 7779 weekdaysParseExact: !0, 7780 longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY H:mm", LLLL: "dddd, D. MMMM YYYY H:mm" }, 7781 calendar: { 7782 sameDay: "[ôðýðÃÂ ÃÆ] LT", 7783 nextDay: "[ÃÂÃÆÃâÃâ¬Ã° ÃÆ] LT", 7784 nextWeek: function() { 7785 switch (this.day()) { 7786 case 0: 7787 return "[ÃÆ] [ýõôõÃâ¢ÃÆ] [ÃÆ] LT"; 7788 case 3: 7789 return "[ÃÆ] [ÃÂÃâ¬ÃµÃÂ´ÃÆ] [ÃÆ] LT"; 7790 case 6: 7791 return "[ÃÆ] [ÃÂÃÆÃ±Ã¾ÃâÃÆ] [ÃÆ] LT"; 7792 case 1: 7793 case 2: 7794 case 4: 7795 case 5: 7796 return "[ÃÆ] dddd [ÃÆ] LT" 7797 } 7798 }, 7799 lastDay: "[ÃËÃÆÃâ¡Ãµ ÃÆ] LT", 7800 lastWeek: function() { var lastWeekDays = ["[ÿÃâ¬Ã¾ÃËûõ] [ýõôõÃâ¢Ãµ] [ÃÆ] LT", "[ÿÃâ¬Ã¾ÃËûþó] [ÿþýõôõÃâ¢ÃºÃ°] [ÃÆ] LT", "[ÿÃâ¬Ã¾ÃËûþó] [ÃÆÃâþÃâ¬ÃºÃ°] [ÃÆ] LT", "[ÿÃâ¬Ã¾ÃËûõ] [ÃÂÃâ¬ÃµÃ´Ãµ] [ÃÆ] LT", "[ÿÃâ¬Ã¾ÃËûþó] [Ãâ¡ÃµÃâòÃâ¬Ãâúð] [ÃÆ] LT", "[ÿÃâ¬Ã¾ÃËûþó] [ÿõÃâúð] [ÃÆ] LT", "[ÿÃâ¬Ã¾ÃËûõ] [ÃÂÃÆÃ±Ã¾Ãâõ] [ÃÆ] LT"]; return lastWeekDays[this.day()] }, 7801 sameElse: "L" 7802 }, 7803 relativeTime: { future: "÷ð %s", past: "ÿÃâ¬Ãµ %s", s: "ýõúþûøúþ ÃÂõÃÂºÃÆÃ½Ã´Ã¸", m: sr_cyrl__translator.translate, mm: sr_cyrl__translator.translate, h: sr_cyrl__translator.translate, hh: sr_cyrl__translator.translate, d: "ôðý", dd: sr_cyrl__translator.translate, M: "üõÃÂõÃâ ", MM: sr_cyrl__translator.translate, y: "óþôøÃÂ½ÃÆ", yy: sr_cyrl__translator.translate }, 7804 ordinalParse: /\d{1,2}\./, 7805 ordinal: "%d.", 7806 week: { dow: 1, doy: 7 } 7807 }), { words: { m: ["jedan minut", "jedne minute"], mm: ["minut", "minute", "minuta"], h: ["jedan sat", "jednog sata"], hh: ["sat", "sata", "sati"], dd: ["dan", "dana", "dana"], MM: ["mesec", "meseca", "meseci"], yy: ["godina", "godine", "godina"] }, correctGrammaticalCase: function(number, wordKey) { return 1 === number ? wordKey[0] : number >= 2 && number <= 4 ? wordKey[1] : wordKey[2] }, translate: function(number, withoutSuffix, key) { var wordKey = sr__translator.words[key]; return 1 === key.length ? withoutSuffix ? wordKey[0] : wordKey[1] : number + " " + sr__translator.correctGrammaticalCase(number, wordKey) } }), 7808 ta__symbolMap = (moment__default.defineLocale("sr", { 7809 months: "januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"), 7810 monthsShort: "jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"), 7811 monthsParseExact: !0, 7812 weekdays: "nedelja_ponedeljak_utorak_sreda_ÃÂetvrtak_petak_subota".split("_"), 7813 weekdaysShort: "ned._pon._uto._sre._ÃÂet._pet._sub.".split("_"), 7814 weekdaysMin: "ne_po_ut_sr_ÃÂe_pe_su".split("_"), 7815 weekdaysParseExact: !0, 7816 longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "DD.MM.YYYY", LL: "D. MMMM YYYY", LLL: "D. MMMM YYYY H:mm", LLLL: "dddd, D. MMMM YYYY H:mm" }, 7817 calendar: { 7818 sameDay: "[danas u] LT", 7819 nextDay: "[sutra u] LT", 7820 nextWeek: function() { 7821 switch (this.day()) { 7822 case 0: 7823 return "[u] [nedelju] [u] LT"; 7824 case 3: 7825 return "[u] [sredu] [u] LT"; 7826 case 6: 7827 return "[u] [subotu] [u] LT"; 7828 case 1: 7829 case 2: 7830 case 4: 7831 case 5: 7832 return "[u] dddd [u] LT" 7833 } 7834 }, 7835 lastDay: "[juÃÂe u] LT", 7836 lastWeek: function() { var lastWeekDays = ["[proà ¡le] [nedelje] [u] LT", "[proà ¡log] [ponedeljka] [u] LT", "[proà ¡log] [utorka] [u] LT", "[proà ¡le] [srede] [u] LT", "[proà ¡log] [ÃÂetvrtka] [u] LT", "[proà ¡log] [petka] [u] LT", "[proà ¡le] [subote] [u] LT"]; return lastWeekDays[this.day()] }, 7837 sameElse: "L" 7838 }, 7839 relativeTime: { future: "za %s", past: "pre %s", s: "nekoliko sekundi", m: sr__translator.translate, mm: sr__translator.translate, h: sr__translator.translate, hh: sr__translator.translate, d: "dan", dd: sr__translator.translate, M: "mesec", MM: sr__translator.translate, y: "godinu", yy: sr__translator.translate }, 7840 ordinalParse: /\d{1,2}\./, 7841 ordinal: "%d.", 7842 week: { dow: 1, doy: 7 } 7843 }
vendor: 9,355 bytes, lines 7843-7861
7843), moment__default.defineLocale("ss", { months: "Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split("_"), monthsShort: "Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo".split("_"), weekdays: "Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo".split("_"), weekdaysShort: "Lis_Umb_Lsb_Les_Lsi_Lsh_Umg".split("_"), weekdaysMin: "Li_Us_Lb_Lt_Ls_Lh_Ug".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "h:mm A", LTS: "h:mm:ss A", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY h:mm A", LLLL: "dddd, D MMMM YYYY h:mm A" }, calendar: { sameDay: "[Namuhla nga] LT", nextDay: "[Kusasa nga] LT", nextWeek: "dddd [nga] LT", lastDay: "[Itolo nga] LT", lastWeek: "dddd [leliphelile] [nga] LT", sameElse: "L" }, relativeTime: { future: "nga %s", past: "wenteka nga %s", s: "emizuzwana lomcane", m: "umzuzu", mm: "%d emizuzu", h: "lihora", hh: "%d emahora", d: "lilanga", dd: "%d emalanga", M: "inyanga", MM: "%d tinyanga", y: "umnyaka", yy: "%d iminyaka" }, meridiemParse: /ekuseni|emini|entsambama|ebusuku/, meridiem: function(hours, minutes, isLower) { return hours < 11 ? "ekuseni" : hours < 15 ? "emini" : hours < 19 ? "entsambama" : "ebusuku" }, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "ekuseni" === meridiem ? hour : "emini" === meridiem ? hour >= 11 ? hour : hour + 12 : "entsambama" === meridiem || "ebusuku" === meridiem ? 0 === hour ? 0 : hour + 12 : void 0 }, ordinalParse: /\d{1,2}/, ordinal: "%d", week: { dow: 1, doy: 4 } }), moment__default.defineLocale("sv", { 7844 months: "januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"), 7845 monthsShort: "jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"), 7846 weekdays: "söndag_mÃÂ¥ndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"), 7847 weekdaysShort: "sön_mÃÂ¥n_tis_ons_tor_fre_lör".split("_"), 7848 weekdaysMin: "sö_mÃÂ¥_ti_on_to_fr_lö".split("_"), 7849 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "YYYY-MM-DD", LL: "D MMMM YYYY", LLL: "D MMMM YYYY [kl.] HH:mm", LLLL: "dddd D MMMM YYYY [kl.] HH:mm", lll: "D MMM YYYY HH:mm", llll: "ddd D MMM YYYY HH:mm" }, 7850 calendar: { sameDay: "[Idag] LT", nextDay: "[Imorgon] LT", lastDay: "[IgÃÂ¥r] LT", nextWeek: "[PÃÂ¥] dddd LT", lastWeek: "[I] dddd[s] LT", sameElse: "L" }, 7851 relativeTime: { future: "om %s", past: "för %s sedan", s: "nÃÂ¥gra sekunder", m: "en minut", mm: "%d minuter", h: "en timme", hh: "%d timmar", d: "en dag", dd: "%d dagar", M: "en mÃÂ¥nad", MM: "%d mÃÂ¥nader", y: "ett ÃÂ¥r", yy: "%d ÃÂ¥r" }, 7852 ordinalParse: /\d{1,2}(e|a)/, 7853 ordinal: function(number) { 7854 var b = number % 10, 7855 output = 1 === ~~(number % 100 / 10) ? "e" : 1 === b ? "a" : 2 === b ? "a" : "e"; 7856 return number + output 7857 }, 7858 week: { dow: 1, doy: 4 } 7859 }), moment__default.defineLocale("sw", { months: "Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba".split("_"), monthsShort: "Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des".split("_"), weekdays: "Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi".split("_"), weekdaysShort: "Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos".split("_"), weekdaysMin: "J2_J3_J4_J5_Al_Ij_J1".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, calendar: { sameDay: "[leo saa] LT", nextDay: "[kesho saa] LT", nextWeek: "[wiki ijayo] dddd [saat] LT", lastDay: "[jana] LT", lastWeek: "[wiki iliyopita] dddd [saat] LT", sameElse: "L" }, relativeTime: { future: "%s baadaye", past: "tokea %s", s: "hivi punde", m: "dakika moja", mm: "dakika %d", h: "saa limoja", hh: "masaa %d", d: "siku moja", dd: "masiku %d", M: "mwezi mmoja", MM: "miezi %d", y: "mwaka mmoja", yy: "miaka %d" }, week: { dow: 1, doy: 7 } }), { 1: "à ¯§", 2: "à ¯¨", 3: "à ¯©", 4: "à ¯ª", 5: "à ¯«", 6: "à ¯¬", 7: "à ¯Â", 8: "à ¯®", 9: "à ¯¯", 0: "à ¯¦" }), 7860 ta__numberMap = { "à ¯§": "1", "à ¯¨": "2", "à ¯©": "3", "à ¯ª": "4", "à ¯«": "5", "à ¯¬": "6", "à ¯Â": "7", "à ¯®": "8", "à ¯¯": "9", "à ¯¦": "0" }, 7861 numbersNouns = (moment__default.defineLocale("ta", { months: "à ®Åà ®©à ®µà ®°à ®¿_à ®ªà ®¿à ®ªà ¯Âà ®°à ®µà ®°à ®¿_à ®®à ®¾à ®°à ¯Âà ®šà ¯Â_à ®Âà ®ªà ¯Âà ®°à ®²à ¯Â_à ®®à ¯â¡_à ®Åà ¯âà ®©à ¯Â_à ®Åà ¯âà ®²à ¯Ë_à ®â à ®â¢Ã ®¸à ¯Âà ®Ÿà ¯Â_à ®šà ¯â à ®ªà ¯Âà ®Ÿà ¯â à ®®à ¯Âà ®ªà ®°à ¯Â_à ®â¦Ã ®â¢Ã ¯Âà ®Ÿà ¯â¡Ã ®¾à ®ªà ®°à ¯Â_à ®¨à ®µà ®®à ¯Âà ®ªà ®°à ¯Â_à ®Ÿà ®¿à ®šà ®®à ¯Âà ®ªà ®°à ¯Â".split("_"), monthsShort: "à ®Åà ®©à ®µà ®°à ®¿_à ®ªà ®¿à ®ªà ¯Âà ®°à ®µà ®°à ®¿_à ®®à ®¾à ®°à ¯Âà ®šà ¯Â_à ®Âà ®ªà ¯Âà ®°à ®²à ¯Â_à ®®à ¯â¡_à ®Åà ¯âà ®©à ¯Â_à ®Åà ¯âà ®²à ¯Ë_à ®â à ®â¢Ã ®¸à ¯Âà ®Ÿà ¯Â_à ®šà ¯â à ®ªà ¯Âà ®Ÿà ¯â à ®®à ¯Âà ®ªà ®°à ¯Â_à ®â¦Ã ®â¢Ã ¯Âà ®Ÿà ¯â¡Ã ®¾à ®ªà ®°à ¯Â_à ®¨à ®µà ®®à ¯Âà ®ªà ®°à ¯Â_à ®Ÿà ®¿à ®šà ®®à ¯Âà ®ªà ®°à ¯Â".split("_"), weekdays: "à ®žà ®¾à ®¯à ®¿à ®±à ¯Âà ®±à ¯Âà ®â¢Ã ¯Âà ®â¢Ã ®¿à ®´à ®®à ¯Ë_à ®¤à ®¿à ®â¢Ã ¯Âà ®â¢Ã ®Ÿà ¯Âà ®â¢Ã ®¿à ®´à ®®à ¯Ë_à ®šà ¯â à ®µà ¯Âà ®µà ®¾à ®¯à ¯Âà ®â¢Ã ®¿à ®´à ®®à ¯Ë_à ®ªà ¯Âà ®¤à ®©à ¯Âà ®â¢Ã ®¿à ®´à ®®à ¯Ë_à ®µà ®¿à ®¯à ®¾à ®´à ®â¢Ã ¯Âà ®â¢Ã ®¿à ®´à ®®à ¯Ë_à ®µà ¯â à ®³à ¯Âà ®³à ®¿à ®â¢Ã ¯Âà ®â¢Ã ®¿à ®´à ®®à ¯Ë_à ®šà ®©à ®¿à ®â¢Ã ¯Âà ®â¢Ã ®¿à ®´à ®®à ¯Ë".split("_"), weekdaysShort: "à ®žà ®¾à ®¯à ®¿à ®±à ¯Â_à ®¤à ®¿à ®â¢Ã ¯Âà ®â¢Ã ®³à ¯Â_à ®šà ¯â à ®µà ¯Âà ®µà ®¾à ®¯à ¯Â_à ®ªà ¯Âà ®¤à ®©à ¯Â_à ®µà ®¿à ®¯à ®¾à ®´à ®©à ¯Â_à ®µà ¯â à ®³à ¯Âà ®³à ®¿_à ®šà ®©à ®¿".split("_"), weekdaysMin: "à ®žà ®¾_à ®¤à ®¿_à ®šà ¯â _à ®ªà ¯Â_à ®µà ®¿_à ®µà ¯â _à ®š".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY, HH:mm", LLLL: "dddd, D MMMM YYYY, HH:mm" }, calendar: { sameDay: "[à ®â¡Ã ®©à ¯Âà ®±à ¯Â] LT", nextDay: "[à ®¨à ®¾à ®³à ¯Ë] LT", nextWeek: "dddd, LT", lastDay: "[à ®¨à ¯â¡Ã ®±à ¯Âà ®±à ¯Â] LT", lastWeek: "[à ®â¢Ã ®Ÿà ®¨à ¯Âà ®¤ à ®µà ®¾à ®°à ®®à ¯Â] dddd, LT", sameElse: "L" }, relativeTime: { future: "%s à ®â¡Ã ®²à ¯Â", past: "%s à ®®à ¯Âà ®©à ¯Â", s: "à ®âà ®°à ¯ à ®šà ®¿à ®² à ®µà ®¿à ®¨à ®¾à ®Ÿà ®¿à ®â¢Ã ®³à ¯Â", m: "à ®âà ®°à ¯ à ®¨à ®¿à ®®à ®¿à ®Ÿà ®®à ¯Â", mm: "%d à ®¨à ®¿à ®®à ®¿à ®Ÿà ®â¢Ã ¯Âà ®â¢Ã ®³à ¯Â", h: "à ®âà ®°à ¯ à ®®à ®£à ®¿ à ®¨à ¯â¡Ã ®°à ®®à ¯Â", hh: "%d à ®®à ®£à ®¿ à ®¨à ¯â¡Ã ®°à ®®à ¯Â", d: "à ®âà ®°à ¯ à ®¨à ®¾à ®³à ¯Â", dd: "%d à ®¨à ®¾à ®Ÿà ¯Âà ®â¢Ã ®³à ¯Â", M: "à ®âà ®°à ¯ à ®®à ®¾à ®¤à ®®à ¯Â", MM: "%d à ®®à ®¾à ®¤à ®â¢Ã ¯Âà ®â¢Ã ®³à ¯Â", y: "à ®âà ®°à ¯ à ®µà ®°à ¯Âà ®Ÿà ®®à ¯Â", yy: "%d à ®â à ®£à ¯Âà ®Ÿà ¯Âà ®â¢Ã ®³à ¯Â" }, ordinalParse: /\d{1,2}à ®µà ®¤à ¯Â/, ordinal: function(number) { return number + "à ®µà ®¤à ¯Â" }, preparse: function(string) { return string.replace(/[à ¯§à ¯¨à ¯©à ¯ªà ¯«à ¯¬à ¯Âà ¯®à ¯¯à ¯¦]/g, function(match) { return ta__numberMap[match] }) }, postformat: function(string) { return string.replace(/\d/g, function(match) { return ta__symbolMap[match] }) }, meridiemParse: /à ®¯à ®¾à ®®à ®®à ¯Â|à ®µà ¯Ëà ®â¢Ã ®±à ¯Ë|à ®â¢Ã ®¾à ®²à ¯Ë|à ®¨à ®£à ¯Âà ®ªà ®â¢Ã ®²à ¯Â|à ®Žà ®±à ¯Âà ®ªà ®¾à ®Ÿà ¯Â|à ®®à ®¾à ®²à ¯Ë/, meridiem: function(hour, minute, isLower) { return hour < 2 ? " à ®¯à ®¾à ®®à ®®à ¯Â" : hour < 6 ? " à ®µà ¯Ëà ®â¢Ã ®±à ¯Ë" : hour < 10 ? " à ®â¢Ã ®¾à ®²à ¯Ë" : hour < 14 ? " à ®¨à ®£à ¯Âà ®ªà ®â¢Ã ®²à ¯Â" : hour < 18 ? " à ®Žà ®±à ¯Âà ®ªà ®¾à ®Ÿà ¯Â" : hour < 22 ? " à ®®à ®¾à ®²à ¯Ë" : " à ®¯à ®¾à ®®à ®®à ¯Â" }, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "à ®¯à ®¾à ®®à ®®à ¯Â" === meridiem ? hour < 2 ? hour : hour + 12 : "à ®µà ¯Ëà ®â¢Ã ®±à ¯Ë" === meridiem || "à ®â¢Ã ®¾à ®²à ¯Ë" === meridiem ? hour : "à ®¨à ®£à ¯Âà ®ªà ®â¢Ã ®²à ¯Â" === meridiem && hour >= 10 ? hour : hour + 12 }, week: { dow: 0, doy: 6 } }), moment__default.defineLocale("te", { months: "à °Åà °¨à °µà °°à °¿_à °«à °¿à °¬à ±Âà °°à °µà °°à °¿_à °®à °¾à °°à ±Âà °šà °¿_à °Âà °ªà ±Âà °°à °¿à °²à ±Â_à °®à ±â¡_à °Åà ±âà °¨à ±Â_
7861à °Åà ±âà °²à ±â à ±â_à °â à °âà °¸à ±Âà °Ÿà ±Â_à °¸à ±â à °ªà ±Âà °Ÿà ±â à °âà °¬à °°à ±Â_à °â¦Ã °â¢Ã ±Âà °Ÿà ±â¹Ã °¬à °°à ±Â_à °¨à °µà °âà °¬à °°à ±Â_à °¡à °¿à °¸à ±â à °âà °¬à °°à ±Â".split("_"), monthsShort: "à °Åà °¨._à °«à °¿à °¬à ±Âà °°._à °®à °¾à °°à ±Âà °šà °¿_à °Âà °ªà ±Âà °°à °¿._à °®à ±â¡_à °Åà ±âà °¨à ±Â_à °Åà ±âà °²à ±â à ±â_à °â à °â._à °¸à ±â à °ªà ±Â._à °â¦Ã °â¢Ã ±Âà °Ÿà ±â¹._à °¨à °µ._à °¡à °¿à °¸à ±â .".split("_"), monthsParseExact: !0, weekdays: "à °â à °¦à °¿à °µà °¾à °°à °â_à °¸à ±â¹Ã °®à °µà °¾à °°à °â_à °®à °âà °âà °³à °µà °¾à °°à °â_à °¬à ±Âà °§à °µà °¾à °°à °â_à °âà ±Âà °°à ±Âà °µà °¾à °°à °â_à °¶à ±Âà °â¢Ã ±Âà °°à °µà °¾à °°à °â_à °¶à °¨à °¿à °µà °¾à °°à °â".split("_"), weekdaysShort: "à °â à °¦à °¿_à °¸à ±â¹Ã °®_à °®à °âà °âà °³_à °¬à ±Âà °§_à °âà ±Âà °°à ±Â_à °¶à ±Âà °â¢Ã ±Âà °°_à °¶à °¨à °¿".split("_"), weekdaysMin: "à °â _à °¸à ±â¹_à °®à °â_à °¬à ±Â_à °âà ±Â_à °¶à ±Â_à °¶".split("_"), longDateFormat: { LT: "A h:mm", LTS: "A h:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY, A h:mm", LLLL: "dddd, D MMMM YYYY, A h:mm" }, calendar: { sameDay: "[à °¨à ±â¡Ã °¡à ±Â] LT", nextDay: "[à °°à ±â¡Ã °ªà ±Â] LT", nextWeek: "dddd, LT", lastDay: "[à °¨à °¿à °¨à ±Âà °¨] LT", lastWeek: "[à °âà °¤] dddd, LT", sameElse: "L" }, relativeTime: { future: "%s à °²à ±â¹", past: "%s à °â¢Ã ±Âà °°à °¿à °¤à °â", s: "à °â¢Ã ±Šà °¨à ±Âà °¨à °¿ à °â¢Ã ±Âà °·à °£à °¾à °²à ±Â", m: "à °âà °⢠à °¨à °¿à °®à °¿à °·à °â", mm: "%d à °¨à °¿à °®à °¿à °·à °¾à °²à ±Â", h: "à °âà °⢠à °âà °âà °Ÿ", hh: "%d à °âà °âà °Ÿà °²à ±Â", d: "à °âà °⢠à °°à ±â¹Ã °Åà ±Â", dd: "%d à °°à ±â¹Ã °Åà ±Âà °²à ±Â", M: "à °âà °⢠à °¨à ±â à °²", MM: "%d à °¨à ±â à °²à °²à ±Â", y: "à °âà °⢠à °¸à °âà °µà °¤à ±Âà °¸à °°à °â", yy: "%d à °¸à °âà °µà °¤à ±Âà °¸à °°à °¾à °²à ±Â" }, ordinalParse: /\d{1,2}à °µ/, ordinal: "%dà °µ", meridiemParse: /à °°à °¾à °¤à ±Âà °°à °¿|à °â°Ã °¦à °¯à °â|à °®à °§à ±Âà °¯à °¾à °¹à ±Âà °¨à °â|à °¸à °¾à °¯à °âà °¤à ±Âà °°à °â/, meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "à °°à °¾à °¤à ±Âà °°à °¿" === meridiem ? hour < 4 ? hour : hour + 12 : "à °â°Ã °¦à °¯à °â" === meridiem ? hour : "à °®à °§à ±Âà °¯à °¾à °¹à ±Âà °¨à °â" === meridiem ? hour >= 10 ? hour : hour + 12 : "à °¸à °¾à °¯à °âà °¤à ±Âà °°à °â" === meridiem ? hour + 12 : void 0 }, meridiem: function(hour, minute, isLower) { return hour < 4 ? "à °°à °¾à °¤à ±Âà °°à °¿" : hour < 10 ? "à °â°Ã °¦à °¯à °â" : hour < 17 ? "à °®à °§à ±Âà °¯à °¾à °¹à ±Âà °¨à °â" : hour < 20 ? "à °¸à °¾à °¯à °âà °¤à ±Âà °°à °â" : "à °°à °¾à °¤à ±Âà °°à °¿" }, week: { dow: 0, doy: 6 } }), moment__default.defineLocale("th", { months: "à ¸¡à ¸Âà ¸£à ¸²à ¸âà ¸¡_à ¸Âà ¸¸à ¸¡à ¸ à ¸²à ¸žà ¸±à ¸â¢Ã ¸Ëà ¹Å_à ¸¡à ¸µà ¸â¢Ã ¸²à ¸âà ¸¡_à ¹â¬Ã ¸¡à ¸©à ¸²à ¸¢à ¸â¢_à ¸žà ¸¤à ¸©à ¸ à ¸²à ¸âà ¸¡_à ¸¡à ¸´à ¸âà ¸¸à ¸â¢Ã ¸²à ¸¢à ¸â¢_à ¸Âà ¸£à ¸Âà ¸Žà ¸²à ¸âà ¸¡_à ¸ªà ¸´à ¸â¡Ã ¸«à ¸²à ¸âà ¸¡_à ¸Âà ¸±à ¸â¢Ã ¸¢à ¸²à ¸¢à ¸â¢_à ¸â¢Ã ¸¸à ¸¥à ¸²à ¸âà ¸¡_à ¸žà ¸¤à ¸¨à ¸Ëà ¸´à ¸Âà ¸²à ¸¢à ¸â¢_à ¸Ëà ¸±à ¸â¢Ã ¸§à ¸²à ¸âà ¸¡".split("_"), monthsShort: "à ¸¡.à ¸â._à ¸Â.à ¸ž._à ¸¡à ¸µ.à ¸â._à ¹â¬Ã ¸¡.à ¸¢._à ¸ž.à ¸â._à ¸¡à ¸´.à ¸¢._à ¸Â.à ¸â._à ¸ª.à ¸â._à ¸Â.à ¸¢._à ¸â¢.à ¸â._à ¸ž.à ¸¢._à ¸Ë.à ¸â.".split("_"), monthsParseExact: !0, weekdays: "à ¸Âà ¸²à ¸âà ¸´à ¸â¢Ã ¸¢à ¹Å_à ¸Ëà ¸±à ¸â¢Ã ¸âà ¸£à ¹Å_à ¸Âà ¸±à ¸â¡Ã ¸âà ¸²à ¸£_à ¸žà ¸¸à ¸Ë_à ¸žà ¸¤à ¸«à ¸±à ¸ªà ¸šà ¸âà ¸µ_à ¸¨à ¸¸à ¸Âà ¸£à ¹Å_à ¹â¬Ã ¸ªà ¸²à ¸£à ¹Å".split("_"), weekdaysShort: "à ¸Âà ¸²à ¸âà ¸´à ¸â¢Ã ¸¢à ¹Å_à ¸Ëà ¸±à ¸â¢Ã ¸âà ¸£à ¹Å_à ¸Âà ¸±à ¸â¡Ã ¸âà ¸²à ¸£_à ¸žà ¸¸à ¸Ë_à ¸žà ¸¤à ¸«à ¸±à ¸ª_à ¸¨à ¸¸à ¸Âà ¸£à ¹Å_à ¹â¬Ã ¸ªà ¸²à ¸£à ¹Å".split("_"), weekdaysMin: "à ¸Âà ¸²._à ¸Ë._à ¸Â._à ¸ž._à ¸žà ¸¤._à ¸¨._à ¸ª.".split("_"), weekdaysParseExact: !0, longDateFormat: { LT: "H:mm", LTS: "H:mm:ss", L: "YYYY/MM/DD", LL: "D MMMM YYYY", LLL: "D MMMM YYYY à ¹â¬Ã ¸§à ¸¥à ¸² H:mm", LLLL: "à ¸§à ¸±à ¸â¢ddddà ¸âÃ Â¸ÂµÃ Â¹Ë D MMMM YYYY à ¹â¬Ã ¸§à ¸¥à ¸² H:mm" }, meridiemParse: /à ¸Âà ¹Ëà ¸Âà ¸â¢Ã ¹â¬Ã ¸âà ¸µà ¹Ëà ¸¢à ¸â¡|à ¸«à ¸¥à ¸±à ¸â¡Ã ¹â¬Ã ¸âà ¸µà ¹Ëà ¸¢à ¸â¡/, isPM: function(input) { return "à ¸«à ¸¥à ¸±à ¸â¡Ã ¹â¬Ã ¸âà ¸µà ¹Ëà ¸¢à ¸â¡" === input }, meridiem: function(hour, minute, isLower) { return hour < 12 ? "à ¸Âà ¹Ëà ¸Âà ¸â¢Ã ¹â¬Ã ¸âà ¸µà ¹Ëà ¸¢à ¸â¡" : "à ¸«à ¸¥à ¸±à ¸â¡Ã ¹â¬Ã ¸âà ¸µà ¹Ëà ¸¢à ¸â¡" }, calendar: { sameDay: "[à ¸§à ¸±à ¸â¢Ã ¸â¢Ã ¸µà ¹Ⱐà ¹â¬Ã ¸§à ¸¥à ¸²] LT", nextDay: "[à ¸žà ¸£à ¸¸à ¹Ëà ¸â¡Ã ¸â¢Ã ¸µà ¹Ⱐà ¹â¬Ã ¸§à ¸¥à ¸²] LT", nextWeek: "dddd[à ¸«à ¸â¢Ã ¹â°Ã ¸² à ¹â¬Ã ¸§à ¸¥à ¸²] LT", lastDay: "[à ¹â¬Ã ¸¡à ¸·à ¹Ëà ¸Âà ¸§à ¸²à ¸â¢Ã ¸â¢Ã ¸µà ¹Ⱐà ¹â¬Ã ¸§à ¸¥à ¸²] LT", lastWeek: "[à ¸§à ¸±à ¸â¢]ddd
7861d[à ¸âà ¸µà ¹Ëà ¹Âà ¸¥à ¹â°Ã ¸§ à ¹â¬Ã ¸§à ¸¥à ¸²] LT", sameElse: "L" }, relativeTime: { future: "à ¸Âà ¸µà ¸ %s", past: "%sà ¸âà ¸µà ¹Ëà ¹Âà ¸¥à ¹â°Ã ¸§", s: "à ¹âà ¸¡à ¹Ëà ¸Âà ¸µà ¹Ëà ¸§à ¸´à ¸â¢Ã ¸²à ¸âà ¸µ", m: "1 à ¸â¢Ã ¸²à ¸âà ¸µ", mm: "%d à ¸â¢Ã ¸²à ¸âà ¸µ", h: "1 à ¸Šà ¸±à ¹Ëà ¸§à ¹âà ¸¡à ¸â¡", hh: "%d à ¸Šà ¸±à ¹Ëà ¸§à ¹âà ¸¡à ¸â¡", d: "1 à ¸§à ¸±à ¸â¢", dd: "%d à ¸§à ¸±à ¸â¢", M: "1 à ¹â¬Ã ¸âà ¸·à ¸Âà ¸â¢", MM: "%d à ¹â¬Ã ¸âà ¸·à ¸Âà ¸â¢", y: "1 à ¸âºÃ ¸µ", yy: "%d à ¸âºÃ ¸µ" } }), moment__default.defineLocale("tl-ph", { months: "Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"), monthsShort: "Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"), weekdays: "Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"), weekdaysShort: "Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"), weekdaysMin: "Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "MM/D/YYYY", LL: "MMMM D, YYYY", LLL: "MMMM D, YYYY HH:mm", LLLL: "dddd, MMMM DD, YYYY HH:mm" }, calendar: { sameDay: "[Ngayon sa] LT", nextDay: "[Bukas sa] LT", nextWeek: "dddd [sa] LT", lastDay: "[Kahapon sa] LT", lastWeek: "dddd [huling linggo] LT", sameElse: "L" }, relativeTime: { future: "sa loob ng %s", past: "%s ang nakalipas", s: "ilang segundo", m: "isang minuto", mm: "%d minuto", h: "isang oras", hh: "%d oras", d: "isang araw", dd: "%d araw", M: "isang buwan", MM: "%d buwan", y: "isang taon", yy: "%d taon" }, ordinalParse: /\d{1,2}/, ordinal: function(number) { return number }, week: { dow: 1, doy: 4 } }), "pagh_waââ¬â¢_chaââ¬â¢_wej_loS_vagh_jav_Soch_chorgh_Hut".split("_")), 7862 tr__suffixes = (moment__default.defineLocale("tlh", { months: "teraââ¬â¢ jar waââ¬â¢_teraââ¬â¢ jar chaââ¬â¢_teraââ¬â¢ jar wej_teraââ¬â¢ jar loS_teraââ¬â¢ jar vagh_teraââ¬â¢ jar jav_teraââ¬â¢ jar Soch_teraââ¬â¢ jar chorgh_teraââ¬â¢ jar Hut_teraââ¬â¢ jar waââ¬â¢maH_teraââ¬â¢ jar waââ¬â¢maH waââ¬â¢_teraââ¬â¢ jar waââ¬â¢maH chaââ¬â¢".split("_"), monthsShort: "jar waââ¬â¢_jar chaââ¬â¢_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar waââ¬â¢maH_jar waââ¬â¢maH waââ¬â¢_jar waââ¬â¢maH chaââ¬â¢".split("_"), monthsParseExact: !0, weekdays: "lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"), weekdaysShort: "lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"), weekdaysMin: "lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, calendar: { sameDay: "[DaHjaj] LT", nextDay: "[waââ¬â¢leS] LT", nextWeek: "LLL", lastDay: "[waââ¬â¢Huââ¬â¢] LT", lastWeek: "LLL", sameElse: "L" }, relativeTime: { future: translateFuture, past: translatePast, s: "puS lup", m: "waââ¬â¢ tup", mm: tlh__translate, h: "waââ¬â¢ rep", hh: tlh__translate, d: "waââ¬â¢ jaj", dd: tlh__translate, M: "waââ¬â¢ jar", MM: tlh__translate, y: "waââ¬â¢ DIS", yy: tlh__translate }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), { 1: "'inci", 5: "'inci", 8: "'inci", 70: "'inci", 80: "'inci", 2: "'nci", 7: "'nci", 20: "'nci", 50: "'nci", 3: "'üncü", 4: "'üncü", 100: "'üncü", 6: "'ncñ", 9: "'uncu", 10: "'uncu", 30: "'uncu", 60: "'ñncñ", 90: "'ñncñ" }), 7863 moment_with_locales = (moment__default.defineLocale("tr", { 7864 months: "Ocak_à žubat_Mart_Nisan_Mayñs_Haziran_Temmuz_Aßustos_Eylül_Ekim_Kasñm_Aralñk".split("_"), 7865 monthsShort: "Oca_à žub_Mar_Nis_May_Haz_Tem_Aßu_Eyl_Eki_Kas_Ara".split("_"), 7866 weekdays: "Pazar_Pazartesi_Salñ_Ãâ¡arà Ÿamba_Perà Ÿembe_Cuma_Cumartesi".split("_"), 7867 weekdaysShort: "Paz_Pts_Sal_Ãâ¡ar_Per_Cum_Cts".split("_"), 7868 weekdaysMin: "Pz_Pt_Sa_Ãâ¡a_Pe_Cu_Ct".split("_"), 7869 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, 7870 calendar: { sameDay: "[bugün saat] LT", nextDay: "[yarñn saat] LT", nextWeek: "[haftaya] dddd [saat] LT", lastDay: "[dün] LT", lastWeek: "[geçen hafta] dddd [saat] LT", sameElse: "L" }, 7871 relativeTime: { future: "%s sonra", past: "%s önce", s: "birkaç saniye", m: "bir dakika", mm: "%d dakika", h: "bir saat", hh: "%d saat", d: "bir gün", dd: "%d gün", M: "bir ay", MM: "%d ay", y: "bir yñl", yy: "%d yñl" }, 7872 ordinalParse: /\d{1,2}'(inci|nci|üncü|ncñ|uncu|ñncñ)/, 7873 ordinal: function(number) { 7874 if (0 === number) return number + "'ñncñ"; 7875 var a = number % 10, 7876 b = number % 100 - a, 7877 c = number >= 100 ? 100 : null; 7878 return number + (tr__suffixes[a] || tr__suffixes[b] || tr__suffixes[c]) 7879 }, 7880 week: { dow: 1, doy: 7 } 7881 }), moment__default.defineLocale("tzl", { months: "Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar".split("_"), monthsShort: "Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec".split("_"), weekdays: "Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi".split("_"), weekdaysShort: "Súl_Lún_Mai_Már_Xhú_Vié_Sát".split("_"), weekdaysMin: "Sú_Lú_Ma_Má_Xh_Vi_Sá".split("_"), longDateFormat: { LT: "HH.mm", LTS: "HH.mm.ss", L: "DD.MM.YYYY", LL: "D. MMMM [dallas] YYYY", LLL: "D. MMMM [dallas] YYYY HH.mm", LLLL: "dddd, [li] D. MMMM [dallas] YYYY HH.mm" }, meridiemParse: /d\'o|d\'a/i, isPM: function(input) { return "d'o" === input.toLowerCase() }, meridiem: function(hours, minutes, isLower) { return hours > 11 ? isLower ? "d'o" : "D'O" : isLower ? "d'a" : "D'A" }, calendar: { sameDay: "[oxhi à ] LT", nextDay: "[demà à ] LT", nextWeek: "dddd [à ] LT", lastDay: "[ieiri à ] LT", lastWeek: "[sür el] dddd [lasteu à ] LT", sameElse: "L" }, relativeTime: { future: "osprei %s", past: "ja%s", s: tzl__processRelativeTime, m: tzl__processRelativeTime, mm: tzl__processRelativeTime, h: tzl__processRelativeTime, hh: tzl__processRelativeTime, d: tzl__processRelativeTime, dd: tzl__processRelativeTime, M: tzl__processRelativeTime, MM: tzl__processRelativeTime, y: tzl__processRelativeTime, yy: tzl__processRelativeTime }, ordinalParse: /\d{1,2}\./, ordinal: "%d.", week: { dow: 1, doy: 4 } }), moment__default.defineLocale("tzm-latn", { months: "innayr_bräayrä_maräsä_ibrir_mayyw_ywnyw_ywlywz_ãwà ¡t_
7881à ¡wtanbir_ktäwbrä_nwwanbir_dwjnbir".split("_"), monthsShort: "innayr_bräayrä_maräsä_ibrir_mayyw_ywnyw_ywlywz_ãwà ¡t_à ¡wtanbir_ktäwbrä_nwwanbir_dwjnbir".split("_"), weekdays: "asamas_aynas_asinas_akras_akwas_asimwas_asiá¸Âyas".split("_"), weekdaysShort: "asamas_aynas_asinas_akras_akwas_asimwas_asiá¸Âyas".split("_"), weekdaysMin: "asamas_aynas_asinas_akras_akwas_asimwas_asiá¸Âyas".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, calendar: { sameDay: "[asdkh g] LT", nextDay: "[aska g] LT", nextWeek: "dddd [g] LT", lastDay: "[assant g] LT", lastWeek: "dddd [g] LT", sameElse: "L" }, relativeTime: { future: "dadkh s yan %s", past: "yan %s", s: "imik", m: "minuá¸Â", mm: "%d minuá¸Â", h: "saÃâºa", hh: "%d tassaÃâºin", d: "ass", dd: "%d ossan", M: "ayowr", MM: "%d iyyirn", y: "asgas", yy: "%d isgasn" }, week: { dow: 6, doy: 12 } }), moment__default.defineLocale("tzm", { months: "âµâ°Ã¢ÂµÂâµÂâ´°âµ¢âµâ_â´±âµâ¢Ã¢Â´Â°Ã¢ÂµÂ¢Ã¢Âµâ¢_ⵎⴰâµâ¢Ã¢ÂµÅ¡_âµâ°Ã¢Â´Â±Ã¢Âµââµâ°Ã¢Âµâ_ⵎⴰⵢⵢâµâ_âµ¢âµââµÂâµ¢âµâ_âµ¢âµââµÂâµ¢âµââµ£_âµââµââµâºÃ¢ÂµÅ_âµâºÃ¢ÂµââµÅâ´°âµÂâ´±âµâ°Ã¢Âµâ_ⴽⵟâµââ´±âµâ¢_âµÂâµâⵡⴰâµÂâ´±âµâ°Ã¢Âµâ_â´·âµâⵊâµÂâ´±âµâ°Ã¢Âµâ".split("_"), monthsShort: "âµâ°Ã¢ÂµÂâµÂâ´°âµ¢âµâ_â´±âµâ¢Ã¢Â´Â°Ã¢ÂµÂ¢Ã¢Âµâ¢_ⵎⴰâµâ¢Ã¢ÂµÅ¡_âµâ°Ã¢Â´Â±Ã¢Âµââµâ°Ã¢Âµâ_ⵎⴰⵢⵢâµâ_âµ¢âµââµÂâµ¢âµâ_âµ¢âµââµÂâµ¢âµââµ£_âµââµââµâºÃ¢ÂµÅ_âµâºÃ¢ÂµââµÅâ´°âµÂâ´±âµâ°Ã¢Âµâ_ⴽⵟâµââ´±âµâ¢_âµÂâµâⵡⴰâµÂâ´±âµâ°Ã¢Âµâ_â´·âµâⵊâµÂâ´±âµâ°Ã¢Âµâ".split("_"), weekdays: "â´°âµâ¢Ã¢Â´Â°Ã¢ÂµÅ½Ã¢Â´Â°Ã¢Âµâ¢_â´°âµ¢âµÂâ´°âµâ¢_â´°âµâ¢Ã¢Âµâ°Ã¢ÂµÂâ´°âµâ¢_â´°â´½âµââ´°âµâ¢_ⴰⴽⵡⴰâµâ¢_â´°âµâ¢Ã¢Âµâ°Ã¢ÂµÅ½Ã¢ÂµÂ¡Ã¢Â´Â°Ã¢Âµâ¢_â´°âµâ¢Ã¢Âµâ°Ã¢Â´Â¹Ã¢ÂµÂ¢Ã¢Â´Â°Ã¢Âµâ¢".split("_"), weekdaysShort: "â´°âµâ¢Ã¢Â´Â°Ã¢ÂµÅ½Ã¢Â´Â°Ã¢Âµâ¢_â´°âµ¢âµÂâ´°âµâ¢_â´°âµâ¢Ã¢Âµâ°Ã¢ÂµÂâ´°âµâ¢_â´°â´½âµââ´°âµâ¢_ⴰⴽⵡⴰâµâ¢_â´°âµâ¢Ã¢Âµâ°Ã¢ÂµÅ½Ã¢ÂµÂ¡Ã¢Â´Â°Ã¢Âµâ¢_â´°âµâ¢Ã¢Âµâ°Ã¢Â´Â¹Ã¢ÂµÂ¢Ã¢Â´Â°Ã¢Âµâ¢".split("_"), weekdaysMin: "â´°âµâ¢Ã¢Â´Â°Ã¢ÂµÅ½Ã¢Â´Â°Ã¢Âµâ¢_â´°âµ¢âµÂâ´°âµâ¢_â´°âµâ¢Ã¢Âµâ°Ã¢ÂµÂâ´°âµâ¢_â´°â´½âµââ´°âµâ¢_ⴰⴽⵡⴰâµâ¢_â´°âµâ¢Ã¢Âµâ°Ã¢ÂµÅ½Ã¢ÂµÂ¡Ã¢Â´Â°Ã¢Âµâ¢_â´°âµâ¢Ã¢Âµâ°Ã¢Â´Â¹Ã¢ÂµÂ¢Ã¢Â´Â°Ã¢Âµâ¢".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, calendar: { sameDay: "[â´°âµâ¢Ã¢Â´Â·Ã¢Âµâ¦ â´´] LT", nextDay: "[â´°âµâ¢Ã¢Â´Â½Ã¢Â´Â° â´´] LT", nextWeek: "dddd [â´´] LT", lastDay: "[ⴰⵚⴰâµÂⵊⴴ] LT", lastWeek: "dddd [â´´] LT", sameElse: "L" }, relativeTime: { future: "â´·â´°â´·âµ⦠âµ⢠ⵢⴰⵠ%s", past: "ⵢⴰⵠ%s", s: "âµâ°Ã¢ÂµÅ½Ã¢Âµâ°Ã¢Â´Â½", m: "ⵎâµâ°Ã¢ÂµÂâµââ´º", mm: "%d ⵎâµâ°Ã¢ÂµÂâµââ´º", h: "âµâ¢Ã¢Â´Â°Ã¢Âµââ´°", hh: "%d âµÅâ´°âµâ¢Ã¢Âµâ¢Ã¢Â´Â°Ã¢Âµââµâ°Ã¢ÂµÂ", d: "â´°âµâ¢Ã¢Âµâ¢", dd: "%d oâµâ¢Ã¢Âµâ¢Ã¢Â´Â°Ã¢ÂµÂ", M: "â´°âµ¢oâµââµâ", MM: "%d âµâ°Ã¢ÂµÂ¢Ã¢ÂµÂ¢Ã¢Âµâ°Ã¢ÂµââµÂ", y: "â´°âµâ¢Ã¢Â´Â³Ã¢Â´Â°Ã¢Âµâ¢", yy: "%d âµâ°Ã¢Âµâ¢Ã¢Â´Â³Ã¢Â´Â°Ã¢Âµâ¢Ã¢ÂµÂ" }, week: { dow: 6, doy: 12 } }), moment__default.defineLocale("uk", { 7882 months: { format: "ÃÂÃâÃâ¡Ã½ÃÂ_ûÎÃâþóþ_ñõÃâ¬ÃµÃ·Ã½ÃÂ_úòÃâÃâýÃÂ_ÃâÃâ¬Ã°Ã²Ã½ÃÂ_Ãâ¡ÃµÃâ¬Ã²Ã½ÃÂ_ûøÿýÃÂ_ÃÂõÃâ¬Ã¿Ã½ÃÂ_òõÃâ¬ÃµÃÂýÃÂ_öþòÃâýÃÂ_ûøÃÂÃâþÿðôð_
vendor: 6,012 bytes, lines 7882-7928
7882óÃâ¬ÃÆÃ´Ã½ÃÂ".split("_"), standalone: "ÃÂÃâÃâ¡ÃµÃ½ÃÅ_ûÎÃâøù_ñõÃâ¬ÃµÃ·ÃµÃ½ÃÅ_úòÃâÃâõýÃÅ_ÃâÃâ¬Ã°Ã²ÃµÃ½ÃÅ_Ãâ¡ÃµÃâ¬Ã²ÃµÃ½ÃÅ_ûøÿõýÃÅ_ÃÂõÃâ¬Ã¿ÃµÃ½ÃÅ_òõÃâ¬ÃµÃÂõýÃÅ_öþòÃâõýÃÅ_ûøÃÂÃâþÿðô_óÃâ¬ÃÆÃ´ÃµÃ½ÃÅ".split("_") }, 7883 monthsShort: "ÃÂÃâÃâ¡_ûÎÃâ_ñõÃâ¬_úòÃâÃâ_ÃâÃâ¬Ã°Ã²_Ãâ¡ÃµÃâ¬Ã²_ûøÿ_ÃÂõÃâ¬Ã¿_òõÃâ¬_öþòÃâ_ûøÃÂÃâ_óÃâ¬ÃÆÃ´".split("_"), 7884 weekdays: weekdaysCaseReplace, 7885 weekdaysShort: "ýô_ÿý_òÃâ_ÃÂÃâ¬_Ãâ¡Ãâ_ÿÃâ_ÃÂñ".split("_"), 7886 weekdaysMin: "ýô_ÿý_òÃâ_ÃÂÃâ¬_Ãâ¡Ãâ_ÿÃâ_ÃÂñ".split("_"), 7887 longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD.MM.YYYY", LL: "D MMMM YYYY Ãâ¬.", LLL: "D MMMM YYYY Ãâ¬., HH:mm", LLLL: "dddd, D MMMM YYYY Ãâ¬., HH:mm" }, 7888 calendar: { 7889 sameDay: processHoursFunction("[áÃÅþóþôýÃâ "), 7890 nextDay: processHoursFunction("[ÃâðòÃâÃâ¬Ã° "), 7891 lastDay: processHoursFunction("[ÃâÃâ¡Ã¾Ãâ¬Ã° "), 7892 nextWeek: processHoursFunction("[ã] dddd ["), 7893 lastWeek: function() { 7894 switch (this.day()) { 7895 case 0: 7896 case 3: 7897 case 5: 7898 case 6: 7899 return processHoursFunction("[ÃÅøÃÂ½ÃÆÃ»Ã¾Ãâ] dddd [").call(this); 7900 case 1: 7901 case 2: 7902 case 4: 7903 return processHoursFunction("[ÃÅøÃÂ½ÃÆÃ»Ã¾Ã³Ã¾] dddd [").call(this) 7904 } 7905 }, 7906 sameElse: "L" 7907 }, 7908 relativeTime: { future: "÷ð %s", past: "%s ÃâþÃÂ¼ÃÆ", s: "ôõúÃâûÃÅúð ÃÂõÃÂºÃÆÃ½Ã´", m: uk__relativeTimeWithPlural, mm: uk__relativeTimeWithPlural, h: "óþôøÃÂ½ÃÆ", hh: uk__relativeTimeWithPlural, d: "ôõýÃÅ", dd: uk__relativeTimeWithPlural, M: "üÃâÃÂÃÂÃâ ÃÅ", MM: uk__relativeTimeWithPlural, y: "Ãâ¬Ãâú", yy: uk__relativeTimeWithPlural }, 7909 meridiemParse: /ýþÃâ¡Ãâ|Ãâ¬Ã°Ã½ÃÂºÃÆ|ôýÃÂ|òõÃâ¡Ã¾Ãâ¬Ã°/, 7910 isPM: function(input) { return /^(ôýÃÂ|òõÃâ¡Ã¾Ãâ¬Ã°)$/.test(input) }, 7911 meridiem: function(hour, minute, isLower) { return hour < 4 ? "ýþÃâ¡Ãâ" : hour < 12 ? "Ãâ¬Ã°Ã½ÃÂºÃÆ" : hour < 17 ? "ôýÃÂ" : "òõÃâ¡Ã¾Ãâ¬Ã°" }, 7912 ordinalParse: /\d{1,2}-(ù|óþ)/, 7913 ordinal: function(number, period) { 7914 switch (period) { 7915 case "M": 7916 case "d": 7917 case "DDD": 7918 case "w": 7919 case "W": 7920 return number + "-ù"; 7921 case "D": 7922 return number + "-óþ"; 7923 default: 7924 return number 7925 } 7926 }, 7927 week: { dow: 1, doy: 7 } 7928 }), moment__default.defineLocale("uz", { months: "ÃÂýòðÃâ¬_ÃâõòÃâ¬Ã°Ã»_üðÃâ¬Ãâ_ðÿÃâ¬ÃµÃ»_üðù_øÎý_øÎû_ðòÃÂ³ÃÆÃÂÃâ_ÃÂõýÃâÃÂñÃâ¬_þúÃâÃÂñÃâ¬_ýþÃÂñÃâ¬_ôõúðñÃâ¬".split("_"), monthsShort: "ÃÂýò_Ãâõò_üðÃâ¬_ðÿÃâ¬_üðù_øÎý_øÎû_ðòó_ÃÂõý_þúÃâ_ýþÃÂ_ôõú".split("_"), weekdays: "ïúÃËðýñð_ÃâÃÆÃËðýñð_áõÃËðýñð_çþÃâ¬ÃËðýñð_ßðùÃËðýñð_ÃâÃÆÃ¼Ã°_èðýñð".split("_"), weekdaysShort: "ïúÃË_ÃâÃÆÃË_áõÃË_çþÃâ¬_ßðù_ÃâÃÆÃ¼_èðý".split("_"), weekdaysMin: "ïú_ÃâÃÆ_áõ_çþ_ßð_ÃâÃÆ_èð".split("_"), longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "D MMMM YYYY, dddd HH:mm" }, calendar: { sameDay: "[ÃâÃÆÃÂ³ÃÆÃ½ ÃÂþðÃâ] LT [ôð]", nextDay: "[ÃÂÃâ¬Ãâðóð] LT [ôð]", nextWeek: "dddd [ÃÂºÃÆÃ½Ã¸ ÃÂþðÃâ] LT [ôð]", lastDay: "[ÚõÃâ¡Ã° ÃÂþðÃâ] LT [ôð]", lastWeek: "[ãÃâóðý] dddd [ÃÂºÃÆÃ½Ã¸ ÃÂþðÃâ] LT [ôð]", sameElse: "L" }, relativeTime: { future: "ïúøý %s øÃâ¡Ã¸Ã´Ã°", past: "ÃâøÃ⬠ýõÃâ¡Ã° %s þûôøý", s: "ÃâÃÆÃâ¬ÃÂðÃâ", m: "ñøÃ⬠ôðúøúð", mm: "%d ôðúøúð", h: "ñøÃ⬠ÃÂþðÃâ", hh: "%d ÃÂþðÃâ", d: "ñøÃ⬠ÃÂºÃÆÃ½", dd: "%d ÃÂºÃÆÃ½", M: "ñøÃ⬠þù", MM: "%d þù", y: "ñøÃ⬠ùøû", yy: "%d ùøû" }, week: { dow: 1, doy: 7 } }), moment__default.defineLocale("vi", { months: "tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"), monthsShort: "Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"), monthsParseExact: !0, weekdays: "chá»§ nháºÂt_thứ hai_thứ ba_thứ tð_thứ nÃÆ
7928m_thứ sáu_thứ bảy".split("_"), weekdaysShort: "CN_T2_T3_T4_T5_T6_T7".split("_"), weekdaysMin: "CN_T2_T3_T4_T5_T6_T7".split("_"), weekdaysParseExact: !0, meridiemParse: /sa|ch/i, isPM: function(input) { return /^ch$/i.test(input) }, meridiem: function(hours, minutes, isLower) { return hours < 12 ? isLower ? "sa" : "SA" : isLower ? "ch" : "CH" }, longDateFormat: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM [nÃÆm] YYYY", LLL: "D MMMM [nÃÆm] YYYY HH:mm", LLLL: "dddd, D MMMM [nÃÆm] YYYY HH:mm", l: "DD/M/YYYY", ll: "D MMM YYYY", lll: "D MMM YYYY HH:mm", llll: "ddd, D MMM YYYY HH:mm" }, calendar: { sameDay: "[Hôm nay lúc] LT", nextDay: "[Ngà y mai lúc] LT", nextWeek: "dddd [tuần tá»âºi lúc] LT", lastDay: "[Hôm qua lúc] LT", lastWeek: "dddd [tuần rá»âi lúc] LT", sameElse: "L" }, relativeTime: { future: "%s tá»âºi", past: "%s trðá»âºc", s: "và i giây", m: "má»â¢t phút", mm: "%d phút", h: "má»â¢t giá»Â", hh: "%d giá»Â", d: "má»â¢t ngà y", dd: "%d ngà y", M: "má»â¢t tháng", MM: "%d tháng", y: "má»â¢t nÃÆm", yy: "%d nÃÆm" }, ordinalParse: /\d{1,2}/, ordinal: function(number) { return number }, week: { dow: 1, doy: 4 } }), moment__default.defineLocale("x-pseudo", { 7929 months: "J~áñúá~rý_F~ébrú~árý_~Márc~h_ÃÂp~rÃÂl_~Máý_~Júñé~_Júl~ý_ÃÂú~gúst~_Sép~témb~ér_Ãâ~ctób~ér_Ãâ~óvém~bér_~Décé~mbér".split("_"), 7930 monthsShort: "J~áñ_~Féb_~Már_~ÃÂpr_~Máý_~Júñ_~Júl_~ÃÂúg_~Sép_~Ãâct_~Ãâóv_~Déc".split("_"), 7931 monthsParseExact: !0, 7932 weekdays: "S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~FrÃÂd~áý_S~átúr~dáý".split("_"), 7933 weekdaysShort: "S~úñ_~Móñ_~Túé_~Wéd_~Thú_~FrÃÂ_~Sát".split("_"), 7934 weekdaysMin: "S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá".split("_"), 7935 weekdaysParseExact: !0, 7936 longDateFormat: { LT: "HH:mm", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, 7937 calendar: { sameDay: "[T~ódá~ý át] LT", nextDay: "[T~ómó~rró~w át] LT", nextWeek: "dddd [át] LT", lastDay: "[ÃÂ~ést~érdá~ý át] LT", lastWeek: "[L~ást] dddd [át] LT", sameElse: "L" }, 7938 relativeTime: { future: "ÃÂ~ñ %s", past: "%s á~gó", s: "á ~féw ~sécó~ñds", m: "á ~mÃÂñ~úté", mm: "%d m~ÃÂñú~tés", h: "á~ñ hó~úr", hh: "%d h~óúrs", d: "á ~dáý", dd: "%d d~áýs", M: "á ~móñ~th", MM: "%d m~óñt~hs", y: "á ~ýéár", yy: "%d ý~éárs" }, 7939 ordinalParse: /\d{1,2}(th|st|nd|rd)/, 7940 ordinal: function(number) { 7941 var b = number % 10, 7942 output = 1 === ~~(number % 100 / 10) ? "th" : 1 === b ? "st" : 2 === b ? "nd" : 3 === b ? "rd" : "th"; 7943 return number + output 7944 }, 7945 week: { dow: 1, doy: 4 } 7946 }), moment__default.defineLocale("zh-cn", { 7947 months: "ä¸â¬Ã¦ÅË_äºÅæÅË_ä¸â°Ã¦ÅË_Ã¥âºâºÃ¦ÅË_äºâæÅË_Ã¥â¦ÂæÅË_ä¸ÆÃ¦ÅË_Ã¥â¦Â«Ã¦ÅË_ä¹ÂæÅË_Ã¥ÂÂæÅË_Ã¥ÂÂä¸â¬Ã¦ÅË_Ã¥ÂÂäºÅæÅË".split("_"), 7948 monthsShort: "1æÅË_2æÅË_3æÅË_4æÅË_5æÅË_6æÅË_7æÅË_8æÅË_9æÅË_10æÅË_11æÅË_12æÅË".split("_"), 7949 weekdays: "æËŸæÅŸæâÂ¥_æËŸæÅŸä¸â¬_æËŸæÅŸäºÅ_æËŸæÅŸä¸â°_æËŸæÅŸåâºâº_æËŸæÅŸäºâ_æËŸæÅŸåâ¦Â".split("_"), 7950 weekdaysShort: "Ã¥â¨æâÂ¥_Ã¥â¨ä¸â¬_Ã¥â¨äºÅ_Ã¥â¨ä¸â°_Ã¥â¨åâºâº_Ã¥â¨äºâ_Ã¥â¨åâ¦Â".split("_"), 7951 weekdaysMin: "æâÂ¥_ä¸â¬_äºÅ_ä¸â°_Ã¥âºâº_äºâ_Ã¥â¦Â".split("_"), 7952 longDateFormat: { LT: "Ahçâ¹mmÃ¥Ëâ ", LTS: "Ahçâ¹mÃ¥Ëâ sç§â", L: "YYYY-MM-DD", LL: "YYYYå¹´MMMDæâÂ¥", LLL: "YYYYå¹´MMMDæâÂ¥Ahçâ¹mmÃ¥Ëâ ", LLLL: "YYYYå¹´MMMDæâÂ¥ddddAhçâ¹mmÃ¥Ëâ ", l: "YYYY-MM-DD", ll: "YYYYå¹´MMMDæâÂ¥", lll: "YYYYå¹´MMMDæâÂ¥Ahçâ¹mmÃ¥Ëâ ", llll: "YYYYå¹´MMMDæâÂ¥ddddAhçâ¹mmÃ¥Ëâ " }, 7953 meridiemParse: /Ã¥â¡Åæâ¢Â¨|æâ©ä¸Š|上åÂË|ä¸ÂÃ¥ÂË|ä¸â¹Ã¥ÂË|æâ¢Å¡Ã¤Â¸Å /, 7954 meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "Ã¥â¡Åæâ¢Â¨" === meridiem || "æâ©ä¸Š" === meridiem || "上åÂË" === meridiem ? hour : "ä¸â¹Ã¥ÂË" === meridiem || "æâ¢Å¡Ã¤Â¸Å " === meridiem ? hour + 12 : hour >= 11 ? hour : hour + 12 }, 7955 meridiem: function(hour, minute, isLower) { var hm = 100 * hour + minute; return hm < 600 ? "Ã¥â¡Åæâ¢Â¨" : hm < 900 ? "æâ©ä¸Š" : hm < 1130 ? "上åÂË" : hm < 1230 ? "ä¸ÂÃ¥ÂË" : hm < 1800 ? "ä¸â¹Ã¥ÂË" : "æâ¢Å¡Ã¤Â¸Å " }, 7956 calendar: { sameDay: function() { return 0 === this.minutes() ? "[今天]Ah[çâ¹æâ¢Â´]" : "[今天]LT" }, nextDay: function() { return 0 === this.minutes() ? "[æËŽå¤©]Ah[çâ¹æâ¢Â´]" : "[æËŽå¤©]LT" }, lastDay: function() { return 0 === this.minutes() ? "[æË¨å¤©]Ah[çâ¹æâ¢Â´]" : "[æË¨å¤©]LT" }, nextWeek: function() { var startOfWeek, prefix; return startOfWeek = moment__default().startOf("week"), prefix = this.diff(startOfWeek, "days") >= 7 ? "[ä¸â¹]" : "[æÅ¬]", 0 === this.minutes() ? prefix + "dddAhçâ¹æâ¢Â´" : prefix + "dddAhçâ¹mm" }, lastWeek: function() { var startOfWeek, prefix; return startOfWeek = moment__default().startOf("week"), prefix = this.unix() < startOfWeek.unix() ? "[上]" : "[æÅ¬]", 0 === this.minutes() ? prefix + "dddAhçâ¹æâ¢Â´" : prefix + "dddAhçâ¹mm" }, sameElse: "LL" }, 7957 ordinalParse: /\d{1,2}(æâÂ¥|æÅË|Ã¥â¨)/, 7958 ordinal: function(number, period) { 7959 switch (period) { 7960 case "d": 7961 case "D": 7962 case "DDD": 7963 return number + "æâÂ¥"; 7964 case "M": 7965 return number + "æÅË"; 7966 case "w": 7967 case "W": 7968 return number + "Ã¥â¨"; 7969 default: 7970 return number 7971 } 7972 }, 7973 relativeTime: { future: "%sÃ¥â â¦", past: "%sÃ¥â°Â", s: "å⡠ç§â", m: "1 Ã¥Ëâ éâŸ", mm: "%d Ã¥Ëâ éâŸ", h: "1 å°Âæâ¶", hh: "%d å°Âæâ¶", d: "1 天", dd: "%d 天", M: "1 个æÅË", MM: "%d 个æÅË", y: "1 å¹´", yy: "%d å¹´" }, 7974 week: { dow: 1, doy: 4 } 7975 }), moment__default.defineLocale("zh-hk", { 7976 months: "ä¸â¬Ã¦ÅË_äºÅæÅË_ä¸â°Ã¦ÅË_Ã¥âºâºÃ¦ÅË_äºâæÅË_Ã¥â¦ÂæÅË_ä¸ÆÃ¦ÅË_Ã¥â¦Â«Ã¦ÅË_ä¹ÂæÅË_Ã¥ÂÂæÅË_Ã¥ÂÂä¸â¬Ã¦ÅË_Ã¥ÂÂäºÅæÅË".split("_"), 7977 monthsShort: "1æÅË_2æÅË_3æÅË_4æÅË_5æÅË_6æÅË_7æÅË_8æÅË_9æÅË_10æÅË_11æÅË_12æÅË".split("_"), 7978 weekdays: "æËŸæÅŸæâÂ¥_æËŸæÅŸä¸â¬_æËŸæÅŸäºÅ_æËŸæÅŸä¸â°_æËŸæÅŸåâºâº_æËŸæÅŸäºâ_æËŸæÅŸåâ¦Â".split("_"), 7979 weekdaysShort: "éâ¬Â±Ã¦âÂ¥_éâ¬Â±Ã¤Â¸â¬_éâ¬Â±Ã¤ÂºÅ_éâ¬Â±Ã¤Â¸â°_éâ¬Â±Ã¥âºâº_éâ¬Â±Ã¤Âºâ_éâ¬Â±Ã¥â¦Â".split("_"), 7980 weekdaysMin: "æâÂ¥_ä¸â¬_äºÅ_ä¸â°_Ã¥âºâº_äºâ_Ã¥â¦Â".split("_"), 7981 longDateFormat: { LT: "Ah點mmÃ¥Ëâ ", LTS: "Ah點mÃ¥Ëâ sç§â", L: "YYYYå¹´MMMDæâÂ¥", LL: "YYYYå¹´MMMDæâÂ¥", LLL: "YYYYå¹´MMMDæâÂ¥Ah點mmÃ¥Ëâ ", LLLL: "YYYYå¹´MMMDæâÂ¥ddddAh點mmÃ¥Ëâ ", l: "YYYYå¹´MMMDæâÂ¥", ll: "YYYYå¹´MMMDæâÂ¥", lll: "YYYYå¹´MMMDæâÂ¥Ah點mmÃ¥Ëâ ", llll: "YYYYå¹´MMMDæâÂ¥ddddAh點mmÃ¥Ëâ " }, 7982 meridiemParse: /Ã¥â¡Åæâ¢Â¨|æâ©ä¸Š|上åÂË|ä¸ÂÃ¥ÂË|ä¸â¹Ã¥ÂË|æâ¢Å¡Ã¤Â¸Å /, 7983 meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "Ã¥â¡Åæâ¢Â¨" === meridiem || "æâ©ä¸Š" === meridiem || "上åÂË" === meridiem ? hour : "ä¸ÂÃ¥ÂË" === meridiem ? hour >= 11 ? hour : hour + 12 : "ä¸â¹Ã¥ÂË" === meridiem || "æâ¢Å¡Ã¤Â¸Å " === meridiem ? hour + 12 : void 0 }, 7984 meridiem: function(hour, minute, isLower) { var hm = 100 * hour + minute; return hm < 600 ? "Ã¥â¡Åæâ¢Â¨" : hm < 900 ? "æâ©ä¸Š" : hm < 1130 ? "上åÂË" : hm < 1230 ? "ä¸ÂÃ¥ÂË" : hm < 1800 ? "ä¸â¹Ã¥ÂË" : "æâ¢Å¡Ã¤Â¸Å " }, 7985 calendar: { sameDay: "[今天]LT", nextDay: "[æËŽå¤©]LT", nextWeek: "[ä¸â¹]ddddLT", lastDay: "[æË¨å¤©]LT", lastWeek: "[上]ddd
7985dLT", sameElse: "L" }, 7986 ordinalParse: /\d{1,2}(æâÂ¥|æÅË|éâ¬Â±)/, 7987 ordinal: function(number, period) { 7988 switch (period) { 7989 case "d": 7990 case "D": 7991 case "DDD": 7992 return number + "æâÂ¥"; 7993 case "M": 7994 return number + "æÅË"; 7995 case "w": 7996 case "W": 7997 return number + "éâ¬Â±"; 7998 default: 7999 return number 8000 } 8001 }, 8002 relativeTime: { future: "%sÃ¥â¦Â§", past: "%sÃ¥â°Â", s: "å¹¾ç§â", m: "1 Ã¥Ëâ éÂË", mm: "%d Ã¥Ëâ éÂË", h: "1 å°Âæâ¢â", hh: "%d å°Âæâ¢â", d: "1 天", dd: "%d 天", M: "1 Ã¥â¬â¹Ã¦ÅË", MM: "%d Ã¥â¬â¹Ã¦ÅË", y: "1 å¹´", yy: "%d å¹´" } 8003 }), moment__default.defineLocale("zh-tw", { 8004 months: "ä¸â¬Ã¦ÅË_äºÅæÅË_ä¸â°Ã¦ÅË_Ã¥âºâºÃ¦ÅË_äºâæÅË_Ã¥â¦ÂæÅË_ä¸ÆÃ¦ÅË_Ã¥â¦Â«Ã¦ÅË_ä¹ÂæÅË_Ã¥ÂÂæÅË_Ã¥ÂÂä¸â¬Ã¦ÅË_Ã¥ÂÂäºÅæÅË".split("_"), 8005 monthsShort: "1æÅË_2æÅË_3æÅË_4æÅË_5æÅË_6æÅË_7æÅË_8æÅË_9æÅË_10æÅË_11æÅË_12æÅË".split("_"), 8006 weekdays: "æËŸæÅŸæâÂ¥_æËŸæÅŸä¸â¬_æËŸæÅŸäºÅ_æËŸæÅŸä¸â°_æËŸæÅŸåâºâº_æËŸæÅŸäºâ_æËŸæÅŸåâ¦Â".split("_"), 8007 weekdaysShort: "éâ¬Â±Ã¦âÂ¥_éâ¬Â±Ã¤Â¸â¬_éâ¬Â±Ã¤ÂºÅ_éâ¬Â±Ã¤Â¸â°_éâ¬Â±Ã¥âºâº_éâ¬Â±Ã¤Âºâ_éâ¬Â±Ã¥â¦Â".split("_"), 8008 weekdaysMin: "æâÂ¥_ä¸â¬_äºÅ_ä¸â°_Ã¥âºâº_äºâ_Ã¥â¦Â".split("_"), 8009 longDateFormat: { LT: "Ah點mmÃ¥Ëâ ", LTS: "Ah點mÃ¥Ëâ sç§â", L: "YYYYå¹´MMMDæâÂ¥", LL: "YYYYå¹´MMMDæâÂ¥", LLL: "YYYYå¹´MMMDæâÂ¥Ah點mmÃ¥Ëâ ", LLLL: "YYYYå¹´MMMDæâÂ¥ddddAh點mmÃ¥Ëâ ", l: "YYYYå¹´MMMDæâÂ¥", ll: "YYYYå¹´MMMDæâÂ¥", lll: "YYYYå¹´MMMDæâÂ¥Ah點mmÃ¥Ëâ ", llll: "YYYYå¹´MMMDæâÂ¥ddddAh點mmÃ¥Ëâ " }, 8010 meridiemParse: /Ã¥â¡Åæâ¢Â¨|æâ©ä¸Š|上åÂË|ä¸ÂÃ¥ÂË|ä¸â¹Ã¥ÂË|æâ¢Å¡Ã¤Â¸Å /, 8011 meridiemHour: function(hour, meridiem) { return 12 === hour && (hour = 0), "Ã¥â¡Åæâ¢Â¨" === meridiem || "æâ©ä¸Š" === meridiem || "上åÂË" === meridiem ? hour : "ä¸ÂÃ¥ÂË" === meridiem ? hour >= 11 ? hour : hour + 12 : "ä¸â¹Ã¥ÂË" === meridiem || "æâ¢Å¡Ã¤Â¸Å " === meridiem ? hour + 12 : void 0 }, 8012 meridiem: function(hour, minute, isLower) { var hm = 100 * hour + minute; return hm < 600 ? "Ã¥â¡Åæâ¢Â¨" : hm < 900 ? "æâ©ä¸Š" : hm < 1130 ? "上åÂË" : hm < 1230 ? "ä¸ÂÃ¥ÂË" : hm < 1800 ? "ä¸â¹Ã¥ÂË" : "æâ¢Å¡Ã¤Â¸Å " }, 8013 calendar: { sameDay: "[今天]LT", nextDay: "[æËŽå¤©]LT", nextWeek: "[ä¸â¹]ddddLT", lastDay: "[æË¨å¤©]LT", lastWeek: "[上]ddddLT", sameElse: "L" }, 8014 ordinalParse: /\d{1,2}(æâÂ¥|æÅË|éâ¬Â±)/, 8015 ordinal: function(number, period) { 8016 switch (period) { 8017 case "d": 8018 case "D": 8019 case "DDD": 8020 return number + "æâÂ¥"; 8021 case "M": 8022 return number + "æÅË"; 8023 case "w": 8024 case "W": 8025 return number + "éâ¬Â±"; 8026 default: 8027 return number 8028 } 8029 }, 8030 relativeTime: { future: "%sÃ¥â¦Â§", past: "%sÃ¥â°Â", s: "å¹¾ç§â", m: "1 Ã¥Ëâ éÂË", mm: "%d Ã¥Ëâ éÂË", h: "1 å°Âæâ¢â", hh: "%d å°Âæâ¢â", d: "1 天", dd: "%d 天", M: "1 Ã¥â¬â¹Ã¦ÅË", MM: "%d Ã¥â¬â¹Ã¦ÅË", y: "1 å¹´", yy: "%d å¹´" } 8031 }), moment__default); 8032 return moment_with_locales.locale("en"), moment_with_locales 8033 }); 8034var DateFormatter; 8035! function() { 8036 "use strict"; 8037 var _compare, _lpad, _extend, defaultSettings, DAY, HOUR; 8038 DAY = 864e5, HOUR = 3600, _compare = function(str1, str2) { return "string" == typeof str1 && "string" == typeof str2 && str1.toLowerCase() === str2.toLowerCase() }, _lpad = function(value, length, char) { 8039 var chr = char || "0", 8040 val = value.toString(); 8041 return val.length < length ? _lpad(chr + val, length) : val 8042 }, _extend = function(out) { 8043 var i, obj; 8044 for (out = out || {}, i = 1; i < arguments.length; i++) 8045 if (obj = arguments[i]) 8046 for (var key in obj) obj.hasOwnProperty(key) && ("object" == typeof obj[key] ? _extend(out[key], obj[key]) : out[key] = obj[key]); 8047 return out 8048 }, defaultSettings = { 8049 dateSettings: { 8050 days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], 8051 daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], 8052 months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "
8052November", "December"], 8053 monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], 8054 meridiem: ["AM", "PM"], 8055 ordinal: function(number) { 8056 var n = number % 10, 8057 suffixes = { 1: "st", 2: "nd", 3: "rd" }; 8058 return 1 !== Math.floor(number % 100 / 10) && suffixes[n] ? suffixes[n] : "th" 8059 } 8060 }, 8061 separators: /[ \-+\/\.T:@]/g, 8062 validParts: /[dDjlNSwzWFmMntLoYyaABgGhHisueTIOPZcrU]/g, 8063 intParts: /[djwNzmnyYhHgGis]/g, 8064 tzParts: /\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g, 8065 tzClip: /[^-+\dA-Z]/g 8066 }, DateFormatter = function(options) { 8067 var self = this, 8068 config = _extend(defaultSettings, options); 8069 self.dateSettings = config.dateSettings, self.separators = config.separators, self.validParts = config.validParts, self.intParts = config.intParts, self.tzParts = config.tzParts, self.tzClip = config.tzClip 8070 }, DateFormatter.prototype = { 8071 constructor: DateFormatter, 8072 parseDate: function(vDate, vFormat) { 8073 var vFormatParts, vDateParts, i, vDatePart, iDatePart, vMonth, vMeriIndex, vMeriOffset, len, mer, self = this, 8074 vDateFlag = !1, 8075 vTimeFlag = !1, 8076 vSettings = self.dateSettings, 8077 out = { date: null, year: null, month: null, day: null, hour: 0, min: 0, sec: 0 }; 8078 if (vDate) { 8079 if (vDate instanceof Date) return vDate; 8080 if ("number" == typeof vDate) return new Date(vDate); 8081 if ("U" === vFormat) return i = parseInt(vDate), i ? new Date(1e3 * i) : vDate; 8082 if ("string" != typeof vDate) return ""; 8083 if (vFormatParts = vFormat.match(self.validParts), !vFormatParts || 0 === vFormatParts.length) throw new Error("Invalid date format definition."); 8084 for (vDateParts = vDate.replace(self.separators, "\0").split("\0"), i = 0; i < vDateParts.length; i++) switch (vDatePart = vDateParts[i], iDatePart = parseInt(vDatePart), vFormatParts[i]) { 8085 case "y": 8086 case "Y": 8087 len = vDatePart.length, 2 === len ? out.year = parseInt((iDatePart < 70 ? "20" : "19") + vDatePart) : 4 === len && (out.year = iDatePart), vDateFlag = !0; 8088 break; 8089 case "m": 8090 case "n": 8091 case "M": 8092 case "F": 8093 isNaN(vDatePart) ? (vMonth = vSettings.monthsShort.indexOf(vDatePart), vMonth > -1 && (out.month = vMonth + 1), vMonth = vSettings.months.indexOf(vDatePart), vMonth > -1 && (out.month = vMonth + 1)) : iDatePart >= 1 && iDatePart <= 12 && (out.month = iDatePart), vDateFlag = !0; 8094 break; 8095 case "d": 8096 case "j": 8097 iDatePart >= 1 && iDatePart <= 31 && (out.day = iDatePart), vDateFlag = !0; 8098 break; 8099 case "g": 8100 case "h": 8101 vMeriIndex = vFormatParts.indexOf("a") > -1 ? vFormatParts.indexOf("a") : vFormatParts.indexOf("A") > -1 ? vFormatParts.indexOf("A") : -1, mer = vDateParts[vMeriIndex], vMeriIndex > -1 ? (vMeriOffset = _compare(mer, vSettings.meridiem[0]) ? 0 : _compare(mer, vSettings.meridiem[1]) ? 12 : -1, iDatePart >= 1 && iDatePart <= 12 && vMeriOffset > -1 ? out.hour = iDatePart + vMeriOffset : iDatePart >= 0 && iDatePart <= 23 && (out.hour = iDatePart)) : iDatePart >= 0 && iDatePart <= 23 && (out.hour = iDatePart), vTimeFlag = !0; 8102 break; 8103 case "G": 8104 case "H": 8105 iDatePart >= 0 && iDatePart <= 23 && (out.hour = iDatePart), vTimeFlag = !0; 8106 break; 8107 case "i": 8108 iDatePart >= 0 && iDatePart <= 59 && (out.min = iDatePart), vTimeFlag = !0; 8109 break; 8110 case "s": 8111 iDatePart >= 0 && iDatePart <= 59 && (out.sec = iDatePart), vTimeFlag = !0 8112 } 8113 if (vDateFlag === !0 && out.year && out.month && out.day) out.date = new Date(out.year, out.month - 1, out.day, out.hour, out.min, out.sec, 0); 8114 else { 8115 if (vTimeFlag !== !0) return !1; 8116 out.date = new Date(0, 0, 0, out.hour, out.min, out.sec, 0) 8117 } 8118 return out.date 8119 } 8120 }, 8121 guessDate: function(vDateStr, vFormat) { 8122 if ("string" != typeof vDateStr) return vDateStr; 8123 var vYear, i, iPart, iSec, self = this, 8124 vParts = vDateStr.replace(self.separators, "\0").split("\0"), 8125 vPattern = /^[djmn]/g, 8126 vFormatParts = vFormat.match(self.validParts), 8127 vDate = new Date, 8128 vDigit = 0; 8129 if (!vPattern.test(vFormatParts[0])) return vDateStr; 8130 for (i = 0; i < vParts.length; i++) { 8131 switch (vDigit = 2, iPart = vParts[i], iSec = parseInt(iPart.substr(0, 2)), i) { 8132 case 0: 8133 "m" === vFormatParts[0] || "n" === vFormatParts[0] ? vDate.setMonth(iSec - 1) : vDate.setDate(iSec); 8134 break; 8135 case 1: 8136 "m" === vFormatParts[0] || "n" === vFormatParts[0] ? vDate.setDate(iSec) : vDate.setMonth(iSec - 1); 8137 break; 8138 case 2: 8139 vYear = vDate.getFullYear(), iPart.length < 4 ? (vDate.setFullYear(parseInt(vYear.toString().substr(0, 4 - iPart.length) + iPart)), vDigit = iPart.length) : (vDate.setFullYear = parseInt(iPart.substr(0, 4)), vDigit = 4); 8140 break; 8141 case 3: 8142 vDate.setHours(iSec); 8143 break; 8144 case 4: 8145 vDate.setMinutes(iSec); 8146 break; 8147 case 5: 8148 vDate.setSeconds(iSec) 8149 } 8150 iPart.substr(vDigit).length > 0 && vParts.splice(i + 1, 0, iPart.substr(vDigit)) 8151 } 8152 return vDate 8153 }, 8154 parseFormat: function(vChar, vDate) { 8155 var fmt, self = this, 8156 vSettings = self.dateSettings, 8157 backspace = /\\?(.?)/gi, 8158 doFormat = function(t, s) { return fmt[t] ? fmt[t]() : s }; 8159 return fmt = { 8160 d: function() { return _lpad(fmt.j(), 2) }, 8161 D: function() { return vSettings.daysShort[fmt.w()] }, 8162 j: function() { return vDate.getDate() }, 8163 l: function() { return vSettings.days[fmt.w()] }, 8164 N: function() { return fmt.w() || 7 }, 8165 w: function() { return vDate.getDay() }, 8166 z: function() { 8167 var a = new Date(fmt.Y(), fmt.n() - 1, fmt.j()), 8168 b = new Date(fmt.Y(), 0, 1); 8169 return Math.round((a - b) / DAY) 8170 }, 8171 W: function() { 8172 var a = new Date(fmt.Y(), fmt.n() - 1, fmt.j() - fmt.N() + 3), 8173 b = new Date(a.getFullYear(), 0, 4); 8174 return _lpad(1 + Math.round((a - b) / DAY / 7), 2) 8175 }, 8176 F: function() { return vSettings.months[vDate.getMonth()] }, 8177 m: function() { return _lpad(fmt.n(), 2) }, 8178 M: function() { return vSettings.monthsShort[vDate.getMonth()] }, 8179 n: function() { return vDate.getMonth() + 1 }, 8180 t: function() { return new Date(fmt.Y(), fmt.n(), 0).getDate() }, 8181 L: function() { var Y = fmt.Y(); return Y % 4 === 0 && Y % 100 !== 0 || Y % 400 === 0 ? 1 : 0 }, 8182 o: function() { 8183 var n = fmt.n(), 8184 W = fmt.W(), 8185 Y = fmt.Y(); 8186 return Y + (12 === n && W < 9 ? 1 : 1 === n && W > 9 ? -1 : 0) 8187 }, 8188 Y: function() { return vDate.getFullYear() }, 8189 y: function() { return fmt.Y().toString().slice(-2) }, 8190 a: function() { return fmt.A().toLowerCase() }, 8191 A: function() { var n = fmt.G() < 12 ? 0 : 1; return vSettings.meridiem[n] }, 8192 B: function() { 8193 var H = vDate.getUTCHours() * HOUR, 8194 i = 60 * vDate.getUTCMinutes(), 8195 s = vDate.getUTCSeconds(); 8196 return _lpad(Math.floor((H + i + s + HOUR) / 86.4) % 1e3, 3) 8197 }, 8198 g: function() { return fmt.G() % 12 || 12 }, 8199 G: function() { return vDate.getHours() }, 8200 h: function() { return _lpad(fmt.g(), 2) }, 8201 H: function() { return _lpad(fmt.G(), 2) }, 8202 i: function() { return _lpad(vDate.getMinutes(), 2) }, 8203 s: function() { return _lpad(vDate.getSeconds(), 2) }, 8204 u: function() { return _lpad(1e3 * vDate.getMilliseconds(), 6) }, 8205 e: function() { var str = /\((.*)\)/.exec(String(vDate))[1]; return str || "Coordinated Universal Time" }, 8206 T: function() { var str = (String(vDate).match(self.tzParts) || [""]).pop().replace(self.tzClip, ""); return str || "UTC" }, 8207 I: function() { 8208 var a = new Date(fmt.Y(), 0), 8209 c = Date.UTC(fmt.Y(), 0), 8210 b = new Date(fmt.Y(), 6), 8211 d = Date.UTC(fmt.Y(), 6); 8212 return a - c !== b - d ? 1 : 0 8213 }, 8214 O: function() { 8215 var tzo = vDate.getTimezoneOffset(), 8216 a = Math.abs(tzo); 8217 return (tzo > 0 ? "-" : "+") + _lpad(100 * Math.floor(a / 60) + a % 60, 4) 8218 }, 8219 P: function() { var O = fmt.O(); return O.substr(0, 3) + ":" + O.substr(3, 2) }, 8220 Z: function() { return 60 * -vDate.getTimezoneOffset() }, 8221 c: function() { return "Y-m-d\\TH:i:sP".replace(backspace, doFormat) }, 8222 r: function() { return "D, d M Y H:i:s O".replace(backspace, doFormat) }, 8223 U: function() { return vDate.getTime() / 1e3 || 0 } 8224 }, doFormat(vChar, vChar) 8225 }, 8226 formatDate: function(vDate, vFormat) { 8227 var i, n, len, str, vChar, self = this, 8228 vDateStr = ""; 8229 if ("string" == typeof vDate && (vDate = self.parseDate(vDate, vFormat), vDate === !1)) return !1; 8230 if (vDate instanceof Date) { for (len = vFormat.length, i = 0; i < len; i++) vChar = vFormat.charAt(i), "S" !== vChar && (str = self.parseFormat(vChar, vDate), i !== len - 1 && self.intParts.test(vChar) && "S" === vFormat.charAt(i + 1) && (n = parseInt(str), str += self.dateSettings.ordinal(n)), vDateStr += str); return vDateStr } 8231 return "" 8232 } 8233 } 8234}(), 8235function(factory) { "function" == typeof define && define.amd ? define(["jquery", "jquery-mousewheel"], factory) : "object" == typeof exports ? module.exports = factory : factory(jQuery) }(function($) { 8236 "use strict"; 8237 8238 function HighlightedDate(date, desc, style) { this.date = date, this.desc = desc, this.style = style } 8239 var currentlyScrollingTimeDiv = !1, 8240 default_options = { i18n: { ar: { months: ["̮̤Ãâ ÃËÃâ çÃâëçÃâ ÃÅ ", "ôèç÷", "âðçñ", "Ãâ ÊóçÃâ ", "Ãâ¦Ã§ÃÅ ÃË", "ÃÂòÊñçÃâ ", "êÃâ¦ÃËò", "âè", "ãÃÅ ÃâÃËÃâ", "êôñÃÅ Ãâ çÃâãÃËÃâ", "êôñÃÅ Ãâ çÃâëçÃâ ÃÅ ", "̮̤Ãâ ÃËÃâ çÃâãÃËÃâ"], dayOfWeekShort: ["Ãâ ", "ë", "ù", "î", "ì", "ó", "ÃÂ"], dayOfWeek: ["çÃâãÃÂï", "çÃâçëÃâ ÃÅ Ãâ ", "çÃâëÃâçëçá", "çÃâãñèùçá", "çÃâîÃâ¦ÃŠó", "çÃâìÃâ¦Ã¹Ã©", "çÃâóèê", "çÃâãÃÂï"] }, ro: { months: ["Ianuarie", "Februarie", "Martie", "Aprilie", "Mai", "Iunie", "Iulie", "August", "Septembrie", "Octombrie", "Noiembrie", "Decembrie"], dayOfWeekShort: ["Du", "Lu", "Ma", "Mi", "Jo", "Vi", "Sâ"], dayOfWeek: ["DuminicÃÆ", "Luni", "Marà £i", "Miercuri", "Joi", "Vineri", "SâmbÃÆtÃÆ"] }, id: { months: ["Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "
8240November", "Desember"], dayOfWeekShort: ["Min", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab"], dayOfWeek: ["Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"] }, is: { months: ["Janúar", "Febrúar", "Mars", "AprÃÂl", "MaÃÂ", "JúnÃÂ", "JúlÃÂ", "ÃÂgúst", "September", "Október", "Nóvember", "Desember"], dayOfWeekShort: ["Sun", "Mán", "Þrið", "Mið", "Fim", "Fös", "Lau"], dayOfWeek: ["Sunnudagur", "Mánudagur", "Þriðjudagur", "Miðvikudagur", "Fimmtudagur", "Föstudagur", "Laugardagur"] }, bg: { months: ["ïÃÂ½ÃÆÃ°Ãâ¬Ã¸", "äõòÃâ¬ÃÆÃ°Ãâ¬Ã¸", "ÃÅðÃâ¬Ãâ", "ÃÂÿÃâ¬Ã¸Ã»", "ÃÅðù", "îýø", "îûø", "ÃÂòÃÂ³ÃÆÃÂÃâ", "áõÿÃâõüòÃâ¬Ã¸", "ÞúÃâþüòÃâ¬Ã¸", "ÃÂþõüòÃâ¬Ã¸", "ÃâõúõüòÃâ¬Ã¸"], dayOfWeekShort: ["ÃÂô", "ßý", "ÃâÃâ", "áÃâ¬", "çÃâ", "ßÃâ", "áñ"], dayOfWeek: ["ÃÂõôõûÃÂ", "ßþýõôõûýøú", "ÃâÃâþÃâ¬Ã½Ã¸Ãº", "áÃâ¬ÃÂôð", "çõÃâòÃÅ Ãâ¬ÃâÊú", "ßõÃâÊú", "áÊñþÃâð"] }, fa: { months: ["ÃÂñÃËñïÃÅÃâ ", "çñïÃÅèÃâ¡Ã´Ãª", "îñïçï", "êÃÅñ", "Ãâ¦Ã±Ã¯Ã§Ã¯", "ôÃâ¡Ã±ÃÅÃËñ", "Ãâ¦Ãâ¡Ã±", "âèçÃâ ", "âðñ", "ïÃÅ", "èÃâ¡Ãâ¦Ãâ ", "çóÃÂÃâ ï"], dayOfWeekShort: ["ÃÅéôÃâ èÃâ¡", "ïÃËôÃâ èÃâ¡", "óÃ⡠ôÃâ èÃâ¡", "Ãâ Ãâ¡Ã§Ã±Ã´Ãâ èÃâ¡", "þÃâ ìôÃâ èÃâ¡", "ìÃâ¦Ã¹Ãâ¡", "ôÃâ èÃâ¡"], dayOfWeek: ["ÃÅéââ¬ÅôÃâ èÃâ¡", "ïÃËôÃâ èÃâ¡", "óÃâ¡Ã¢â¬ÅôÃâ èÃâ¡", "Ãâ Ãâ¡Ã§Ã±Ã´Ãâ èÃâ¡", "þÃâ Éâ¬ÅôÃâ èÃâ¡", "ìÃâ¦Ã¹Ãâ¡", "ôÃâ èÃâ¡", "ÃÅéââ¬ÅôÃâ èÃâ¡"] }, ru: { months: ["ïýòðÃâ¬ÃÅ", "äõòÃâ¬Ã°Ã»ÃÅ", "ÃÅðÃâ¬Ãâ", "ÃÂÿÃâ¬ÃµÃ»ÃÅ", "ÃÅðù", "ÃËÎýÃÅ", "ÃËÎûÃÅ", "ÃÂòÃÂ³ÃÆÃÂÃâ", "áõýÃâÃÂñÃâ¬ÃÅ", "ÞúÃâÃÂñÃâ¬ÃÅ", "ÃÂþÃÂñÃâ¬ÃÅ", "ÃâõúðñÃâ¬ÃÅ"], dayOfWeekShort: ["ÃâÃÂ", "ßý", "ÃâÃâ", "áÃâ¬", "çÃâ", "ßÃâ", "áñ"], dayOfWeek: ["ÃâþÃÂúÃâ¬ÃµÃÂõýÃÅõ", "ßþýõôõûÃÅýøú", "ÃâÃâþÃâ¬Ã½Ã¸Ãº", "áÃâ¬ÃµÃ´Ã°", "çõÃâòõÃâ¬Ã³", "ßÃÂÃâýøÃâ ð", "ÃÂ¡ÃÆÃ±Ã±Ã¾Ãâð"] }, uk: { months: ["áÃâÃâ¡ÃµÃ½ÃÅ", "ÃâºÃŽÃâøù", "ÃâõÃâ¬ÃµÃ·ÃµÃ½ÃÅ", "ÚòÃâÃâõýÃÅ", "âÃâ¬Ã°Ã²ÃµÃ½ÃÅ", "çõÃâ¬Ã²ÃµÃ½ÃÅ", "ÃâºÃ¸Ã¿ÃµÃ½ÃÅ", "áõÃâ¬Ã¿ÃµÃ½ÃÅ", "ÃâõÃâ¬ÃµÃÂõýÃÅ", "ÃâþòÃâõýÃÅ", "ÃâºÃ¸ÃÂÃâþÿðô", "ÃâÃâ¬ÃÆÃ´ÃµÃ½ÃÅ"], dayOfWeekShort: ["ÃÂôû", "ßýô", "ÃâÃâÃâ¬", "áÃâ¬Ã´", "çÃâò", "ßÃâý", "áñÃâ"], dayOfWeek: ["ÃÂõôÃâûÃÂ", "ßþýõôÃâûþú", "ÃâÃâòÃâþÃâ¬Ã¾Ãº", "áõÃâ¬ÃµÃ´Ã°", "çõÃâòõÃâ¬", "ß'ÃÂÃâýøÃâ ÃÂ", "ÃÂ¡ÃÆÃ±Ã¾Ãâð"] }, en: { months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "
8240November", "December"], dayOfWeekShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], dayOfWeek: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"] }, el: { months: ["Ãâ¢Ã±Ã½Ã¿Ãâ¦Ã¬ÃÂùÿÃâ", "æõòÃÂÿÃâ¦Ã¬ÃÂùÿÃâ", "ÃÅìÃÂÃâùÿÃâ", "ÃâÃâ¬ÃÂïûùÿÃâ", "ÃÅìùÿÃâ", "Ãâ¢Ã¿ÃÂýùÿÃâ", "Ãâ¢Ã¿ÃÂûùÿÃâ", "ÃâÃÂóÿÃâ¦ÃÆÃâÿÃâ", "ãõÃâ¬ÃâÃÂüòÃÂùÿÃâ", "ßúÃâÎòÃÂùÿÃâ", "ÃÂÿÃÂüòÃÂùÿÃâ", "ÃâõúÃÂüòÃÂùÿÃâ"], dayOfWeekShort: ["ÃÅ¡Ãâ¦ÃÂ", "ÃâõÃâ¦", "äÃÂù", "äõÃâ", "à õü", "à ñÃÂ", "ãñò"], dayOfWeek: ["ÃÅ¡Ãâ¦ÃÂùñúî", "ÃâõÃâ¦ÃâÃÂÃÂñ", "äÃÂïÃâ÷", "äõÃâìÃÂÃâ÷", "à ÃÂüÃâ¬Ãâ÷", "à ñÃÂÃÂ±ÃÆÃºÃµÃâ¦Ã®", "ãìòòñÃâÿ"] }, de: { months: ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"], dayOfWeekShort: ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"], dayOfWeek: ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"] }, nl: { months: ["januari", "februari", "maart", "april", "mei", "juni", "juli", "augustus", "september", "oktober", "november", "december"], dayOfWeekShort: ["zo", "ma", "di", "wo", "do", "vr", "za"], dayOfWeek: ["zondag", "maandag", "dinsdag", "woensdag", "donderdag", "vrijdag", "zaterdag"] }, tr: { months: ["Ocak", "Ã
žubat", "Mart", "Nisan", "Mayñs", "Haziran", "Temmuz", "Aßustos", "Eylül", "Ekim", "Kasñm", "Aralñk"], dayOfWeekShort: ["Paz", "Pts", "Sal", "Ãâ¡ar", "Per", "Cum", "Cts"], dayOfWeek: ["Pazar", "Pazartesi", "Salñ", "Ãâ¡arÃ
Ÿamba", "PerÃ
Ÿembe", "Cuma", "Cumartesi"] }, fr: { months: ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"], dayOfWeekShort: ["Dim", "Lun", "Mar", "Mer", "Jeu", "Ven", "Sam"], dayOfWeek: ["dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi"] }, es: { months: ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"], dayOfWeekShort: ["Dom", "Lun", "Mar", "Mié", "Jue", "Vie", "Sáb"], dayOfWeek: ["Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado"] }, th: { months: ["à ¸¡à ¸Âà ¸£à ¸²à ¸âà ¸¡", "à ¸Âà ¸¸à ¸¡à ¸ à ¸²à ¸žà ¸±à ¸â¢Ã ¸Ëà ¹Å", "à ¸¡à ¸µà ¸â¢Ã ¸²à ¸âà ¸¡", "à ¹â¬Ã ¸¡à ¸©à ¸²à ¸¢à ¸â¢", "à ¸žà ¸¤à ¸©à ¸ à ¸²à ¸âà ¸¡", "à ¸¡à ¸´à ¸âà ¸¸à ¸â¢Ã ¸²à ¸¢à ¸â¢", "à ¸Âà ¸£à ¸Âà ¸Žà ¸²à ¸âà ¸¡", "à ¸ªà ¸´à ¸â¡Ã ¸«à ¸²à ¸âà ¸¡", "à ¸Âà ¸±à ¸â¢Ã ¸¢à ¸²à ¸¢à ¸â¢", "à ¸â¢Ã ¸¸à ¸¥à ¸²à ¸âà ¸¡", "à ¸žà ¸¤à ¸¨à ¸Ëà ¸´à ¸Âà ¸²à ¸¢à ¸â¢", "à ¸Ëà ¸±à ¸â¢Ã ¸§à ¸²à ¸âà ¸¡"], dayOfWeekShort: ["à ¸Âà ¸².", "à ¸Ë.", "à ¸Â.", "à ¸ž.", "à ¸žà ¸¤.", "à ¸¨.", "à ¸ª."], dayOfWeek: ["à ¸Âà ¸²à ¸âà ¸´à ¸â¢Ã ¸¢à ¹Å", "à ¸Ëà ¸±à ¸â¢Ã ¸âà ¸£à ¹Å", "à ¸Âà ¸±à ¸â¡Ã ¸âà ¸²à ¸£", "à ¸žà ¸¸à ¸Ë", "à ¸žà ¸¤à ¸«à ¸±à ¸ª", "à ¸¨à ¸¸à ¸Âà ¸£à ¹Å", "à ¹â¬Ã ¸ªà ¸²à ¸£à ¹Å", "à ¸Âà ¸²à ¸âà ¸´à ¸â¢Ã ¸¢à ¹Å"] }, pl: { months: ["styczeÃ
â", "luty", "marzec", "kwiecieÃ
â", "maj", "czerwiec", "lipiec", "sierpieÃ
â", "wrzesieÃ
â", "paÃ
ºdziernik", "listopad", "grudzieÃ
â"], dayOfWeekShort: ["nd", "pn", "wt", "Ã
âºr", "cz", "pt", "sb"], dayOfWeek: ["niedziela", "poniedziaÃ
âek", "wtorek", "Ã
âºroda", "czwartek", "piÃâ¦tek", "sobota"] }, pt: { months: ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"], dayOfWeekShort: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sab"], dayOfWeek: ["Domingo", "Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado"] }, ch: { months: ["ä¸â¬Ã¦ÅË", "äºÅæÅË", "ä¸â°Ã¦ÅË", "Ã¥âºâºÃ¦ÅË", "äºâæÅË", "Ã¥â¦ÂæÅË", "ä¸ÆÃ¦ÅË", "Ã¥â¦Â«Ã¦ÅË", "ä¹ÂæÅË", "Ã¥ÂÂæÅË", "Ã¥ÂÂä¸â¬Ã¦ÅË", "Ã¥ÂÂäºÅæÅË"], dayOfWeekShort: ["æâÂ¥", "ä¸â¬", "äºÅ", "ä¸â°", "Ã¥âºâº", "äºâ", "Ã¥â¦Â"] }, se: { months: ["Januari", "Februari", "Mars", "April", "Maj", "Juni", "Juli", "Augusti", "September", "Oktober", "
8240November", "December"], dayOfWeekShort: ["Sön", "MÃÂ¥n", "Tis", "Ons", "Tor", "Fre", "Lör"] }, kr: { months: ["1ìâºâ", "2ìâºâ", "3ìâºâ", "4ìâºâ", "5ìâºâ", "6ìâºâ", "7ìâºâ", "8ìâºâ", "9ìâºâ", "10ìâºâ", "11ìâºâ", "12ìâºâ"], dayOfWeekShort: ["ì¼", "ìâºâ", "Ãâ¢â", "ìËË", "목", "ê¸Ë", "Ãâ "], dayOfWeek: ["ì¼ìšâì¼", "ìâºâìšâì¼", "Ãâ¢âìšâì¼", "ìËËìšâì¼", "목ìšâì¼", "ê¸Ëìšâì¼", "Ãâ ìšâì¼"] }, it: { months: ["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"], dayOfWeekShort: ["Dom", "Lun", "Mar", "Mer", "Gio", "Ven", "Sab"], dayOfWeek: ["Domenica", "Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato"] }, da: { months: ["January", "Februar", "Marts", "April", "Maj", "Juni", "July", "August", "September", "Oktober", "November", "December"], dayOfWeekShort: ["Søn", "Man", "Tir", "Ons", "Tor", "Fre", "Lør"], dayOfWeek: ["søndag", "mandag", "tirsdag", "onsdag", "torsdag", "fredag", "lørdag"] }, no: { months: ["Januar", "Februar", "Mars", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Desember"], dayOfWeekShort: ["Søn", "Man", "Tir", "Ons", "Tor", "Fre", "Lør"], dayOfWeek: ["Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag"] }, ja: { months: ["1æÅË", "2æÅË", "3æÅË", "4æÅË", "5æÅË", "6æÅË", "7æÅË", "8æÅË", "9æÅË", "10æÅË", "11æÅË", "12æÅË"], dayOfWeekShort: ["æâÂ¥", "æÅË", "ç«", "æ°´", "æÅ¨", "éâ¡â", "åş"], dayOfWeek: ["æâ¥æâºÅ", "æÅËæâºÅ", "ç«æâºÅ", "æ°´æâºÅ", "æÅ¨æâºÅ", "éâ¡âæâºÅ", "åşæâºÅ"] }, vi: { months: ["Tháng 1", "Tháng 2", "Tháng 3", "Tháng 4", "Tháng 5", "Tháng 6", "Tháng 7", "Tháng 8", "Tháng 9", "Tháng 10", "Tháng 11", "Tháng 12"], dayOfWeekShort: ["CN", "T2", "T3", "T4", "T5", "T6", "T7"], dayOfWeek: ["Chá»§ nháºÂt", "Thứ hai", "Thứ ba", "Thứ tð", "Thứ nÃÆm", "Thứ sáu", "Thứ bảy"] }, sl: { months: ["Januar", "Februar", "Marec", "April", "Maj", "Junij", "Julij", "Avgust", "September", "Oktober", "November", "December"], dayOfWeekShort: ["Ned", "Pon", "Tor", "Sre", "ÃÅet", "Pet", "Sob"], dayOfWeek: ["Nedelja", "Ponedeljek", "Torek", "Sreda", "ÃÅetrtek", "Petek", "Sobota"] }, cs: { months: ["Leden", "ÃÅ¡nor", "BÃ
â¢ezen", "Duben", "KvÃâºten", "ÃÅerven", "ÃÅervenec", "Srpen", "ZáÃ
â¢ÃÂ", "Ã
ËÃÂjen", "Listopad", "Prosinec"], dayOfWeekShort: ["Ne", "Po", "ÃÅ¡t", "St", "ÃÅt", "Pá", "So"] }, hu: { months: ["Január", "Február", "Március", "ÃÂprilis", "Május", "Június", "Július", "Augusztus", "Szeptember", "Október", "November", "December"], dayOfWeekShort: ["Va", "Hé", "Ke", "Sze", "Cs", "Pé", "Szo"], dayOfWeek: ["vasárnap", "hétfÃ
â", "kedd", "szerda", "csütörtök", "péntek", "szombat"] }, az: { months: ["Yanvar", "Fevral", "Mart", "Aprel", "May", "Iyun", "Iyul", "Avqust", "Sentyabr", "Oktyabr", "Noyabr", "Dekabr"], dayOfWeekShort: ["B", "Be", "Ãâ¡a", "Ãâ¡", "Ca", "C", "Ã
ž"], dayOfWeek: ["Bazar", "Bazar ertÃâ¢si", "Ãâ¡Ãâ¢rÃ
ŸÃâ¢nbÃ⢠axÃ
Ÿamñ", "Ãâ¡Ãâ¢rÃ
ŸÃâ¢nbÃâ¢", "CümÃ⢠axÃ
Ÿamñ", "CümÃâ¢", "Ã
žÃâ¢nbÃâ¢"] }, bs: { months: ["Januar", "Februar", "Mart", "April", "Maj", "Jun", "Jul", "Avgust", "Septembar", "Oktobar", "Novembar", "Decembar"], dayOfWeekShort: ["Ned", "Pon", "Uto", "Sri", "ÃÅet", "Pet", "Sub"], dayOfWeek: ["Nedjelja", "Ponedjeljak", "Utorak", "Srijeda", "ÃÅetvrtak", "Petak", "Subota"] }, ca: { months: ["Gener", "Febrer", "Març", "Abril", "Maig", "Juny", "Juliol", "Agost", "Setembre", "Octubre", "Novembre", "Desembre"], dayOfWeekShort: ["Dg", "Dl", "Dt", "Dc", "Dj", "Dv", "Ds"], dayOfWeek: ["Diumenge", "Dilluns", "Dimarts", "Dimecres", "Dijous", "Divendres", "Dissabte"] }, "en-GB": { months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "
8240November", "December"], dayOfWeekShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], dayOfWeek: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"] }, et: { months: ["Jaanuar", "Veebruar", "Märts", "Aprill", "Mai", "Juuni", "Juuli", "August", "September", "Oktoober", "November", "Detsember"], dayOfWeekShort: ["P", "E", "T", "K", "N", "R", "L"], dayOfWeek: ["Pühapäev", "Esmaspäev", "Teisipäev", "Kolmapäev", "Neljapäev", "Reede", "Laupäev"] }, eu: { months: ["Urtarrila", "Otsaila", "Martxoa", "Apirila", "Maiatza", "Ekaina", "Uztaila", "Abuztua", "Iraila", "Urria", "Azaroa", "Abendua"], dayOfWeekShort: ["Ig.", "Al.", "Ar.", "Az.", "Og.", "Or.", "La."], dayOfWeek: ["Igandea", "Astelehena", "Asteartea", "Asteazkena", "Osteguna", "Ostirala", "Larunbata"] }, fi: { months: ["Tammikuu", "Helmikuu", "Maaliskuu", "Huhtikuu", "Toukokuu", "Kesäkuu", "Heinäkuu", "Elokuu", "Syyskuu", "Lokakuu", "Marraskuu", "Joulukuu"], dayOfWeekShort: ["Su", "Ma", "Ti", "Ke", "To", "Pe", "La"], dayOfWeek: ["sunnuntai", "maanantai", "tiistai", "keskiviikko", "torstai", "perjantai", "lauantai"] }, gl: { months: ["Xan", "Feb", "Maz", "Abr", "Mai", "Xun", "Xul", "Ago", "Set", "Out", "Nov", "Dec"], dayOfWeekShort: ["Dom", "Lun", "Mar", "Mer", "Xov", "Ven", "Sab"], dayOfWeek: ["Domingo", "Luns", "Martes", "Mércores", "Xoves", "Venres", "Sábado"] }, hr: { months: ["SijeÃÂanj", "VeljaÃÂa", "OÃ
¾ujak", "Travanj", "Svibanj", "Lipanj", "Srpanj", "Kolovoz", "Rujan", "Listopad", "Studeni", "Prosinac"], dayOfWeekShort: ["Ned", "Pon", "Uto", "Sri", "ÃÅet", "Pet", "Sub"], dayOfWeek: ["Nedjelja", "Ponedjeljak", "Utorak", "Srijeda", "ÃÅetvrtak", "Petak", "Subota"] }, ko: { months: ["1ìâºâ", "2ìâºâ", "3ìâºâ", "4ìâºâ", "5ìâºâ", "6ìâºâ", "7ìâºâ", "8ìâºâ", "9ìâºâ", "10ìâºâ", "11ìâºâ", "12ìâºâ"], dayOfWeekShort: ["ì¼", "ìâºâ", "Ãâ¢â", "ìËË", "목", "ê¸Ë", "Ãâ "], dayOfWeek: ["ì¼ìšâì¼", "ìâºâìšâì¼", "Ãâ¢âìšâì¼", "ìËËìšâì¼", "목ìšâì¼", "ê¸Ëìšâì¼", "Ãâ ìšâì¼"] }, lt: { months: ["Sausio", "Vasario", "Kovo", "BalandÃ
¾io", "GeguÃ
¾Ãâs", "BirÃ
¾elio", "Liepos", "RugpjÃ
«ÃÂio", "RugsÃâjo", "Spalio", "LapkriÃÂio", "GruodÃ
¾io"], dayOfWeekShort: ["Sek", "Pir", "Ant", "Tre", "Ket", "Pen", "Ã
eÃ
¡"], dayOfWeek: ["Sekmadienis", "Pirmadienis", "Antradienis", "TreÃÂiadienis", "Ketvirtadienis", "Penktadienis", "Ã
eÃ
¡tadienis"] }, lv: { months: ["JanvÃÂris", "FebruÃÂris", "Marts", "Aprëlis ", "Maijs", "JÃ
«nijs", "JÃ
«lijs", "Augusts", "Septembris", "Oktobris", "Novembris", "Decembris"], dayOfWeekShort: ["Sv", "Pr", "Ot", "Tr", "Ct", "Pk", "St"], dayOfWeek: ["SvÃâtdiena", "Pirmdiena", "Otrdiena", "TreÃ
¡diena", "Ceturtdiena", "Piektdiena", "Sestdiena"] }, mk: { months: ["ÃËðÃÂ½ÃÆÃ°Ãâ¬Ã¸", "ÃâõòÃâ¬ÃÆÃ°Ãâ¬Ã¸", "üðÃâ¬Ãâ", "ðÿÃâ¬Ã¸Ã»", "üðÃË", "ÃËÃÆÃ½Ã¸", "ÃËÃÆÃ»Ã¸", "ðòÃÂ³ÃÆÃÂÃâ", "ÃÂõÿÃâõüòÃâ¬Ã¸", "þúÃâþüòÃâ¬Ã¸", "ýþõüòÃâ¬Ã¸", "ôõúõüòÃâ¬Ã¸"], dayOfWeekShort: ["ýõô", "ÿþý", "òÃâþ", "ÃÂÃâ¬Ãµ", "Ãâ¡ÃµÃâ", "ÿõÃâ", "ÃÂðñ"], dayOfWeek: ["ÃÂõôõûð", "ßþýõôõûýøú", "ÃâÃâþÃâ¬Ã½Ã¸Ãº", "áÃâ¬ÃµÃ´Ã°", "çõÃâòÃâ¬Ãâþú", "ßõÃâþú", "áðñþÃâð"] }, mn: { months: ["1-Ã⬠ÃÂðÃâ¬", "2-Ã⬠ÃÂðÃâ¬", "3-Ã⬠ÃÂðÃâ¬", "4-Ã⬠ÃÂðÃâ¬", "5-Ã⬠ÃÂðÃâ¬", "6-Ã⬠ÃÂðÃâ¬", "7-Ã⬠ÃÂðÃâ¬", "8-Ã⬠ÃÂðÃâ¬", "9-Ã⬠ÃÂðÃâ¬", "10-Ã⬠ÃÂðÃâ¬", "11-Ã⬠ÃÂðÃâ¬", "12-Ã⬠ÃÂðÃâ¬"], dayOfWeekShort: ["Ãâðò", "ÃÅÃÂó", "ÃâºÃâ¦Ã°", "ßïÃâ¬", "ÃâÃÂý", "ÃâÃÂü", "ÃÂÃÂü"], dayOfWeek: ["Ãâðòðð", "ÃÅÃÂóüðÃâ¬", "ÃâºÃâ¦Ã°Ã³Ã²Ã°", "ßïÃâ¬ÃÂò", "ÃâððÃÂðý", "ÃâÃÂüñð", "ÃÂÃÂü"] }, "pt-BR": { months: ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"], dayOfWeekShort: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb"], dayOfWeek: ["Domingo", "Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado"] }, sk: { months: ["Január", "Február", "Marec", "AprÃÂl", "Máj", "Jún", "Júl", "August", "September", "Október", "
8240November", "December"], dayOfWeekShort: ["Ne", "Po", "Ut", "St", "Ã
t", "Pi", "So"], dayOfWeek: ["Nedeþa", "Pondelok", "Utorok", "Streda", "Ã
tvrtok", "Piatok", "Sobota"] }, sq: { months: ["Janar", "Shkurt", "Mars", "Prill", "Maj", "Qershor", "Korrik", "Gusht", "Shtator", "Tetor", "Nëntor", "Dhjetor"], dayOfWeekShort: ["Die", "Hën", "Mar", "Mër", "Enj", "Pre", "Shtu"], dayOfWeek: ["E Diel", "E Hënë", "E MartÃâ", "E Mërkurë", "E Enjte", "E Premte", "E Shtunë"] }, "sr-YU": { months: ["Januar", "Februar", "Mart", "April", "Maj", "Jun", "Jul", "Avgust", "Septembar", "Oktobar", "Novembar", "Decembar"], dayOfWeekShort: ["Ned", "Pon", "Uto", "Sre", "ÃÂet", "Pet", "Sub"], dayOfWeek: ["Nedelja", "Ponedeljak", "Utorak", "Sreda", "ÃÅetvrtak", "Petak", "Subota"] }, sr: { months: ["ÃËðÃÂ½ÃÆÃ°Ãâ¬", "ÃâõñÃâ¬ÃÆÃ°Ãâ¬", "üðÃâ¬Ãâ", "ðÿÃâ¬Ã¸Ã»", "üðÃË", "ÃËÃÆÃ½", "ÃËÃÆÃ»", "ðòÃÂ³ÃÆÃÂÃâ", "ÃÂõÿÃâõüñðÃâ¬", "þúÃâþñðÃâ¬", "ýþòõüñðÃâ¬", "ôõÃâ õüñðÃâ¬"], dayOfWeekShort: ["ýõô", "ÿþý", "ÃÆÃâþ", "ÃÂÃâ¬Ãµ", "Ãâ¡ÃµÃâ", "ÿõÃâ", "ÃÂ̮̱"], dayOfWeek: ["ÃÂõôõÃâ¢Ã°", "ßþýõôõÃâ¢Ã°Ãº", "ãÃâþÃâ¬Ã°Ãº", "áÃâ¬ÃµÃ´Ã°", "çõÃâòÃâ¬Ãâðú", "ßõÃâðú", "ÃÂ¡ÃÆÃ±Ã¾Ãâð"] }, sv: { months: ["Januari", "Februari", "Mars", "April", "Maj", "Juni", "Juli", "Augusti", "September", "Oktober", "November", "December"], dayOfWeekShort: ["Sön", "MÃÂ¥n", "Tis", "Ons", "Tor", "Fre", "Lör"], dayOfWeek: ["Söndag", "MÃÂ¥ndag", "Tisdag", "Onsdag", "Torsdag", "Fredag", "Lördag"] }, "zh-TW": { months: ["ä¸â¬Ã¦ÅË", "äºÅæÅË", "ä¸â°Ã¦ÅË", "Ã¥âºâºÃ¦ÅË", "äºâæÅË", "Ã¥â¦ÂæÅË", "ä¸ÆÃ¦ÅË", "Ã¥â¦Â«Ã¦ÅË", "ä¹ÂæÅË", "Ã¥ÂÂæÅË", "Ã¥ÂÂä¸â¬Ã¦ÅË", "Ã¥ÂÂäºÅæÅË"], dayOfWeekShort: ["æâÂ¥", "ä¸â¬", "äºÅ", "ä¸â°", "Ã¥âºâº", "äºâ", "Ã¥â¦Â"], dayOfWeek: ["æËŸæÅŸæâÂ¥", "æËŸæÅŸä¸â¬", "æËŸæÅŸäºÅ", "æËŸæÅŸä¸â°", "æËŸæÅŸåâºâº", "æËŸæÅŸäºâ", "æËŸæÅŸåâ¦Â"] }, zh: { months: ["ä¸â¬Ã¦ÅË", "äºÅæÅË", "ä¸â°Ã¦ÅË", "Ã¥âºâºÃ¦ÅË", "äºâæÅË", "Ã¥â¦ÂæÅË", "ä¸ÆÃ¦ÅË", "Ã¥â¦Â«Ã¦ÅË", "ä¹ÂæÅË", "Ã¥ÂÂæÅË", "Ã¥ÂÂä¸â¬Ã¦ÅË", "Ã¥ÂÂäºÅæÅË"], dayOfWeekShort: ["æâÂ¥", "ä¸â¬", "äºÅ", "ä¸â°", "Ã¥âºâº", "äºâ", "Ã¥â¦Â"], dayOfWeek: ["æËŸæÅŸæâÂ¥", "æËŸæÅŸä¸â¬", "æËŸæÅŸäºÅ", "æËŸæÅŸä¸â°", "æËŸæÅŸåâºâº", "æËŸæÅŸäºâ", "æËŸæÅŸåâ¦Â"] }, he: { months: ["Ãâ¢Ã Ãâ¢ÃÂè", "äÃâèÃâ¢ÃÂè", "ÞèÃÂ¥", "ÃÂäèÃâ¢ÃÅ", "ÞÃÂÃâ¢", "Ãâ¢Ãâ¢Ã Ãâ¢", "Ãâ¢Ãâ¢ÃÅÃâ¢", "ÃÂÃâ¢ÃâÃâ¢Ã¡ÃË", "áäÃËÞÃâè", "ÃÂÃâ¢Ã§ÃËÃâ¢Ãâè", "à Ãâ¢ÃâÞÃâè", "ÃâæÞÃâè"], dayOfWeekShort: ["ÃÂ'", "Ãâ'", "Ãâ'", "Ãâ'", "Ãâ'", "Ãâ¢'", "éÃâê"], dayOfWeek: ["èÃÂéÃâ¢ÃŸ", "éà Ãâ¢", "éÃÅÃâ¢Ã©Ãâ¢", "èÃâÃâ¢Ã¢Ãâ¢", "ÃâÞÃâ¢Ã©Ãâ¢", "éÃâ¢Ã©Ãâ¢", "éÃâê", "èÃÂéÃâ¢ÃŸ"] }, hy: { months: ["Ãâ¬Ã¸ÃâöþáÃâ¬", "ÃâÃ¥ÿÃâ¬Ã¾Ã¡Ãâ¬", "ÃâáÃâ¬Ã¿", "ñúÃâ¬Ã«Ã¬", "Ãâáõëý", "Ãâ¬Ã¸Ãâöëý", "Ãâ¬Ã¸Ãâìëý", "Ãâ¢Ã£Ã¸Ã½Ã¿Ã¸Ã½", "ÃÂÃ¥úÿÃ¥ôâÃÂ¥Ãâ¬", "Ãâ¬Ã¸Ã¯Ã¿Ã¥ôâÃÂ¥Ãâ¬", "Ãâ øõÃ¥ôâÃÂ¥Ãâ¬", "ôÃ¥ïÿÃ¥ôâÃÂ¥Ãâ¬"], dayOfWeekShort: ["ÿë", "õÃâ¬Ã¯", "õÃâ¬Ãâ", "Ãâ°Ã¸Ãâ¬", "Ãâ¬Ã¶Ã£", "ÃËÃâÃâ¬Ã¢", "Ãâ¡Ã¢Ã©"], dayOfWeek: ["ÿëÃâ¬Ã¡Ã¯Ã«", "õÃâ¬Ã¯Ã¸Ãâ÷áâéë", "õÃâ¬ÃÂ¥Ãâ÷áâéë", "Ãâ°Ã¸Ãâ¬ÃÂ¥Ãâ÷áâéë", "Ãâ¬Ã«Ã¶Ã£Ã·Ã¡Ã¢Ã©Ã«", "ÃËÃâÃâ¬Ã¢Ã¡Ã©", "Ãâ¡Ã¡Ã¢Ã¡Ã©"] }, kg: { months: ["îÃâ¡Ãâïý ðùÃâ¹", "ÃâøÃâ¬Ã´Ã¸Ã½ ðùÃâ¹", "Ãâðûóðý ÃÅ¡ÃÆÃâ¬Ã°Ã½", "çÃâ¹Ã½ ÃÅ¡ÃÆÃâ¬Ã°Ã½", "ÃâÃÆÃÂ³ÃÆ", "ÃÅ¡ÃÆÃ»Ã¶Ã°", "âõúõ", "ÃâðÃË ÃžÃ¾Ã½Ã°", "ÃÂÃÂú Þþýð", "âþÃÂ³ÃÆÃ·ÃÂ´ÃÆÃ½ ðùÃâ¹", "ÃâõÃâøýøý ðùÃâ¹", "ÃâõÃËÃâøý ðùÃâ¹"], dayOfWeekShort: ["Ãâõú", "Ãâïù", "èõù", "èðÃâ¬", "Ãâõù", "ÃâÃÆÃ¼", "ÃËÃËÃÂ
8240µ"], dayOfWeek: ["ÃâõúÃËõüñ", "ÃâïùÃËéüñ", "èõùÃËõüñ", "èðÃâ¬ÃËõüñ", "ÃâõùÃËõüñø", "ÃâÃÆÃ¼Ã°", "ÃËÃËõýñ"] }, rm: { months: ["Schaner", "Favrer", "Mars", "Avrigl", "Matg", "Zercladur", "Fanadur", "Avust", "Settember", "October", "November", "December"], dayOfWeekShort: ["Du", "Gli", "Ma", "Me", "Gie", "Ve", "So"], dayOfWeek: ["Dumengia", "Glindesdi", "Mardi", "Mesemna", "Gievgia", "Venderdi", "Sonda"] }, ka: { months: ["áÆËáÆÂáÆÅáÆâ¢Ã¡ÆÂÃ¡Æ Ã¡ÆË", "áÆâáÆâáÆâáÆâÃ¡Æ Ã¡Æâ¢Ã¡ÆÂáÆÅ¡Ã¡ÆË", "áÆâºÃ¡ÆÂÃ¡Æ Ã¡ÆÂ¢Ã¡ÆË", "áÆÂáÆÅ¾Ã¡Æ áÆËáÆÅ¡Ã¡ÆË", "áÆâºÃ¡ÆÂáÆËáÆÂ¡Ã¡ÆË", "áÆËáÆâ¢Ã¡ÆÅáÆËáÆÂ¡Ã¡ÆË", "áÆËáÆâ¢Ã¡ÆÅ¡Ã¡ÆËáÆÂ¡Ã¡ÆË", "áÆÂáÆâáÆâ¢Ã¡ÆËáÆÂ¡Ã¡ÆÂ¢Ã¡ÆÂ", "áÆÂ¡Ã¡ÆâáÆÂ¥Ã¡ÆÂ¢Ã¡ÆâáÆâºÃ¡ÆâáÆâÃ¡Æ Ã¡ÆË", "áÆÂáÆÂ¥Ã¡ÆÂ¢Ã¡ÆÂáÆâºÃ¡ÆâáÆâÃ¡Æ Ã¡ÆË", "áÆÅáÆÂáÆâáÆâºÃ¡ÆâáÆâÃ¡Æ Ã¡ÆË", "áÆâáÆâáÆâ¢Ã¡ÆâáÆâºÃ¡ÆâáÆâÃ¡Æ Ã¡ÆË"], dayOfWeekShort: ["áÆâ¢Ã¡Æâ¢", "áÆÂÃ¡Æ Ã¡ÆÂ¨", "áÆÂ¡Ã¡ÆÂáÆâºÃ¡ÆÂ¨", "áÆÂáÆâáÆÂ®", "áÆÂ®Ã¡ÆÂ£Ã¡Æâ", "áÆÅ¾Ã¡ÆÂÃ¡Æ ", "áÆÂ¨Ã¡ÆÂáÆâ"], dayOfWeek: ["áÆâ¢Ã¡Æâ¢Ã¡ÆËÃ¡Æ Ã¡ÆÂ", "áÆÂÃ¡Æ Ã¡ÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆË", "áÆÂ¡Ã¡ÆÂáÆâºÃ¡ÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆË", "áÆÂáÆâáÆÂ®Ã¡ÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆË", "áÆÂ®Ã¡ÆÂ£Ã¡ÆâáÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆË", "áÆÅ¾Ã¡ÆÂÃ¡Æ Ã¡ÆÂáÆÂ¡Ã¡Æâ¢Ã¡ÆâáÆâ¢Ã¡ÆË", "áÆÂ¨Ã¡ÆÂáÆâáÆÂáÆâáÆË"] } }, value: "", rtl: !1, format: "Y/m/d H:i", formatTime: "H:i", formatDate: "Y/m/d", startDate: !1, step: 60, monthChangeSpinner: !0, closeOnDateSelect: !1, closeOnTimeSelect: !0, closeOnWithoutClick: !0, closeOnInputClick: !0, timepicker: !0, datepicker: !0, weeks: !1, defaultTime: !1, defaultDate: !1, minDate: !1, maxDate: !1, minTime: !1, maxTime: !1, disabledMinTime: !1, disabledMaxTime: !1, allowTimes: [], opened: !1, initTime: !0, inline: !1, theme: "", onSelectDate: function() {}, onSelectTime: function() {}, onChangeMonth: function() {}, onGetWeekOfYear: function() {}, onChangeYear: function() {}, onChangeDateTime: function() {}, onShow: function() {}, onClose: function() {}, onGenerate: function() {}, withoutCopyright: !0, inverseButton: !1, hours12: !1, next: "xdsoft_next", prev: "xdsoft_prev", dayOfWeekStart: 0, parentID: "body", timeHeightInTimePicker: 25, timepickerScrollbar: !0, todayButton: !0, prevButton: !0, nextButton: !0, defaultSelect: !0, scrollMonth: !0, scrollTime: !0, scrollInput: !0, lazyInit: !1, mask: !1, validateOnBlur: !0, allowBlank: !0, yearStart: 1950, yearEnd: 2050, monthStart: 0, monthEnd: 11, style: "", id: "", fixed: !1, roundTime: "round", className: "", weekends: [], highlightedDates: [], highlightedPeriods: [], allowDates: [], allowDateRe: null, disabledDates: [], disabledWeekDays: [], yearOffset: 0, beforeShowDay: null, enterLikeTab: !0, showApplyButton: !1 }, 8241 dateHelper = null, 8242 globalLocaleDefault = "en", 8243 globalLocale = "en", 8244 dateFormatterOptionsDefault = { meridiem: ["AM", "PM"] }, 8245 initDateFormatter = function() { 8246 var locale = default_options.i18n[globalLocale], 8247 opts = { days: locale.dayOfWeek, daysShort: locale.dayOfWeekShort, months: locale.months, monthsShort: $.map(locale.months, function(n) { return n.substring(0, 3) }) }; 8248 dateHelper = new DateFormatter({ dateSettings: $.extend({}, dateFormatterOptionsDefault, opts) }) 8249 }; 8250 $.datetimepicker = { 8251 setLocale: function(locale) { 8252 var newLocale = default_options.i18n[locale] ? locale : globalLocaleDefault; 8253 globalLocale != newLocale && (globalLocale = newLocale, initDateFormatter()) 8254 }, 8255 setDateFormatter: function(dateFormatter) { dateHelper = dateFormatter }, 8256 RFC_2822: "D, d M Y H:i:s O", 8257 ATOM: "Y-m-dTH:i:sP", 8258 ISO_8601: "Y-m-dTH:i:sO", 8259 RFC_822: "D, d M y H:i:s O", 8260 RFC_850: "l, d-M-y H:i:s T", 8261 RFC_1036: "D, d M y H:i:s O", 8262 RFC_1123: "D, d M Y H:i:s O", 8263 RSS: "D, d M Y H:i:s O", 8264 W3C: "Y-m-dTH:i:sP" 8265 }, initDateFormatter(), window.getComputedStyle || (window.getComputedStyle = function(el, pseudo) { return this.el = el, this.getPropertyValue = function(prop) { var re = /(\-([a-z]){1})/g; return "float" === prop && (prop = "styleFloat"), re.test(prop) && (prop = prop.replace(re, function(a, b, c) { return c.toUpperCase() })), el.currentStyle[prop] || null }, this }), Array.prototype.indexOf || (Array.prototype.indexOf = function(obj, start) { 8266 var i, j; 8267 for (i = start || 0, j = this.length; i < j; i += 1) 8268 if (this[i] === obj) return i; 8269 return -1 8270 }), Date.prototype.countDaysInMonth = function() { return new Date(this.getFullYear(), this.getMonth() + 1, 0).getDate() }, $.fn.xdsoftScroller = function(percent) { 8271 return this.each(function() { 8272 var timebox, parentHeight, height, scrollbar, scroller, timeboxparent = $(this), 8273 pointerEventToXY = function(e) { var touch, out = { x: 0, y: 0 }; return "touchstart" === e.type || "touchmove" === e.type || "touchend" === e.type || "touchcancel" === e.type ? (touch = e.originalEvent.touches[0] || e.originalEvent.changedTouches[0], out.x = touch.clientX, out.y = touch.clientY) : "mousedown" !== e.type && "mouseup" !== e.type && "mousemove" !== e.type && "mouseover" !== e.type && "mouseout" !== e.type && "mouseenter" !== e.type && "mouseleave" !== e.type || (out.x = e.clientX, out.y = e.clientY), out }, 8274 maximumOffset = 100, 8275 start = !1, 8276 startY = 0, 8277 startTop = 0, 8278 h1 = 0, 8279 touchStart = !1, 8280 startTopScroll = 0, 8281 calcOffset = function() {}; 8282 return "hide" === percent ? void timeboxparent.find(".xdsoft_scrollbar").hide() : ($(this).hasClass("xdsoft_scroller_box") || (timebox = timeboxparent.children().eq(0), parentHeight = timeboxparent[0].clientHeight, height = timebox[0].offsetHeight, scrollbar = $('<div class="xdsoft_scrollbar"></div>
vendor: 6,016 bytes, lines 8282-8330
8282'), scroller = $('<div class="xdsoft_scroller"></div>'), scrollbar.append(scroller), timeboxparent.addClass("xdsoft_scroller_box").append(scrollbar), calcOffset = function(event) { 8283 var offset = pointerEventToXY(event).y - startY + startTopScroll; 8284 offset < 0 && (offset = 0), offset + scroller[0].offsetHeight > h1 && (offset = h1 - scroller[0].offsetHeight), timeboxparent.trigger("scroll_element.xdsoft_scroller", [maximumOffset ? offset / maximumOffset : 0]) 8285 }, scroller.on("touchstart.xdsoft_scroller mousedown.xdsoft_scroller", function(event) { parentHeight || timeboxparent.trigger("resize_scroll.xdsoft_scroller", [percent]), startY = pointerEventToXY(event).y, startTopScroll = parseInt(scroller.css("margin-top"), 10), h1 = scrollbar[0].offsetHeight, "mousedown" === event.type || "touchstart" === event.type ? (document && $(document.body).addClass("xdsoft_noselect"), $([document.body, window]).on("touchend mouseup.xdsoft_scroller", function arguments_callee() { $([document.body, window]).off("touchend mouseup.xdsoft_scroller", arguments_callee).off("mousemove.xdsoft_scroller", calcOffset).removeClass("xdsoft_noselect") }), $(document.body).on("mousemove.xdsoft_scroller", calcOffset)) : (touchStart = !0, event.stopPropagation(), event.preventDefault()) }).on("touchmove", function(event) { touchStart && (event.preventDefault(), calcOffset(event)) }).on("touchend touchcancel", function() { touchStart = !1, startTopScroll = 0 }), timeboxparent.on("scroll_element.xdsoft_scroller", function(event, percentage) { 8286 parentHeight || timeboxparent.trigger("resize_scroll.xdsoft_scroller", [percentage, !0]), 8287 percentage = percentage > 1 ? 1 : percentage < 0 || isNaN(percentage) ? 0 : percentage, scroller.css("margin-top", maximumOffset * percentage), setTimeout(function() { timebox.css("marginTop", -parseInt((timebox[0].offsetHeight - parentHeight) * percentage, 10)) }, 10) 8288 }).on("resize_scroll.xdsoft_scroller", function(event, percentage, noTriggerScroll) { 8289 var percent, sh; 8290 parentHeight = timeboxparent[0].clientHeight, height = timebox[0].offsetHeight, percent = parentHeight / height, sh = percent * scrollbar[0].offsetHeight, percent > 1 ? scroller.hide() : (scroller.show(), scroller.css("height", parseInt(sh > 10 ? sh : 10, 10)), maximumOffset = scrollbar[0].offsetHeight - scroller[0].offsetHeight, noTriggerScroll !== !0 && timeboxparent.trigger("scroll_element.xdsoft_scroller", [percentage || Math.abs(parseInt(timebox.css("marginTop"), 10)) / (height - parentHeight)])) 8291 }), timeboxparent.on("mousewheel", function(event) { var top = Math.abs(parseInt(timebox.css("marginTop"), 10)); return top -= 20 * event.deltaY, top < 0 && (top = 0), timeboxparent.trigger("scroll_element.xdsoft_scroller", [top / (height - parentHeight)]), event.stopPropagation(), !1 }), timeboxparent.on("touchstart", function(event) { start = pointerEventToXY(event), startTop = Math.abs(parseInt(timebox.css("marginTop"), 10)) }), timeboxparent.on("touchmove", function(event) { 8292 if (start) { 8293 event.preventDefault(); 8294 var coord = pointerEventToXY(event); 8295 timeboxparent.trigger("scroll_element.xdsoft_scroller", [(startTop - (coord.y - start.y)) / (height - parentHeight)]) 8296 } 8297 }), timeboxparent.on("touchend touchcancel", function() { start = !1, startTop = 0 })), void timeboxparent.trigger("resize_scroll.xdsoft_scroller", [percent])) 8298 }) 8299 }, $.fn.datetimepicker = function(opt, opt2) { 8300 var createDateTimePicker, destroyDateTimePicker, result = this, 8301 KEY0 = 48, 8302 KEY9 = 57, 8303 _KEY0 = 96, 8304 _KEY9 = 105, 8305 CTRLKEY = 17, 8306 DEL = 46, 8307 ENTER = 13, 8308 ESC = 27, 8309 BACKSPACE = 8, 8310 ARROWLEFT = 37, 8311 ARROWUP = 38, 8312 ARROWRIGHT = 39, 8313 ARROWDOWN = 40, 8314 TAB = 9, 8315 F5 = 116, 8316 AKEY = 65, 8317 CKEY = 67, 8318 VKEY = 86, 8319 ZKEY = 90, 8320 YKEY = 89, 8321 ctrlDown = !1, 8322 options = $.isPlainObject(opt) || !opt ? $.extend(!0, {}, default_options, opt) : $.extend(!0, {}, default_options), 8323 lazyInitTimer = 0, 8324 lazyInit = function(input) { input.on("open.xdsoft focusin.xdsoft mousedown.xdsoft touchstart", function initOnActionCallback() { input.is(":disabled") || input.data("xdsoft_datetimepicker") || (clearTimeout(lazyInitTimer), lazyInitTimer = setTimeout(function() { input.data("xdsoft_datetimepicker") || createDateTimePicker(input), input.off("open.xdsoft focusin.xdsoft mousedown.xdsoft touchstart", initOnActionCallback).trigger("open.xdsoft") }, 100)) }) }; 8325 return createDateTimePicker = function(input) { 8326 function getCurrentValue() { var time, ct = !1; return options.startDate ? ct = _xdsoft_datetime.strToDate(options.startDate) : (ct = options.value || (input && input.val && input.val() ? input.val() : ""), ct ? ct = _xdsoft_datetime.strToDateTime(ct) : options.defaultDate && (ct = _xdsoft_datetime.strToDateTime(options.defaultDate), options.defaultTime && (time = _xdsoft_datetime.strtotime(options.defaultTime), ct.setHours(time.getHours()), ct.setMinutes(time.getMinutes())))), ct && _xdsoft_datetime.isValidDate(ct) ? datetimepicker.data("changed", !0) : ct = "", ct || 0 } 8327 8328 function setMask(options) { 8329 var isValidValue = function(mask, value) { var reg = mask.replace(/([\[\]\/\{\}\(\)\-\.\+]{1})/g, "\\$1").replace(/_/g, "{digit+}").replace(/([0-9]{1})/g, "{digit$1}").replace(/\{digit([0-9]{1})\}/g, "[0-$1_]{1}").replace(/\{digit[\+]\}/g, "[0-9_]{1}"); return new RegExp(reg).test(value) }, 8330 getCaretPos = function(input) { try { if (document.selection && document.selection.createRange) { var range = document.selection.createRange();
8330 return range.getBookmark().charCodeAt(2) - 2 } if (input.setSelectionRange) return input.selectionStart } catch (e) { return 0 } }, 8331 setCaretPos = function(node, pos) { if (node = "string" == typeof node || node instanceof String ? document.getElementById(node) : node, !node) return !1; if (node.createTextRange) { var textRange = node.createTextRange(); return textRange.collapse(!0), textRange.moveEnd("character", pos), textRange.moveStart("character", pos), textRange.select(), !0 } return !!node.setSelectionRange && (node.setSelectionRange(pos, pos), !0) }; 8332 options.mask && input.off("keydown.xdsoft"), options.mask === !0 && ("undefined" != typeof moment ? options.mask = options.format.replace(/Y{4}/g, "9999").replace(/Y{2}/g, "99").replace(/M{2}/g, "19").replace(/D{2}/g, "39").replace(/H{2}/g, "29").replace(/m{2}/g, "59").replace(/s{2}/g, "59") : options.mask = options.format.replace(/Y/g, "9999").replace(/F/g, "9999").replace(/m/g, "19").replace(/d/g, "39").replace(/H/g, "29").replace(/i/g, "59").replace(/s/g, "59")), "string" === $.type(options.mask) && (isValidValue(options.mask, input.val()) || (input.val(options.mask.replace(/[0-9]/g, "_")), setCaretPos(input[0], 0)), input.on("keydown.xdsoft", function(event) { 8333 var pos, digit, val = this.value, 8334 key = event.which; 8335 if (key >= KEY0 && key <= KEY9 || key >= _KEY0 && key <= _KEY9 || key === BACKSPACE || key === DEL) { 8336 for (pos = getCaretPos(this), digit = key !== BACKSPACE && key !== DEL ? String.fromCharCode(_KEY0 <= key && key <= _KEY9 ? key - KEY0 : key) : "_", key !== BACKSPACE && key !== DEL || !pos || (pos -= 1, digit = "_"); 8337 /[^0-9_]/.test(options.mask.substr(pos, 1)) && pos < options.mask.length && pos > 0;) pos += key === BACKSPACE || key === DEL ? -1 : 1; 8338 if (val = val.substr(0, pos) + digit + val.substr(pos + 1), "" === $.trim(val)) val = options.mask.replace(/[0-9]/g, "_"); 8339 else if (pos === options.mask.length) return event.preventDefault(), !1; 8340 for (pos += key === BACKSPACE || key === DEL ? 0 : 1; 8341 /[^0-9_]/.test(options.mask.substr(pos, 1)) && pos < options.mask.length && pos > 0;) pos += key === BACKSPACE || key === DEL ? -1 : 1; 8342 isValidValue(options.mask, val) ? (this.value = val, setCaretPos(this, pos)) : "" === $.trim(val) ? this.value = options.mask.replace(/[0-9]/g, "_") : input.trigger("error_input.xdsoft") 8343 } else if ([AKEY, CKEY, VKEY, ZKEY, YKEY].indexOf(key) !== -1 && ctrlDown || [ESC, ARROWUP, ARROWDOWN, ARROWLEFT, ARROWRIGHT, F5, CTRLKEY, TAB, ENTER].indexOf(key) !== -1) return !0; 8344 return event.preventDefault(), !1 8345 })) 8346 } 8347 var XDSoft_datetime, xchangeTimer, timerclick, current_time_index, setPos, _xdsoft_datetime, forEachAncestorOf, datetimepicker = $('<div class="xdsoft_datetimepicker xdsoft_noselect"></div>'), 8348 xdsoft_copyright = $('<div class="xdsoft_copyright"><a target="_blank" href="http://xdsoft.net/jqplugins/datetimepicker/">xdsoft.net</a></div>'), 8349 datepicker = $('<div class="xdsoft_datepicker active"></div>'), 8350 month_picker = $('<div class="xdsoft_monthpicker"><button type="button" class="xdsoft_prev"></button><button type="button" class="xdsoft_today_button"></button><div class="xdsoft_label xdsoft_month"><span></span><i></i></div><div class="xdsoft_label xdsoft_year"><span></span><i></i></div><button type="button" class="xdsoft_next"></button></div>'), 8351 calendar = $('<div class="xdsoft_calendar"></div>'), 8352 timepicker = $('<div class="xdsoft_timepicker active"><button type="button" class="xdsoft_prev"></button><div class="xdsoft_time_box"></div><button type="button" class="xdsoft_next"></button></div>'), 8353 timeboxparent = timepicker.find(".xdsoft_time_box").eq(0), 8354 timebox = $('<div class="xdsoft_time_variant"></div>'), 8355 applyButton = $('<button type="button" class="xdsoft_save_selected blue-gradient-button">Save Selected</button>'), 8356 monthselect = $('<div class="xdsoft_select xdsoft_monthselect"><div></div></div>'), 8357 yearselect = $('<div class="xdsoft_select xdsoft_yearselect"><div></div></div>'), 8358 triggerAfterOpen = !1, 8359 timer = 0; 8360 options.id && datetimepicker.attr("id", options.id), options.style && datetimepicker.attr("style", options.style), options.weeks && datetimepicker.addClass("xdsoft_showweeks"), options.rtl && datetimepicker.addClass("xdsoft_rtl"), datetimepicker.addClass("xdsoft_" + options.theme), datetimepicker.addClass(options.className), month_picker.find(".xdsoft_month
vendor: 18,577 bytes, lines 8360-8430
8360span").after(monthselect), month_picker.find(".xdsoft_year span").after(yearselect), month_picker.find(".xdsoft_month,.xdsoft_year").on("touchstart mousedown.xdsoft", function(event) { 8361 var items, i, select = $(this).find(".xdsoft_select").eq(0), 8362 val = 0, 8363 top = 0, 8364 visible = select.is(":visible"); 8365 for (month_picker.find(".xdsoft_select").hide(), _xdsoft_datetime.currentTime && (val = _xdsoft_datetime.currentTime[$(this).hasClass("xdsoft_month") ? "getMonth" : "getFullYear"]()), select[visible ? "hide" : "show"](), items = select.find("div.xdsoft_option"), i = 0; i < items.length && items.eq(i).data("value") !== val; i += 1) top += items[0].offsetHeight; 8366 return select.xdsoftScroller(top / (select.children()[0].offsetHeight - select[0].clientHeight)), event.stopPropagation(), !1 8367 }), month_picker.find(".xdsoft_select").xdsoftScroller().on("touchstart mousedown.xdsoft", function(event) { event.stopPropagation(), event.preventDefault() }).on("touchstart mousedown.xdsoft", ".xdsoft_option", function() { 8368 void 0 !== _xdsoft_datetime.currentTime && null !== _xdsoft_datetime.currentTime || (_xdsoft_datetime.currentTime = _xdsoft_datetime.now()); 8369 var year = _xdsoft_datetime.currentTime.getFullYear(); 8370 _xdsoft_datetime && _xdsoft_datetime.currentTime && _xdsoft_datetime.currentTime[$(this).parent().parent().hasClass("xdsoft_monthselect") ? "setMonth" : "setFullYear"]($(this).data("value")), $(this).parent().parent().hide(), datetimepicker.trigger("xchange.xdsoft"), options.onChangeMonth && $.isFunction(options.onChangeMonth) && options.onChangeMonth.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data("input")), year !== _xdsoft_datetime.currentTime.getFullYear() && $.isFunction(options.onChangeYear) && options.onChangeYear.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data("input")) 8371 }), datetimepicker.getValue = function() { return _xdsoft_datetime.getCurrentTime() }, datetimepicker.setOptions = function(_options) { 8372 var highlightedDates = {}; 8373 options = $.extend(!0, {}, options, _options), _options.allowTimes && $.isArray(_options.allowTimes) && _options.allowTimes.length && (options.allowTimes = $.extend(!0, [], _options.allowTimes)), _options.weekends && $.isArray(_options.weekends) && _options.weekends.length && (options.weekends = $.extend(!0, [], _options.weekends)), _options.allowDates && $.isArray(_options.allowDates) && _options.allowDates.length && (options.allowDates = $.extend(!0, [], _options.allowDates)), _options.allowDateRe && "[object String]" === Object.prototype.toString.call(_options.allowDateRe) && (options.allowDateRe = new RegExp(_options.allowDateRe)), _options.highlightedDates && $.isArray(_options.highlightedDates) && _options.highlightedDates.length && ($.each(_options.highlightedDates, function(index, value) { 8374 var exDesc, splitData = $.map(value.split(","), $.trim), 8375 hDate = new HighlightedDate(dateHelper.parseDate(splitData[0], options.formatDate), splitData[1], splitData[2]), 8376 keyDate = dateHelper.formatDate(hDate.date, options.formatDate); 8377 void 0 !== highlightedDates[keyDate] ? (exDesc = highlightedDates[keyDate].desc, exDesc && exDesc.length && hDate.desc && hDate.desc.length && (highlightedDates[keyDate].desc = exDesc + "\n" + hDate.desc)) : highlightedDates[keyDate] = hDate 8378 }), options.highlightedDates = $.extend(!0, [], highlightedDates)), _options.highlightedPeriods && $.isArray(_options.highlightedPeriods) && _options.highlightedPeriods.length && (highlightedDates = $.extend(!0, [], options.highlightedDates), $.each(_options.highlightedPeriods, function(index, value) { 8379 var dateTest, dateEnd, desc, hDate, keyDate, exDesc, style; 8380 if ($.isArray(value)) dateTest = value[0], dateEnd = value[1], desc = value[2], style = value[3]; 8381 else { 8382 var splitData = $.map(value.split(","), $.trim); 8383 dateTest = dateHelper.parseDate(splitData[0], options.formatDate), dateEnd = dateHelper.parseDate(splitData[1], options.formatDate), desc = splitData[2], style = splitData[3] 8384 } 8385 for (; dateTest <= dateEnd;) hDate = new HighlightedDate(dateTest, desc, style), keyDate = dateHelper.formatDate(dateTest, options.formatDate), dateTest.setDate(dateTest.getDate() + 1), void 0 !== highlightedDates[keyDate] ? (exDesc = highlightedDates[keyDate].desc, exDesc && exDesc.length && hDate.desc && hDate.desc.length && (highlightedDates[keyDate].desc = exDesc + "\n" + hDate.desc)) : highlightedDates[keyDate] = hDate 8386 }), options.highlightedDates = $.extend(!0, [], highlightedDates)), _options.disabledDates && $.isArray(_options.disabledDates) && _options.disabledDates.length && (options.disabledDates = $.extend(!0, [], _options.disabledDates)), _options.disabledWeekDays && $.isArray(_options.disabledWeekDays) && _options.disabledWeekDays.length && (options.disabledWeekDays = $.extend(!0, [], _options.disabledWeekDays)), !options.open && !options.opened || options.inline || input.trigger("open.xdsoft"), options.inline && (triggerAfterOpen = !0, datetimepicker.addClass("xdsoft_inline"), input.after(datetimepicker).hide()), options.inverseButton && (options.next = "xdsoft_prev", options.prev = "xdsoft_next"), options.datepicker ? datepicker.addClass("active") : datepicker.removeClass("active"), options.timepicker ? timepicker.addClass("active") : timepicker.removeClass("active"), options.value && (_xdsoft_datetime.setCurrentTime(options.value), input && input.val && input.val(_xdsoft_datetime.str)), isNaN(options.dayOfWeekStart) ? options.dayOfWeekStart = 0 : options.dayOfWeekStart = parseInt(options.dayOfWeekStart, 10) % 7, options.timepickerScrollbar || timeboxparent.xdsoftScroller("hide"), options.minDate && /^[\+\-](.*)$/.test(options.minDate) && (options.minDate = dateHelper.formatDate(_xdsoft_datetime.strToDateTime(options.minDate), options.formatDate)), options.maxDate && /^[\+\-](.*)$/.test(options.maxDate) && (options.maxDate = dateHelper.formatDate(_xdsoft_datetime.strToDateTime(options.maxDate), options.formatDate)), applyButton.toggle(options.showApplyButton), month_picker.find(".xdsoft_today_button").css("visibility", options.todayButton ? "visible" : "hidden"), month_picker.find("." + options.prev).css("visibility", options.prevButton ? "visible" : "hidden"), month_picker.find("." + options.next).css("visibility", options.nextButton ? "visible" : "hidden"), setMask(options), options.validateOnBlur && input.off("blur.xdsoft").on("blur.xdsoft", function() { 8387 if (options.allowBlank && (!$.trim($(this).val()).length || "string" == typeof options.mask && $.trim($(this).val()) === options.mask.replace(/[0-9]/g, "_"))) $(this).val(null), datetimepicker.data("xdsoft_datetime").empty(); 8388 else { 8389 var d = dateHelper.parseDate($(this).val(), options.format); 8390 if (d) $(this).val(dateHelper.formatDate(d, options.format)); 8391 else { 8392 var splittedHours = +[$(this).val()[0], $(this).val()[1]].join(""), 8393 splittedMinutes = +[$(this).val()[2], $(this).val()[3]].join(""); 8394 !options.datepicker && options.timepicker && splittedHours >= 0 && splittedHours < 24 && splittedMinutes >= 0 && splittedMinutes < 60 ? $(this).val([splittedHours, splittedMinutes].map(function(item) { return item > 9 ? item : "0" + item }).join(":")) : $(this).val(dateHelper.formatDate(_xdsoft_datetime.now(), options.format)) 8395 } 8396 datetimepicker.data("xdsoft_datetime").setCurrentTime($(this).val()) 8397 } 8398 datetimepicker.trigger("changedatetime.xdsoft"), datetimepicker.trigger("close.xdsoft") 8399 }), options.dayOfWeekStartPrev = 0 === options.dayOfWeekStart ? 6 : options.dayOfWeekStart - 1, datetimepicker.trigger("xchange.xdsoft").trigger("afterOpen.xdsoft") 8400 }, datetimepicker.data("options", options).on("touchstart mousedown.xdsoft", function(event) { return event.stopPropagation(), event.preventDefault(), yearselect.hide(), monthselect.hide(), !1 }), timeboxparent.append(timebox), timeboxparent.xdsoftScroller(), datetimepicker.on("afterOpen.xdsoft", function() { timeboxparent.xdsoftScroller() }), datetimepicker.append(datepicker).append(timepicker), options.withoutCopyright !== !0 && datetimepicker.append(xdsoft_copyright), datepicker.append(month_picker).append(calendar).append(applyButton), $(options.parentID).append(datetimepicker), XDSoft_datetime = function() { 8401 var _this = this; 8402 _this.now = function(norecursion) { var date, time, d = new Date; return !norecursion && options.defaultDate && (date = _this.strToDateTime(options.defaultDate), d.setFullYear(date.getFullYear()), d.setMonth(date.getMonth()), d.setDate(date.getDate())), options.yearOffset && d.setFullYear(d.getFullYear() + options.yearOffset), !norecursion && options.defaultTime && (time = _this.strtotime(options.defaultTime), d.setHours(time.getHours()), d.setMinutes(time.getMinutes())), d }, _this.isValidDate = function(d) { return "[object Date]" === Object.prototype.toString.call(d) && !isNaN(d.getTime()) }, _this.setCurrentTime = function(dTime, requireValidDate) { "string" == typeof dTime ? _this.currentTime = _this.strToDateTime(dTime) : _this.isValidDate(dTime) ? _this.currentTime = dTime : dTime || requireValidDate || !options.allowBlank ? _this.currentTime = _this.now() : _this.currentTime = null, datetimepicker.trigger("xchange.xdsoft") }, _this.empty = function() { _this.currentTime = null }, _this.getCurrentTime = function(dTime) { return _this.currentTime }, _this.nextMonth = function() { void 0 !== _this.currentTime && null !== _this.currentTime || (_this.currentTime = _this.now()); var year, month = _this.currentTime.getMonth() + 1; return 12 === month && (_this.currentTime.setFullYear(_this.currentTime.getFullYear() + 1), month = 0), year = _this.currentTime.getFullYear(), _this.currentTime.setDate(Math.min(new Date(_this.currentTime.getFullYear(), month + 1, 0).getDate(), _this.currentTime.getDate())), _this.currentTime.setMonth(month), options.onChangeMonth && $.isFunction(options.onChangeMonth) && options.onChangeMonth.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data("input")), year !== _this.currentTime.getFullYear() && $.isFunction(options.onChangeYear) && options.onChangeYear.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data("input")), datetimepicker.trigger("xchange.xdsoft"), month }, _this.prevMonth = function() { void 0 !== _this.currentTime && null !== _this.currentTime || (_this.currentTime = _this.now()); var month = _this.currentTime.getMonth() - 1; return month === -1 && (_this.currentTime.setFullYear(_this.currentTime.getFullYear() - 1), month = 11), _this.currentTime.setDate(Math.min(new Date(_this.currentTime.getFullYear(), month + 1, 0).getDate(), _this.currentTime.getDate())), _this.currentTime.setMonth(month), options.onChangeMonth && $.isFunction(options.onChangeMonth) && options.onChangeMonth.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data("input")), datetimepicker.trigger("xchange.xdsoft"), month }, _this.getWeekOfYear = function(datetime) { if (options.onGetWeekOfYear && $.isFunction(options.onGetWeekOfYear)) { var week = options.onGetWeekOfYear.call(datetimepicker, datetime); if ("undefined" != typeof week) return week } var onejan = new Date(datetime.getFullYear(), 0, 1); return 4 != onejan.getDay() && onejan.setMonth(0, 1 + (4 - onejan.getDay() + 7) % 7), Math.ceil(((datetime - onejan) / 864e5 + onejan.getDay() + 1) / 7) }, _this.strToDateTime = function(sDateTime) { var timeOffset, currentTime, tmpDate = []; return sDateTime && sDateTime instanceof Date && _this.isValidDate(sDateTime) ? sDateTime : (tmpDate = /^(\+|\-)(.*)$/.exec(sDateTime), tmpDate && (tmpDate[2] = dateHelper.parseDate(tmpDate[2], options.formatDate)), tmpDate && tmpDate[2] ? (timeOffset = tmpDate[2].getTime() - 6e4 * tmpDate[2].getTimezoneOffset(), currentTime = new Date(_this.now(!0).getTime() + parseInt(tmpDate[1] + "1", 10) * timeOffset)) : currentTime = sDateTime ? dateHelper.parseDate(sDateTime, options.format) : _this.now(), _this.isValidDate(currentTime) || (currentTime = _this.now()), currentTime) }, _this.strToDate = function(sDate) { if (sDate && sDate instanceof Date && _this.isValidDate(sDate)) return sDate; var currentTime = sDate ? dateHelper.parseDate(sDate, options.formatDate) : _this.now(!0); return _this.isValidDate(currentTime) || (currentTime = _this.now(!0)), currentTime }, _this.strtotime = function(sTime) { if (sTime && sTime instanceof Date && _this.isValidDate(sTime)) return sTime; var currentTime = sTime ? dateHelper.parseDate(sTime, options.formatTime) : _this.now(!0); return _this.isValidDate(currentTime) || (currentTime = _this.now(!0)), currentTime }, _this.str = function() { return dateHelper.formatDate(_this.currentTime, options.format) }, _this.currentTime = this.now() 8403 }, _xdsoft_datetime = new XDSoft_datetime, applyButton.on("touchend click", function(e) { e.preventDefault(), datetimepicker.data("changed", !0), _xdsoft_datetime.setCurrentTime(getCurrentValue()), input.val(_xdsoft_datetime.str()), datetimepicker.trigger("close.xdsoft") }), month_picker.find(".xdsoft_today_button").on("touchend mousedown.xdsoft", function() { datetimepicker.data("changed", !0), _xdsoft_datetime.setCurrentTime(0, !0), datetimepicker.trigger("afterOpen.xdsoft") }).on("dblclick.xdsoft", function() { 8404 var minDate, maxDate, currentDate = _xdsoft_datetime.getCurrentTime(); 8405 currentDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate()), minDate = _xdsoft_datetime.strToDate(options.minDate), minDate = new Date(minDate.getFullYear(), minDate.getMonth(), minDate.getDate()), currentDate < minDate || (maxDate = _xdsoft_datetime.strToDate(options.maxDate), maxDate = new Date(maxDate.getFullYear(), maxDate.getMonth(), maxDate.getDate()), currentDate > maxDate || (input.val(_xdsoft_datetime.str()), input.trigger("change"), datetimepicker.trigger("close.xdsoft"))) 8406 }), month_picker.find(".xdsoft_prev,.xdsoft_next").on("touchend mousedown.xdsoft", function() { 8407 var $this = $(this), 8408 timer = 0, 8409 stop = !1; 8410 ! function arguments_callee1(v) { $this.hasClass(options.next) ? _xdsoft_datetime.nextMonth() : $this.hasClass(options.prev) && _xdsoft_datetime.prevMonth(), options.monthChangeSpinner && (stop || (timer = setTimeout(arguments_callee1, v || 100))) }(500), $([document.body, window]).on("touchend mouseup.xdsoft", function arguments_callee2() { clearTimeout(timer), stop = !0, $([document.body, window]).off("touchend mouseup.xdsoft", arguments_callee2) }) 8411 }), timepicker.find(".xdsoft_prev,.xdsoft_next").on("touchend mousedown.xdsoft", function() { 8412 var $this = $(this), 8413 timer = 0, 8414 stop = !1, 8415 period = 110; 8416 ! function arguments_callee4(v) { 8417 var pheight = timeboxparent[0].clientHeight, 8418 height = timebox[0].offsetHeight, 8419 top = Math.abs(parseInt(timebox.css("marginTop"), 10)); 8420 $this.hasClass(options.next) && height - pheight - options.timeHeightInTimePicker >= top ? timebox.css("marginTop", "-" + (top + options.timeHeightInTimePicker) + "px") : $this.hasClass(options.prev) && top - options.timeHeightInTimePicker >= 0 && timebox.css("marginTop", "-" + (top - options.timeHeightInTimePicker) + "px"), timeboxparent.trigger("scroll_element.xdsoft_scroller", [Math.abs(parseInt(timebox[0].style.marginTop, 10) / (height - pheight))]), period = period > 10 ? 10 : period - 10, stop || (timer = setTimeout(arguments_callee4, v || period)) 8421 }(500), $([document.body, window]).on("touchend mouseup.xdsoft", function arguments_callee5() { clearTimeout(timer), stop = !0, $([document.body, window]).off("touchend mouseup.xdsoft", arguments_callee5) }) 8422 }), xchangeTimer = 0, datetimepicker.on("xchange.xdsoft", function(event) { 8423 clearTimeout(xchangeTimer), xchangeTimer = setTimeout(function() { 8424 if (void 0 === _xdsoft_datetime.currentTime || null === _xdsoft_datetime.currentTime) { 8425 if (options.allowBlank) return; 8426 _xdsoft_datetime.currentTime = _xdsoft_datetime.now() 8427 } 8428 for (var j, hDate, day, d, y, m, w, customDateSettings, line_time, description, table = "", start = new Date(_xdsoft_datetime.currentTime.getFullYear(), _xdsoft_datetime.currentTime.getMonth(), 1, 12, 0, 0), i = 0, today = _xdsoft_datetime.now(), maxDate = !1, minDate = !1, classes = [], newRow = !0, time = "", h = ""; start.getDay() !== options.dayOfWeekStart;) start.setDate(start.getDate() - 1); 8429 for (table += "<table><thead><tr>", options.weeks && (table += "<th></th>"), j = 0; j < 7; j += 1) table += "<th>" + options.i18n[globalLocale].dayOfWeekShort[(j + options.dayOfWeekStart) % 7] + "</th>"; 8430 for (table += "</tr></thead>", table += "<tbody>", options.maxDate !== !1 && (maxDate = _xdsoft_datetime.strToDate(options.maxDate), maxDate = new Date(maxDate.getFullYear(), maxDate.getMonth(), maxDate.getDate(), 23, 59, 59, 999)), options.minDate !== !1 && (minDate = _xdsoft_datetime.strToDate(options.minDate), minDate = new Date(minDate.getFullYear(), minDate.getMonth(), minDate.getDate())); i < _xdsoft_datetime.currentTime.countDaysInMonth() || start.getDay() !== options.dayOfWeekStart || _xdsoft_datetime.currentTime.getMonth() === start.getMonth();) classes = [], i += 1, day = start.getDay(), d = start.getDate(), y = start.getFullYear(), m = start.getMonth(), w = _xdsoft_datetime.getWeekOfYear(start), description = "", classes.push("xdsoft_date"), customDateSettings = options.beforeShowDay && $.isFunction(options.beforeShowDay.call) ? options.beforeShowDay.call(
8430datetimepicker, start) : null, options.allowDateRe && "[object RegExp]" === Object.prototype.toString.call(options.allowDateRe) ? options.allowDateRe.test(dateHelper.formatDate(start, options.formatDate)) || classes.push("xdsoft_disabled") : options.allowDates && options.allowDates.length > 0 ? options.allowDates.indexOf(dateHelper.formatDate(start, options.formatDate)) === -1 && classes.push("xdsoft_disabled") : maxDate !== !1 && start > maxDate || minDate !== !1 && start < minDate || customDateSettings && customDateSettings[0] === !1 ? classes.push("xdsoft_disabled") : options.disabledDates.indexOf(dateHelper.formatDate(start, options.formatDate)) !== -1 ? classes.push("xdsoft_disabled") : options.disabledWeekDays.indexOf(day) !== -1 ? classes.push("xdsoft_disabled") : input.is("[readonly]") && classes.push("xdsoft_disabled"), customDateSettings && "" !== customDateSettings[1] && classes.push(customDateSettings[1]), _xdsoft_datetime.currentTime.getMonth() !== m && classes.push("xdsoft_other_month"), (options.defaultSelect || datetimepicker.data("changed")) && dateHelper.formatDate(_xdsoft_datetime.currentTime, options.formatDate) === dateHelper.formatDate(start, options.formatDate) && classes.push("xdsoft_current"), dateHelper.formatDate(today, options.formatDate) === dateHelper.formatDate(start, options.formatDate) && classes.push("xdsoft_today"), 0 !== start.getDay() && 6 !== start.getDay() && options.weekends.indexOf(dateHelper.formatDate(start, options.formatDate)) === -1 || classes.push("xdsoft_weekend"), void 0 !== options.highlightedDates[dateHelper.formatDate(start, options.formatDate)] && (hDate = options.highlightedDates[dateHelper.formatDate(start, options.formatDate)], classes.push(void 0 === hDate.style ? "xdsoft_highlighted_default" : hDate.style), description = void 0 === hDate.desc ? "" : hDate.desc), options.beforeShowDay && $.isFunction(options.beforeShowDay) && classes.push(options.beforeShowDay(start)), newRow && (table += "<tr>", newRow = !1, options.weeks && (table += "<th>" + w + "</th>")), table += '<td data-date="' + d + '" data-month="' + m + '" data-year="' + y + '" class="xdsoft_date xdsoft_day_of_week' + start.getDay() + " " + classes.join(" ") + '" title="' + description + '"><div>' + d + "</div></td>", start.getDay() === options.dayOfWeekStartPrev && (table += "</tr>", newRow = !0), start.setDate(d + 1); 8431 if (table += "</tbody></table>", calendar.html(table), month_picker.find(".xdsoft_label span").eq(0).text(options.i18n[globalLocale].months[_xdsoft_datetime.currentTime.getMonth()]), month_picker.find(".xdsoft_label span").eq(1).text(_xdsoft_datetime.currentTime.getFullYear()), time = "", h = "", m = "", line_time = function(h, m) { 8432 var optionDateTime, current_time, now = _xdsoft_datetime.now(), 8433 isALlowTimesInit = options.allowTimes && $.isArray(options.allowTimes) && options.allowTimes.length; 8434 now.setHours(h), h = parseInt(now.getHours(), 10), now.setMinutes(m), m = parseInt(now.getMinutes(), 10), optionDateTime = new Date(_xdsoft_datetime.currentTime), optionDateTime.setHours(h), optionDateTime.setMinutes(m), classes = [], options.minDateTime !== !1 && options.minDateTime > optionDateTime || options.maxTime !== !1 && _xdsoft_datetime.strtotime(options.maxTime).getTime() < now.getTime() || options.minTime !== !1 && _xdsoft_datetime.strtotime(options.minTime).getTime() > now.getTime() ? classes.push("xdsoft_disabled") : options.minDateTime !== !1 && options.minDateTime > optionDateTime || options.disabledMinTime !== !1 && now.getTime() > _xdsoft_datetime.strtotime(options.disabledMinTime).getTime() && options.disabledMaxTime !== !1 && now.getTime() < _xdsoft_datetime.strtotime(options.disabledMaxTime).getTime() ? classes.push("xdsoft_disabled") : input.is("[readonly]") && classes.push("xdsoft_disabled"), current_time = new Date(_xdsoft_datetime.currentTime), current_time.setHours(parseInt(_xdsoft_datetime.currentTime.getHours(), 10)), isALlowTimesInit || current_time.setMinutes(Math[options.roundTime](_xdsoft_datetime.currentTime.getMinutes() / options.step) * options.step), (options.initTime || options.defaultSelect || datetimepicker.data("changed")) && current_time.getHours() === parseInt(h, 10) && (!isALlowTimesInit && options.step > 59 || current_time.getMinutes() === parseInt(m, 10)) && (options.defaultSelect || datetimepicker.data("changed") ? classes.push("xdsoft_current") : options.initTime && classes.push("xdsoft_init_time")), parseInt(today.getHours(), 10) === parseInt(h, 10) && parseInt(today.getMinutes(), 10) === parseInt(m, 10) && classes.push("xdsoft_today"), time += '<div class="xdsoft_time ' + classes.join(" ") + '" data-hour="' + h + '" data-minute="' + m + '">' + dateHelper.formatDate(now, options.formatTime) + "</div>" 8435 }, options.allowTimes && $.isArray(options.allowTimes) && options.allowTimes.length) 8436 for (i = 0; i < options.allowTimes.length; i += 1) h = _xdsoft_datetime.strtotime(options.allowTimes[i]).getHours(), m = _xdsoft_datetime.strtotime(options.allowTimes[i]).getMinutes(), line_time(h, m); 8437 else 8438 for (i = 0, j = 0; i < (options.hours12 ? 12 : 24); i += 1) 8439 for (j = 0; j < 60; j += options.step) h = (i < 10 ? "0" : "") + i, m = (j < 10 ? "0" : "") + j, line_time(h, m); 8440 for (timebox.html(time), opt = "", i = 0, i = parseInt(options.yearStart, 10) + options.yearOffset; i <= parseInt(options.yearEnd, 10) + options.yearOffset; i += 1) opt += '<div class="xdsoft_option ' + (_xdsoft_datetime.currentTime.getFullYear() === i ? "xdsoft_current" : "") + '" data-value="' + i + '">' + i + "</div>"; 8441 for (yearselect.children().eq(0).html(opt), i = parseInt(options.monthStart, 10), opt = ""; i <= parseInt(options.monthEnd, 10); i += 1) opt += '<div class="xdsoft_option ' + (_xdsoft_datetime.currentTime.getMonth() === i ? "xdsoft_current" : "") + '" data-value="' + i + '">' + options.i18n[globalLocale].months[i] + "</div>";
8442 monthselect.children().eq(0).html(opt), $(datetimepicker).trigger("generate.xdsoft") 8443 }, 10), event.stopPropagation() 8444 }).on("afterOpen.xdsoft", function() { 8445 if (options.timepicker) { 8446 var classType, pheight, height, top; 8447 timebox.find(".xdsoft_current").length ? classType = ".xdsoft_current" : timebox.find(".xdsoft_init_time").length && (classType = ".xdsoft_init_time"), classType ? (pheight = timeboxparent[0].clientHeight, height = timebox[0].offsetHeight, top = timebox.find(classType).index() * options.timeHeightInTimePicker + 1, height - pheight < top && (top = height - pheight), timeboxparent.trigger("scroll_element.xdsoft_scroller", [parseInt(top, 10) / (height - pheight)])) : timeboxparent.trigger("scroll_element.xdsoft_scroller", [0]) 8448 } 8449 }), timerclick = 0, calendar.on("touchend click.xdsoft", "td", function(xdevent) { 8450 xdevent.stopPropagation(), timerclick += 1; 8451 var $this = $(this), 8452 currentTime = _xdsoft_datetime.currentTime; 8453 return void 0 !== currentTime && null !== currentTime || (_xdsoft_datetime.currentTime = _xdsoft_datetime.now(), currentTime = _xdsoft_datetime.currentTime), !$this.hasClass("xdsoft_disabled") && (currentTime.setDate(1), currentTime.setFullYear($this.data("year")), currentTime.setMonth($this.data("month")), currentTime.setDate($this.data("date")), datetimepicker.trigger("select.xdsoft", [currentTime]), input.val(_xdsoft_datetime.str()), options.onSelectDate && $.isFunction(options.onSelectDate) && options.onSelectDate.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data("input"), xdevent), datetimepicker.data("changed", !0), datetimepicker.trigger("xchange.xdsoft"), datetimepicker.trigger("changedatetime.xdsoft"), (timerclick > 1 || options.closeOnDateSelect === !0 || options.closeOnDateSelect === !1 && !options.timepicker) && !options.inline && datetimepicker.trigger("close.xdsoft"), void setTimeout(function() { timerclick = 0 }, 200)) 8454 }), timebox.on("touchmove", "div", function() { currentlyScrollingTimeDiv = !0 }).on("touchend click.xdsoft", "div", function(xdevent) { 8455 if (xdevent.stopPropagation(), currentlyScrollingTimeDiv) return void(currentlyScrollingTimeDiv = !1); 8456 var $this = $(this), 8457 currentTime = _xdsoft_datetime.currentTime; 8458 return void 0 !== currentTime && null !== currentTime || (_xdsoft_datetime.currentTime = _xdsoft_datetime.now(), currentTime = _xdsoft_datetime.currentTime), !$this.hasClass("xdsoft_disabled") && (currentTime.setHours($this.data("hour")), currentTime.setMinutes($this.data("minute")), datetimepicker.trigger("select.xdsoft", [currentTime]), datetimepicker.data("input").val(_xdsoft_datetime.str()), options.onSelectTime && $.isFunction(options.onSelectTime) && options.onSelectTime.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data("input"), xdevent), datetimepicker.data("changed", !0), datetimepicker.trigger("xchange.xdsoft"), datetimepicker.trigger("changedatetime.xdsoft"), void(options.inline !== !0 && options.closeOnTimeSelect === !0 && datetimepicker.trigger("close.xdsoft"))) 8459 }), datepicker.on("mousewheel.xdsoft", function(event) { return !options.scrollMonth || (event.deltaY < 0 ? _xdsoft_datetime.nextMonth() : _xdsoft_datetime.prevMonth(), !1) }), input.on("mousewheel.xdsoft", function(event) { 8460 return !options.scrollInput || (!options.datepicker && options.timepicker ? (current_time_index = timebox.find(".xdsoft_current").length ? timebox.find(".xdsoft_current").eq(0).index() : 0, current_time_index + event.deltaY >= 0 && current_time_index + event.deltaY < timebox.children().length && (current_time_index += event.deltaY), timebox.children().eq(current_time_index).length && timebox.children().eq(current_time_index).trigger("mousedown"), !1) : options.datepicker && !options.timepicker ? (datepicker.trigger(event, [event.deltaY, event.deltaX, event.deltaY]), input.val && input.val(_xdsoft_datetime.str()), datetimepicker.trigger("changedatetime.xdsoft"), !1) : void 0) 8461 }), datetimepicker.on("changedatetime.xdsoft", function(event) { 8462 if (options.onChangeDateTime && $.isFunction(options.onChangeDateTime)) { 8463 var $input = datetimepicker.data("input"); 8464 options.onChangeDateTime.call(datetimepicker, _xdsoft_datetime.currentTime, $input, event), delete options.value, $input.trigger("change") 8465 } 8466 }).on("generate.xdsoft", function() { options.onGenerate && $.isFunction(options.onGenerate) && options.onGenerate.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data("input")), triggerAfterOpen && (datetimepicker.trigger("afterOpen.xdsoft"), triggerAfterOpen = !1) }).on("click.xdsoft", function(xdevent) { xdevent.stopPropagation() }
8466), current_time_index = 0, forEachAncestorOf = function(node, callback) { 8467 do 8468 if (node = node.parentNode, callback(node) === !1) break; 8469 while ("HTML" !== node.nodeName) 8470 }, setPos = function() { 8471 var dateInputOffset, dateInputElem, verticalPosition, left, position, datetimepickerElem, dateInputHasFixedAncestor, $dateInput, windowWidth, verticalAnchorEdge, datetimepickerCss, windowHeight, windowScrollTop; 8472 if ($dateInput = datetimepicker.data("input"), dateInputOffset = $dateInput.offset(), dateInputElem = $dateInput[0], verticalAnchorEdge = "top", verticalPosition = dateInputOffset.top + dateInputElem.offsetHeight - 1, left = dateInputOffset.left, position = "absolute", windowWidth = $(window).width(), windowHeight = $(window).height(), windowScrollTop = $(window).scrollTop(), document.documentElement.clientWidth - dateInputOffset.left < datepicker.parent().outerWidth(!0)) { 8473 var diff = datepicker.parent().outerWidth(!0) - dateInputElem.offsetWidth; 8474 left -= diff 8475 } 8476 "rtl" === $dateInput.parent().css("direction") && (left -= datetimepicker.outerWidth() - $dateInput.outerWidth()), options.fixed ? (verticalPosition -= windowScrollTop, left -= $(window).scrollLeft(), position = "fixed") : (dateInputHasFixedAncestor = !1, forEachAncestorOf(dateInputElem, function(ancestorNode) { if ("fixed" === window.getComputedStyle(ancestorNode).getPropertyValue("position")) return dateInputHasFixedAncestor = !0, !1 }), dateInputHasFixedAncestor ? (position = "fixed", verticalPosition + datetimepicker.outerHeight() > windowHeight + windowScrollTop ? (verticalAnchorEdge = "bottom", verticalPosition = windowHeight + windowScrollTop - dateInputOffset.top) : verticalPosition -= windowScrollTop) : verticalPosition + dateInputElem.offsetHeight > windowHeight + windowScrollTop && (verticalPosition = dateInputOffset.top - dateInputElem.offsetHeight + 1), verticalPosition < 0 && (verticalPosition = 0), left + dateInputElem.offsetWidth > windowWidth && (left = windowWidth - dateInputElem.offsetWidth)), datetimepickerElem = datetimepicker[0], forEachAncestorOf(datetimepickerElem, function(ancestorNode) { var ancestorNodePosition; if (ancestorNodePosition = window.getComputedStyle(ancestorNode).getPropertyValue("position"), "relative" === ancestorNodePosition && windowWidth >= ancestorNode.offsetWidth) return left -= (windowWidth - ancestorNode.offsetWidth) / 2, !1 }), datetimepickerCss = { position: position, left: left, top: "", bottom: "" }, datetimepickerCss[verticalAnchorEdge] = verticalPosition, datetimepicker.css(datetimepickerCss) 8477 }, datetimepicker.on("open.xdsoft", function(event) { 8478 var onShow = !0; 8479 options.onShow && $.isFunction(options.onShow) && (onShow = options.onShow.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data("input"), event)), onShow !== !1 && (datetimepicker.show(), setPos(), $(window).off("resize.xdsoft", setPos).on("resize.xdsoft", setPos), options.closeOnWithoutClick && $([document.body, window]).on("touchstart mousedown.xdsoft", function arguments_callee6() { datetimepicker.trigger("close.xdsoft"), $([document.body, window]).off("touchstart mousedown.xdsoft", arguments_callee6) })) 8480 }).on("close.xdsoft", function(event) { 8481 var onClose = !0; 8482 month_picker.find(".xdsoft_month,.xdsoft_year").find(".xdsoft_select").hide(), options.onClose && $.isFunction(options.onClose) && (onClose = options.onClose.call(datetimepicker, _xdsoft_datetime.currentTime, datetimepicker.data("input"), event)), onClose === !1 || options.opened || options.inline || datetimepicker.hide(), event.stopPropagation() 8483 }).on("toggle.xdsoft", function() { datetimepicker.is(":visible") ? datetimepicker.trigger("close.xdsoft") : datetimepicker.trigger("open.xdsoft") }).data("input", input), timer = 0, datetimepicker.data("xdsoft_datetime", _xdsoft_datetime), datetimepicker.setOptions(options), _xdsoft_datetime.setCurrentTime(getCurrentValue()), input.data("xdsoft_datetimepicker", datetimepicker).on("open.xdsoft focusin.xdsoft mousedown.xdsoft touchstart", function() { input.is(":disabled") || input.data("xdsoft_datetimepicker").is(":visible") && options.closeOnInputClick || (clearTimeout(timer), timer = setTimeout(function() { input.is(":disabled") || (triggerAfterOpen = !0, _xdsoft_datetime.setCurrentTime(getCurrentValue(), !0), options.mask && setMask(options), datetimepicker.trigger("open.xdsoft")) }, 100)) }).on("keydown.xdsoft", function(event) { var elementSelector, key = event.which; return [ENTER].indexOf(key) !== -1 && options.enterLikeTab ? (elementSelector = $("input:visible,textarea:visible,button:visible,a:visible"), datetimepicker.trigger("close.xdsoft"), elementSelector.eq(elementSelector.index(this) + 1).focus(), !1) : [TAB].indexOf(key) !== -1 ? (datetimepicker.trigger("close.xdsoft"), !0) : void 0 }).on("blur.xdsoft", function() { datetimepicker.trigger("close.xdsoft") }) 8484 }, destroyDateTimePicker = function(input) { 8485 var datetimepicker = input.data("xdsoft_datetimepicker"); 8486 datetimepicker && (datetimepicker.data("xdsoft_datetime", null), datetimepicker.remove(), input.data("xdsoft_datetimepicker", null).off(".xdsoft"), $(window).off("resize.xdsoft"), $([window, document.body]).off("mousedown.xdsoft touchstart"), input.unmousewheel && input.unmousewheel()) 8487 }, $(document).off("keydown.xdsoftctrl keyup.xdsoftctrl").on("keydown.xdsoftctrl", function(e) { e.keyCode === CTRLKEY && (ctrlDown = !0) }).on("keyup.xdsoftctrl", function(e) { e.keyCode === CTRLKEY && (ctrlDown = !1) }), this.each(function() { 8488 var $input, datetimepicker = $(this).data("xdsoft_datetimepicker"); 8489 if (datetimepicker) { 8490 if ("string" === $.type(opt)) switch (opt) { 8491 case "show": 8492 $(this).select().focus(), datetimepicker.trigger("open.xdsoft"); 8493 break; 8494 case "hide": 8495 datetimepicker.trigger("close.xdsoft"); 8496 break; 8497 case "toggle": 8498 datetimepicker.trigger("toggle.xdsoft"); 8499 break; 8500 case "destroy": 8501 destroyDateTimePicker($(this)); 8502 break; 8503 case "reset": 8504 this.value = this.defaultValue, this.value && datetimepicker.data("xdsoft_datetime").isValidDate(dateHelper.parseDate(this.value, options.format)) || datetimepicker.data("changed", !1), datetimepicker.data("xdsoft_datetime").setCurrentTime(this.value); 8505 break; 8506 case "validate": 8507 $input = datetimepicker.data("input"), $input.trigger("blur.xdsoft"); 8508 break; 8509 default: 8510 datetimepicker[opt] && $.isFunction(datetimepicker[opt]) && (result = datetimepicker[opt](opt2)) 8511 } else datetimepicker.setOptions(opt); 8512 return 0 8513 } 8514 "string" !== $.type(opt) && (!options.lazyInit || options.open || options.inline ? createDateTimePicker($(this)) : lazyInit($(this))) 8515 }), result 8516 }, $.fn.datetimepicker.defaults = default_options 8517}), 8518function(factory) { "function" == typeof define && define.amd ? define(["jquery"], factory) : "object" == typeof exports ? module.exports = factory : factory(jQuery) }(function($) { 8519 function handler(event) { 8520 var orgEvent = event || window.event, 8521 args = slice.call(arguments, 1), 8522 delta = 0, 8523 deltaX = 0, 8524 deltaY = 0, 8525 absDelta = 0, 8526 offsetX = 0, 8527 offsetY = 0; 8528 if (event = $.event.fix(orgEvent), event.type = "mousewheel", "detail" in orgEvent && (deltaY = orgEvent.detail * -1), "wheelDelta" in orgEvent && (deltaY = orgEvent.wheelDelta), "wheelDeltaY" in orgEvent && (deltaY = orgEvent.wheelDeltaY), "wheelDeltaX" in orgEvent && (deltaX = orgEvent.wheelDeltaX * -1), "axis" in orgEvent && orgEvent.axis === orgEvent.HORIZONTAL_AXIS && (deltaX = deltaY * -1, deltaY = 0), delta = 0 === deltaY ? deltaX : deltaY, "deltaY" in orgEvent && (deltaY = orgEvent.deltaY * -1, delta = deltaY), "deltaX" in orgEvent && (deltaX = orgEvent.deltaX, 0 === deltaY && (delta = deltaX * -1)), 0 !== deltaY || 0 !== deltaX) { 8529 if (1 === orgEvent.deltaMode) { 8530 var lineHeight = $.data(this, "mousewheel-line-height"); 8531 delta *= lineHeight, deltaY *= lineHeight, deltaX *= lineHeight 8532 } else if (2 === orgEvent.deltaMode) { 8533 var pageHeight = $.data(this, "mousewheel-page-height"); 8534 delta *= pageHeight, deltaY *= pageHeight, deltaX *= pageHeight 8535 } 8536 if (absDelta = Math.max(Math.abs(deltaY), Math.abs(deltaX)), (!lowestDelta || absDelta < lowestDelta) && (lowestDelta = absDelta, shouldAdjustOldDeltas(orgEvent, absDelta) && (lowestDelta /= 40)), shouldAdjustOldDeltas(orgEvent, absDelta) && (delta /= 40, deltaX /= 40, deltaY /= 40), delta = Math[delta >= 1 ? "floor" : "ceil"](delta / lowestDelta), deltaX = Math[deltaX >= 1 ? "floor" : "ceil"](deltaX / lowestDelta), deltaY = Math[deltaY >= 1 ? "floor" : "ceil"](deltaY / lowestDelta), special.settings.normalizeOffset && this.getBoundingClientRect) { 8537 var boundingRect = this.getBoundingClientRect(); 8538 offsetX = event.clientX - boundingRect.left, offsetY = event.clientY - boundingRect.top 8539 } 8540 return event.deltaX = deltaX, event.deltaY = deltaY, event.deltaFactor = lowestDelta, event.offsetX = offsetX, event.offsetY = offsetY, event.deltaMode = 0, args.unshift(event, delta, deltaX, deltaY), nullLowestDeltaT
8540imeout && clearTimeout(nullLowestDeltaTimeout), nullLowestDeltaTimeout = setTimeout(nullLowestDelta, 200), ($.event.dispatch || $.event.handle).apply(this, args) 8541 } 8542 } 8543 8544 function nullLowestDelta() { lowestDelta = null } 8545 8546 function shouldAdjustOldDeltas(orgEvent, absDelta) { return special.settings.adjustOldDeltas && "mousewheel" === orgEvent.type && absDelta % 120 === 0 } 8547 var nullLowestDeltaTimeout, lowestDelta, toFix = ["wheel", "mousewheel", "DOMMouseScroll", "MozMousePixelScroll"], 8548 toBind = "onwheel" in document || document.documentMode >= 9 ? ["wheel"] : ["mousewheel", "DomMouseScroll", "MozMousePixelScroll"], 8549 slice = Array.prototype.slice; 8550 if ($.event.fixHooks) 8551 for (var i = toFix.length; i;) $.event.fixHooks[toFix[--i]] = $.event.mouseHooks; 8552 var special = $.event.special.mousewheel = { 8553 version: "3.1.12", 8554 setup: function() { 8555 if (this.addEventListener) 8556 for (var i = toBind.length; i;) this.addEventListener(toBind[--i], handler, !1); 8557 else this.onmousewheel = handler; 8558 $.data(this, "mousewheel-line-height", special.getLineHeight(this)), $.data(this, "mousewheel-page-height", special.getPageHeight(this)) 8559 }, 8560 teardown: function() { 8561 if (this.removeEventListener) 8562 for (var i = toBind.length; i;) this.removeEventListener(toBind[--i], handler, !1); 8563 else this.onmousewheel = null; 8564 $.removeData(this, "mousewheel-line-height"), $.removeData(this, "mousewheel-page-height") 8565 }, 8566 getLineHeight: function(elem) { 8567 var $elem = $(elem), 8568 $parent = $elem["offsetParent" in $.fn ? "offsetParent" : "parent"](); 8569 return $parent.length || ($parent = $("body")), parseInt($parent.css("fontSize"), 10) || parseInt($elem.css("fontSize"), 10) || 16 8570 }, 8571 getPageHeight: function(elem) { return $(elem).height() }, 8572 settings: { adjustOldDeltas: !0, normalizeOffset: !0 } 8573 }; 8574 $.fn.extend({ mousewheel: function(fn) { return fn ? this.bind("mousewheel", fn) : this.trigger("mousewheel") }, unmousewheel: function(fn) { return this.unbind("mousewheel", fn) } }) 8575}), jQuery(document).ready(function($) { 8576 $.event.special.mousewheel.getLineHeight = function(elem) { 8577 var $elem = $(elem), 8578 $parent = $elem["offsetParent" in $.fn ? "offsetParent" : "parent"](); 8579 return $parent.length || ($parent = $("body")), elem.ownerDocument ? parseInt($parent.css("fontSize"), 10) || parseInt($elem.css("fontSize"), 10) || 16 : 16 8580 } 8581 }), Function.prototype.bind || (Function.prototype.bind = function(oThis) { 8582 if ("function" != typeof this) throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable"); 8583 var aArgs = Array.prototype.slice.call(arguments, 1), 8584 fToBind = this, 8585 fNOP = function() {}, 8586 fBound = function() { return fToBind.apply(this instanceof fNOP ? this : oThis, aArgs.concat(Array.prototype.slice.call(arguments))) }; 8587 return fNOP.prototype = this.prototype, fBound.prototype = new fNOP, fBound 8588 }), 8589 function() { 8590 var initializing = !1; 8591 this.Class = function() {}, this.Class._isClass = !0, this.Class._instances = [], this.Class._inheritors = [], this.Class.prototype._window = window, this.Class.prototype.observers = {}, this.Class.prototype.firedEvents = {}, this.Class.prototype.observe = function(event, observer, bind, to) { 8592 if (event.indexOf(" ") != -1) { for (var events = event.split(" "), i = 0; i < events.length; i++) this.observe(events[i], observer, bind, to); return this } 8593 return event in this.observers || (this.observers[event] = []), this.observers[event] || (this.observers[event] = []), "function" == typeof this.observers[event] && (this.observers[event] = [this.observers[event]]), this.observers[event].push(observer), bind && "once" in bind && bind.once(to || "destroy", function() { 8594 var index = this.observers[event].indexOf(observer); 8595 index !== -1 && this.observers[event].splice(index, 1) 8596 }.bind(this)), this 8597 }, this.Class.prototype.debounce = function(event, time, observer) { if (event.indexOf(" ") != -1) { for (var events = event.split(" "), i = 0; i < events.length; i++) this.debounce(events[i], time, observer); return this } return event in this.observers || (this.observers[event] = []), this.observers[event] || (this.observers[event] = []), "function" == typeof this.observers[event] && (this.observers[event] = [this.observers[event]]), this.observers[event].push({ observer: observer, debounceTimeout: null, debounceTime: time }), this }, this.Class.prototype.promise = function(event, observer, once, bind, to) { if (event.indexOf(" ") != -1) { for (var events = event.split(" "), i = 0; i < events.length; i++) this.promise(events[i], observer, once); return this } return event in this.firedEvents && (observer.apply(this, this.firedEvents[event]), once) ? this
8597: (this[once ? "once" : "observe"](event, observer, bind, to), this) }, this.Class.prototype.once = function(event, observer, bind, to) { 8598 if (event.indexOf(" ") != -1) { for (var events = event.split(" "), i = 0; i < events.length; i++) this.once(events[i], observer); return this } 8599 return event in this.observers || (this.observers[event] = []), this.observers[event] || (this.observers[event] = []), "function" == typeof this.observers[event] && (this.observers[event] = [this.observers[event]]), this.observers[event].push({ observer: observer, delete: !0 }), bind && "once" in bind && bind.once(to || "destroy", function() { 8600 var index = this.observers[event].indexOf(observer); 8601 index !== -1 && this.observers[event].splice(index, 1) 8602 }.bind(this)), this 8603 }, this.Class.prototype.executeObservers = function(event, args) { 8604 if (!(event in this.observers)) return this; 8605 this.observers[event] || (this.observers[event] = []), "function" == typeof this.observers[event] && (this.observers[event] = [this.observers[event]]); 8606 for (var i = 0; i < this.observers[event].length; i++) { 8607 var observer = this.observers[event][i]; 8608 if (observer) { 8609 if ("function" == typeof observer) observer.apply(this, args); 8610 else if ("delete" in observer && observer.delete) { 8611 if (observer.observer.apply(this, args), !this.observers[event]) return this; 8612 this.observers[event][i] = null 8613 } else "debounceTimeout" in observer && (window.clearTimeout(observer.debounceTimeout), observer.debounceTimeout = window.setTimeout(function(observer, args) { return function() { observer.observer.apply(this, args) }.bind(this) }.bind(this)(observer, args), observer.debounceTime)); 8614 if (!(this.observers && event in this.observers)) return this 8615 } 8616 } 8617 return this 8618 }, this.Class.prototype.notify = function(event, args, deferred) { 8619 var i; 8620 if (deferred) return window.setTimeout(function() { this.notify(event, args) }.bind(this), 0), this; 8621 if (event.indexOf(" ") != -1) { var events = event.split(" "); for (i = 0; i < events.length; i++) this.notify(events[i], args); return this } 8622 if (this.firedEvents[event] = args, event + ":before" in this.observers && this.executeObservers(event + ":before", args), this.executeObservers(event, args), event + ":after" in this.observers && this.executeObservers(event + ":after", args), this.constructor._observers && this.constructor._observers.hasOwnProperty(event)) 8623 for (i = 0; i < this.constructor._observers[event].length; i++) { var observer = this.constructor._observers[event][i]; "function" == typeof observer && observer.apply(this, args) } 8624 return this 8625 }, this.Class.prototype.hooks = {}, this.Class.prototype.hook = function(event, hook) { return event in this.hooks || (this.hooks[event] = []), this.hooks[event] || (this.hooks[event] = []), "function" == typeof this.hooks[event] && (this.hooks[event] = [this.hooks[event]]), this.hooks[event].push(hook), this }, this.Class.prototype.call = function(event, args) { 8626 var callReturn = !0; 8627 if (!(event in this.hooks)) return callReturn; 8628 this.hooks[event] || (this.hooks[event] = []), "function" == typeof this.hooks[event] && (this.hooks[event] = [this.hooks[event]]); 8629 for (var i = 0; i < this.hooks[event].length; i++) { 8630 var hookReturn = this.hooks[event][i].apply(this, args); 8631 callReturn = !(!callReturn || "undefined" == typeof hookReturn) && hookReturn 8632 } 8633 return callReturn 8634 }, this.Class.prototype.destroy = function() { this.notify("destroy"); for (var property in this) "function" == typeof this[property] ? this[property] = function() {} : "undefined" != typeof jQuery && this[property] instanceof jQuery ? this[property] = null : "object" == typeof this[property] ? this[property] = {} : _.isArray(this[property]) ? this[property] = [] : this[property] = null }, Class.extend = function(prop) { 8635 var _super = this.prototype; 8636 initializing = !0; 8637 var prototype = new this; 8638 initializing = !1; 8639 for (var name in prop) { var value = prop[name]; "function" == typeof prop[name] && "function" == typeof _super[name] && (value.base = _super[name]), prototype[name] = value } 8640 var Class = function() { 8641 if (!initializing) { 8642 for (var name in this)(_.isPlainObject(this[name]) || _.isArray(this[name])) && (this[name] = _.cloneDeep(this[name])); 8643 this._class = Class; 8644 var args = Array.prototype.slice.call(arguments); 8645 this.__wakeup && this.__wakeup.call(this, args), this.init && this.init.apply(this, args), Class._instances.push(this) 8646 } 8647 }; 8648 return Class._isClass = !0, Class._instances = [], Class._inheritors = [], Class._observers = {}, Class.prototype = prototype, Class.prototype.constructor = Class, this._inheritors.push(Class), Class.getInstances = function(inheritors) { 8649 var instances = this._instances; 8650 if (inheritors) 8651 for (var i = 0; i < this._inheritors.length; ++i) instances = instances.concat(this._inheritors[i].getInstances(!0)); 8652 return instances 8653 }, Class.observe = function(event, observer) { if (event.indexOf(" ") != -1) { for (var events = event.split(" "), i = 0; i < events.length; i++) this.observe(events[i], observer); return this } return event in this._observers || (this._observers[event] = []), this._observers[event].push(observer), this }, Class.extend = arguments.callee.bind(Class), Class 8654 }, this.extendAvailable = function(candidates, object, parentize) { 8655 for (var i = 0; i < candidates.length; i++) 8656 if ("function" == typeof this[candidates[i]] && "Class" == this[candidates[i]].name) { var newObject = this[candidates[i]].extend(object); return parentize && (this[candidates[i]].prototype._window[candidates[i]] = newObject), newObject } 8657 return this.Class.extend(object) 8658 } 8659 }(); 8660var File = Class.extend({ 8661 id: "", 8662 created_at: !1, 8663 name: "", 8664 extension: "", 8665 domain: "", 8666 mime: "", 8667 type: "", 8668 size: null, 8669 width: null, 8670 height: null, 8671 displayWidth: null, 8672 displayHeight: null, 8673 rotation: null, 8674 cropX: null, 8675 cropY: null, 8676 cropWidth: null, 8677 cropHeight: null, 8678 blur: 0, 8679 grayscale: !1, 8680 url: "", 8681 thumbnail: "", 8682 internal: !1, 8683 in_use: !1, 8684 tags: [], 8685 aesthetic: null, 8686 init: function(properties) { 8687 if ("object" == typeof properties) _.merge(this, properties); 8688 else if ("string" == typeof properties) { 8689 var matches = properties.match(/(.*?)?(\/images\/([^\/]+)\/([0-9]+)\/(.*(\.[a-z]+)?))/i); 8690 if (matches) { 8691 this.setDomain(matches[1] || ""), this.setUrl(matches[2].replace("/" + matches[3] + "/", "/0/")); 8692 var display = matches[3].match(/^([0-9]+)(?:x([0-9]+))?/); 8693 display && (this.setDisplayWidth(display[1]), this.setDisplayHeight(display[2])); 8694 var cropping = matches[3].match(/(?:,|%2C)([0-9]+)x([0-9]+)(?:\+|%2B|%252B|%25252B)([\-0-9]+)(?:(?:\+|%2B|%252B|%25252B)([\-0-9]+))?/i); 8695 cropping && (this.setCropX(cropping[3]), this.setCropY(cropping[4] || 0), this.setCropWidth(cropping[1]), this.setCropHeight(cropping[2])); 8696 var rotation = matches[3].match(/(?:,|%2C)([\-0-9]+)(?:,|$)/i); 8697 rotation && this.setRotation(parseInt(rotation[1]));
8698 var filters = matches[3].match(/(?:,|%2C)(?:B([0-9]+))?(G)?$/i); 8699 filters && (this.setBlur(parseInt(filters[1])), this.setGrayscale(!!filters[2])), this.setId(matches[4]), this.setName(matches[5]), this.setExtension(matches[6]), this.setInternal(!0) 8700 } else { 8701 this.setUrl(properties), this.setInternal(!1); 8702 var matches = properties.match(/(https?:\/\/([^\/]*))?(.*?([^\/]*(\.[a-z]+)$))/i); 8703 matches && (this.setDomain(matches[1] || ""), this.setName(matches[4] || ""), this.setExtension(matches[5] || "")) 8704 }(this.getName() || "").match(/\.(pdf|doc|docx|xls|odt|ods|ppt)$/i) ? this.setType("document") : (this.getName() || "").match(/\.(?!jpg|jpeg|png|gif|tiff)[a-z0-9]+$/i) ? this.setType("unknown") : this.setType("image") 8705 } 8706 return this 8707 }, 8708 is: function(file) { return !!(file && "id" in file) && file.id == this.id }, 8709 getTags: function() { return this.tags }, 8710 getAesthetic: function() { return this.aesthetic }, 8711 getId: function() { return this.id }, 8712 getCreatedAt: function() { return !!this.created_at && new Date(this.created_at.replace(/-/g, "/")) }, 8713 getName: function() { return this.name }, 8714 getExtension: function() { return this.extension }, 8715 getDomain: function() { return this.domain }, 8716 getMime: function() { return this.mime }, 8717 getType: function() { return this.type }, 8718 getWidth: function() { return this.width }, 8719 getHeight: function() { return this.height }, 8720 getDisplayWidth: function() { return this.displayWidth }, 8721 getDisplayHeight: function() { return this.displayHeight }, 8722 getRotation: function() { return this.rotation }, 8723 getCropX: function() { return this.cropX }, 8724 getCropY: function() { return this.cropY }, 8725 getCropWidth: function() { return this.cropWidth }, 8726 getCropHeight: function() { return this.cropHeight }, 8727 getGrayscale: function() { return this.grayscale }, 8728 getBlur: function() { return this.blur }, 8729 isCropped: function() { return this.cropX !== !1 && "undefined" !== this.cropX && null !== this.cropX && "undefined" !== this.cropY && null !== this.cropY && "undefined" !== this.cropWidth && null !== this.cropWidth && "undefined" !== this.cropHeight && null !== this.cropHeight }, 8730 isRotated: function() { return this.rotation }, 8731 isModified: function() { return this.getDisplayWidth() || this.isCropped() || this.isRotated() || this.getBlur() || this.getGrayscale() }, 8732 getSize: function(human) { 8733 if (human) { 8734 var units = ["B", "KB", "MB", "GB", "TB", "PB"], 8735 size = this.size; 8736 for (i = 0; size > 1024; i++) size = Math.round(size / 10.24) / 100; 8737 return size + " " + units[i] 8738 } 8739 return this.size 8740 }, 8741 getAspectRatio: function(uncropped) { return this.isCropped() && uncropped !== !1 ? this.getCropWidth() / (this.getCropHeight() || 1) : this.getWidth() / (this.getHeight() || 1) }, 8742 getUrl: function() { return this.domain + this.url }, 8743 getThumbnail: function() { return this.thumbnail }, 8744 getInternal: function() { return this.internal }, 8745 getInUse: function() { return this.in_use }, 8746 getImageSize: function(width, height, uncropped, unrotated, unfiltered) { var url = this.getUrl(); if ("full" === width && (width = 0), "default" === width && (width = "undefined" != typeof viewport && viewport && "getImageDefaultWidth" in viewport ? viewport.getImageDefaultWidth() : 1200), "image" != this.getType() || !this.getId()) return url; var sizePath = height ? parseInt(width) + "x" + parseInt(height) : parseInt(width); return this.isCropped() && !uncropped && (sizePath += "%2C" + parseInt(this.getCropWidth()) + "x" + parseInt(this.getCropHeight()) + "%2B" + parseInt(this.getCropX()) + "%2B" + parseInt(this.getCropY())), this.isRotated() && !unrotated && (sizePath += "%2C" + this.getRotation()), !this.getBlur() && !this.getGrayscale() || unfiltered || (sizePath += "%2C", this.getBlur() && (sizePath += "B" + this.getBlur()), this.getGrayscale() && (sizePath += "G")), this.setDisplayWidth(parseInt(width)), height && this.setDisplayHeight(parseInt(height)), url.replace(/\/images\/[^\/]+\//, "/images/" + sizePath + "/") }, 8747 shrink: function(maxSize, uncropped, unrotated, unfiltered) { return "image" == this.getType() && this.getId() ? (this.getWidth() && this.getHeight() && (this.getHeight() > this.getWidth() && (maxSize = this.getWidth() / this.getHeight() * maxSize), maxSize > this.getWidth() && (maxSize = this.getWidth())), this.getImageSize(maxSize, null, uncropped, unrotated, unfiltered)) : this.getUrl() }, 8748 getLightboxImage: function() { 8749 var width = "undefined" != typeof viewport && viewport && "getImageDefaultWidth" in viewport ? viewport.getImageDefaultWidth() : 1200, 8750 rotationBefore = this.getRotation(), 8751 rotationLightbox = 90 * Math.round((this.getRotation() || 0) / 360 * 4); 8752 this.setRotation(rotationLightbox); 8753 var url = this.shrink(width, !0, !1, !0); 8754 return this.setRotation(rotationBefore), url 8755 }, 8756 setId: function(id) { return this.id = id, this }, 8757 setCreatedAt: function(created_at) { return this.created_at = created_at, this }, 8758 setName: function(name) { return this.name = name, this }, 8759 setExtension: function(extension) { return this.extension = extension, this }, 8760 setDomain: function(domain) { return this.domain = domain, this }, 8761 setMime: function(mime) { return this.mime = mime, this }, 8762 setType: function(type) { return this.type = type, this }, 8763 setSize: function(size) { return this.size = size, this }, 8764 setWidth: function(width) { return this.width = width, this }, 8765 setHeight: function(height) { return this.height = height, this }, 8766 setDisplayWidth: function(width) { return this.displayWidth = width, this }, 8767 setDisplayHeight: function(height) { return this.displayHeight = height, this }, 8768 setUrl: function(url) { return this.url = url, this },
8769 setThumbnail: function(thumbnail) { return this.thumbnail = thumbnail, this }, 8770 setInternal: function(internal) { return this.internal = internal, this }, 8771 setInUse: function(in_use) { return this.in_use = in_use, this }, 8772 setRotation: function(rotation) { return this.rotation = rotation, this }, 8773 setCropX: function(cropX) { return this.cropX = cropX, this }, 8774 setCropY: function(cropY) { return this.cropY = cropY, this }, 8775 setCropWidth: function(cropWidth) { return this.cropWidth = cropWidth, this }, 8776 setCropHeight: function(cropHeight) { return this.cropHeight = cropHeight, this }, 8777 setCrop: function(cropX, cropY, cropWidth, cropHeight) { return cropX === !1 || 0 == cropX && 0 == cropY && cropWidth == this.getWidth() && cropHeight == this.getHeight() ? (this.cropX = !1, this.cropY = !1, this.cropWidth = !1, this.cropHeight = !1) : (this.cropX = cropX, this.cropY = cropY, this.cropWidth = cropWidth, this.cropHeight = cropHeight), this }, 8778 setGrayscale: function(grayscale) { return this.grayscale = grayscale, this }, 8779 setBlur: function(blur) { return this.blur = blur, this }, 8780 autoCrop: function(aspectRatio) { 8781 var imageAspectRatio = (this.getCropWidth() || this.getWidth()) / (this.getCropHeight() || this.getHeight()); 8782 if (imageAspectRatio.toFixed(4) == aspectRatio.toFixed(4)); 8783 else if (this.getRotation() && 180 != Math.abs(this.getRotation())) { 8784 var largestRectangle = function(width, height, angle) { 8785 angle *= Math.PI / 180; 8786 var sideShort, sideLong, widthIsLonger = width >= height; 8787 widthIsLonger ? (sideLong = width, sideShort = height) : (sideLong = height, sideShort = width); 8788 var sinA = Math.abs(Math.sin(angle)); 8789 if (cosA = Math.abs(Math.cos(angle)), sideShort <= 2 * sinA * cosA * sideLong) { var x = .5 * sideShort; return widthIsLonger ? { width: x / sinA, height: x / cosA } : { width: x / cosA, height: x / sinA } } 8790 var cos2a = cosA * cosA - sinA * sinA; 8791 return { width: (width * cosA - height * sinA) / cos2a, height: (height * cosA - width * sinA) / cos2a } 8792 }, 8793 cropArea = largestRectangle(this.getWidth(), this.getHeight(), this.getRotation()); 8794 cropArea.ratio = cropArea.width / cropArea.height, aspectRatio > cropArea.ratio ? (this.setCropWidth(cropArea.width), this.setCropHeight(cropArea.width / aspectRatio)) : (this.setCropHeight(cropArea.height), this.setCropWidth(cropArea.height * aspectRatio)), this.setCropX(this.getWidth() / 2 - this.getCropWidth() / 2), this.setCropY(this.getHeight() / 2 - this.getCropHeight() / 2) 8795 } else if (aspectRatio > imageAspectRatio) 8796 if (this.isCropped()) { 8797 var imageCropWidth = this.getCropHeight() * aspectRatio, 8798 imageCropHeight = this.getCropHeight(), 8799 imageCropX = this.getCropX(), 8800 imageCropY = this.getCropY(); 8801 imageCropWidth > this.getWidth() && (imageCropWidth = this.getWidth(), imageCropHeight = this.getWidth() / aspectRatio); 8802 var cropWidthDifference = imageCropWidth - this.getCropWidth(), 8803 cropHeightDifference = this.getCropHeight() - imageCropHeight; 8804 imageCropX -= cropWidthDifference / 2, imageCropY -= cropHeightDifference / 2, imageCropX = Math.max(0, Math.min(this.getWidth() - imageCropWidth, imageCropX)), imageCropY = Math.max(0, Math.min(this.getHeight() - imageCropHeight, imageCropY)), this.setCrop(imageCropX, imageCropY, imageCropWidth, imageCropHeight) 8805 } else { 8806 var imageCropWidth = this.getWidth(), 8807 imageCropHeight = this.getWidth() / aspectRatio, 8808 imageCropY = this.getHeight() / 2 - imageCropHeight / 2; 8809 this.setCrop(0, imageCropY, imageCropWidth, imageCropHeight) 8810 } 8811 else if (this.isCropped()) { 8812 var imageCropHeight = this.getCropWidth() / aspectRatio, 8813 imageCropWidth = this.getCropWidth(), 8814 imageCropX = this.getCropX(), 8815 imageCropY = this.getCropY(); 8816 imageCropHeight > this.getHeight() && (imageCropHeight = this.getHeight(), imageCropWidth = this.getHeight() * aspectRatio); 8817 var cropWidthDifference = this.getCropWidth() - imageCropWidth, 8818 cropHeightDifference = imageCropHeight - this.getCropHeight(); 8819 imageCropX -= cropWidthDifference / 2, imageCropY -= cropHeightDifference / 2, imageCropX = Math.max(0, Math.min(this.getWidth() - imageCropWidth, imageCropX)), imageCropY = Math.max(0, Math.min(this.getHeight() - imageCropHeight, imageCropY)), this.setCrop(imageCropX, imageCropY, imageCropWidth, imageCropHeight) 8820 } else { 8821 var imageCropHeight = this.getHeight(), 8822 imageCropWidth = this.getHeight() * aspectRatio, 8823 imageCropX = this.getWidth() / 2 - imageCropWidth / 2; 8824 this.setCrop(imageCropX, 0, imageCropWidth, imageCropHeight) 8825 } 8826 return this 8827 } 8828 }), 8829 cms = null, 8830 editor = null; 8831try { if (window.frameElement && window.frameElement.cms && window.frameElement.editor && window.parent && window.parent.window) { cms = window.frameElement.cms, editor = window.frameElement.editor; for (var prop in window.parent.window) window.parent.window.hasOwnProperty(prop) && "function" == typeof window.parent.window[prop] && "_isClass" in window.parent.window[prop] && (window[prop] = window.parent.window[prop]) } } catch (e) { console.error("Instantiation error:", e) } 8832var Page = extendAvailable(["Page"], { 8833 elements: [], 8834 current: !0, 8835 init: function() { return "ready" in this && this.ready(), this.initElements(), this }, 8836 getAllElements: function() { return this.elements }, 8837 initElements: function($elements) { 8838 return $elements || ($elements = $(".ed-element")), $elements.each(function(key, element) { 8839 if (!("element" in element && element.element)) { 8840 var elementType = $(element).attr("class").replace("ed-element", ""); 8841 if (elementType = (elementType.match(/ed-(?!stranger|reference-)([a-z\-]+)/) || [null, null])[1], !elementType) return void console.warn("Couldn't find matching type for element: ", element); 8842 if (elementType = "Element" + elementType.replace(/^([a-z])|\-([a-z])/g, function(match, first, second) { return (first || second).toUpperCase() }), elementType in window) 8843 if ("undefined" != typeof cms && cms) try { new window[elementType](element) } catch (error) { cms.promise("ready", function() { cms.getWindow().onerror
8843(error, document.location.href, "initialization") }, !0) } else { 8844 var elm = new window[elementType](element); 8845 this.elements.push(elm), elm.once("destroy", function() { 8846 var index = this.elements.indexOf(elm); 8847 index !== -1 && this.elements.splice(index, 1) 8848 }.bind(this)) 8849 } 8850 } 8851 }.bind(this)), this 8852 } 8853 }), 8854 Viewport = Class.extend({ 8855 jQuery: jQuery, 8856 window: window, 8857 width: 0, 8858 height: 0, 8859 scrollTop: 0, 8860 scrollBottom: 0, 8861 scrollLeft: 0, 8862 scrollRight: 0, 8863 imageDefaultWidth: 1200, 8864 backgroundDefaultWidth: 1680, 8865 animationFrameSupported: !1, 8866 requestedAnimationFrames: [], 8867 requestFrameOnMousewheel: !0, 8868 init: function() { 8869 if (this.update(), this.bindEvents(), this.initOverlayLinks(), this.isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent), this.isTouch = !!("ontouchstart" in window || navigator.msMaxTouchPoints), this.isTouch) { 8870 this.isTouch = !1; 8871 var checkTouchSupport = function() { this.isTouch = !0, window.removeEventListener("touchstart", checkTouchSupport) }.bind(this); 8872 window.addEventListener("touchstart", checkTouchSupport) 8873 } 8874 return this 8875 }, 8876 update: function() { return this.width = this.jQuery(window).width(), this.height = this.jQuery(window).height(), this.scrollTop = this.jQuery(window).scrollTop(), this.scrollBottom = this.scrollTop + this.height, this.scrollLeft = this.jQuery(window).scrollLeft(), this.scrollRight = this.scrollLeft + this.width, this }, 8877 bindEvents: function() { return this.jQuery(this.window).on({ resize: function(event) { event.target == window && (this.width = this.jQuery(window).width(), this.height = this.jQuery(window).height(), this.notify("resize")) }.bind(this), scroll: function() { this.scrollTop = this.jQuery(window).scrollTop(), this.scrollBottom = this.scrollTop + this.height, this.scrollLeft = this.jQuery(window).scrollLeft(), this.scrollRight = this.scrollLeft + this.width, this.scrollStartTimeout ? window.clearTimeout(this.scrollStartTimeout) : this.notify("scroll.start"), this.scrollStartTimeout = window.setTimeout(function() { this.scrollStartTimeout = !1 }.bind(this), 1e3), this.notify("scroll"), this.requestAnimationFrame("scroll") }.bind(this), load: function() { this.notify("load") }.bind(this) }), this.observe("load:after resize:after", function() { this.width = this.jQuery(window).width(), this.height = this.jQuery(window).height() }.bind(this)), this.requestFrameOnMousewheel && this.jQuery(this.window).on("mousewheel DOMMouseScroll", function() { this.requestAnimationFrame("scroll") }.bind(this)), this }, 8878 initOverlayLinks: function() { 8879 var self = this; 8880 return this.jQuery(document).on("click", ".wv-link-overlay", function(event) { 8881 event.preventDefault(); 8882 var href = this.getAttribute("href"); 8883 href && self.promise("api.magnific.ready", function() { 8884 this.jQuery.magnificPopup.open({ items: { src: href }, type: "iframe", fixedContentPos: !1, callbacks: { open: function() { this.notify("overlay.open") }.bind(this), close: function() { this.notify("overlay.close") }.bind(this) } }) 8885 }.bind(self), !0).requireMagnific() 8886 }), this 8887 }, 8888 requestAnimationFrame: function(type) { return this.animationFrameSupported ? (this.requestedAnimationFrames.indexOf(type) === -1 && this.requestedAnimationFrames.push(type), this.animationFrameRequested || (this.animationFrameRequested = !0, this.window.requestAnimationFrame(this.animationFrame.bind(this))), this) : (this.notify("frame." + type), this) }, 8889 animationFrame: function() { this.animationFrameRequested = !1; for (var i = 0; i < this.requestedAnimationFrames.length; i++) this.notify("frame." + this.requestedAnimationFrames[i]); return this.requestedAnimationFrames = [], this }, 8890 getWidth: function() { return this.width }, 8891 getHeight: function() { return this.height }, 8892 getScrollTop: function() { return this.scrollTop }, 8893 getScrollBottom: function() { return this.scrollBottom }, 8894 getScrollLeft: function() { return this.scrollLeft }, 8895 getScrollRight: function() { return this.scrollRight }, 8896 setScrollTop: function(scrollTop) { return this.scrollTop = scrollTop, this.jQuery(this.window).scrollTop(scrollTop), this }, 8897 setScrollLeft: function(scrollLeft) { return this.scrollLeft = scrollLeft, this.jQuery(this.window).scrollLeft(scrollLeft), this }, 8898 getIsTouch: function() { return this.isTouch }, 8899 getIsMobile: function() { return this.isMobile }, 8900 getImageDefaultWidth: function() { return this.imageDefaultWidth },
8901 getBackgroundDefaultWidth: function() { return this.backgroundDefaultWidth }, 8902 scrollTo: function(target, position, duration, offset) { 8903 position || (position = "top"), offset || (offset = 0), target instanceof ElementBase && "getMainElement" in target && (target = target.getMainElement()); 8904 var originalOffset = offset, 8905 originalTarget = target; 8906 if (this.jQuery(".ed-element, #menu, #header, #navigation").filter(function(index, element) { var $element = $(element); return !!$element.is(":visible") && ("fixed" === $element.css("position") && !($element.height() > this.getHeight() / 2)) }.bind(this)).each(function(index, element) { parseInt(this.jQuery(element).css("top") || 0) < 10 && this.jQuery(element).width() >= Math.min(600, this.getWidth()) && (offset -= this.jQuery(element).outerHeight()) }.bind(this)), "object" == typeof target) { 8907 var $target = this.jQuery(target); 8908 if (!$target.is(":visible")) return this; 8909 target = $target.offset().top, "center" == position ? target += $target.outerHeight() / 2 : "bottom" == position && (target += $target.outerHeight()) 8910 } 8911 return "center" == position ? target -= this.getHeight() / 2 : "bottom" == position && (target -= this.getHeight()), this.jQuery("html, body").stop(!0).animate({ scrollTop: target + offset }, duration || 0, function() { duration > 0 && this.scrollTo(originalTarget, position, 0, originalOffset) }.bind(this)), this 8912 }, 8913 targetVisible: function(target, section) { 8914 var $target = target; 8915 $target = target instanceof ElementBase && "getMainElement" in target ? target.getMainElement() : this.jQuery(target); 8916 var offset = $target.offset().top, 8917 height = $target.height(); 8918 return !section && offset + height > this.getScrollTop() && offset < this.getScrollBottom() || section === !0 || "full" == section && offset > this.getScrollTop() && offset + height < this.getScrollBottom() || "top" == section && offset > this.getScrollTop() && offset < this.getScrollBottom() || "bottom" == section && offset + height > this.getScrollTop() && offset + height < this.getScrollBottom() 8919 }, 8920 getVisibleElements: function() { 8921 var $elements = this.jQuery(".ed-element:not(.wv-bg)"), 8922 result = []; 8923 return $elements.each(function(element) { 8924 var $elm = $(element), 8925 offset = $elm.offset(), 8926 height = $elm.height(); 8927 offset.top + height > this.getScrollTop() && offset.top < this.getScrollBottom() && result.push($elm[0].element) 8928 }.bind(this)), result 8929 }, 8930 getElementAtPosition: function(x, y) { if (!("elementFromPoint" in this.window.document)) return !1; "center" == x && (x = this.getWidth() / 2), "left" == x && (x = 1), "right" == x && (x = this.getWidth() - 1), "center" == y && (y = this.getHeight() / 2), "top" == y && (y = 1), "bottom" == y && (y = this.getHeight() - 1); var element = this.window.document.elementFromPoint(x, y); return !!element && this.jQuery(element) }, 8931 getIsFixed: function($element) { return "HTML" !== $element.prop("tagName") && ("fixed" !== $element.css("position") ? this.getIsFixed($element.offsetParent()) : $element) }, 8932 requireScript: function(url, callback) { var script = document.createElement("script"); return script.type = "text/javascript", script.readyState ? script.onreadystatechange = function() { "loaded" != script.readyState && "complete" != script.readyState || (script.onreadystatechange = null, "function" == typeof callback && callback()) }.bind(this) : script.onload = function() { "function" == typeof callback && callback() }.bind(this), script.src = url, document.getElementsByTagName("head")[0].appendChild(script), this }, 8933 requireMapsApi: function() { if ("undefined" != typeof google && "maps" in google) return this.notify("api.maps.ready"); if (!this.mapsApiRequired) return this.mapsApiRequired = !0, this.requireScript("//maps.google.com/maps/api/js?key=" + Viewport.GOOGLE_MAPS_TOKEN, function() { this.notify("api.maps.ready") }.bind(this)), this }, 8934 requireFlexslider: function() { if ("flexslider" in $) return this.notify("api.flexslider.ready"); if (!this.flexsliderRequired) return this.flexsliderRequired = !0, this.requireScript("/webcard/vendor/flexslider/jquery.flexslider.js", function() { this.notify("api.flexslider.ready") }.bind(this)), this }, 8935 requireSlick: function() { if ("slick" in $) return this.notify("api.slick.ready"); if (!this.slickRequired) return this.slickRequired = !0, this.requireScript("/js/power/slick.min.js", function() { this.notify("api.slick.ready") }.bind(this)), this }, 8936 requireMagnific: function() { if ("magnificPopup" in $) return this.notify("api.magnific.ready"); if (!this.magnificRequired) return this.magnificRequired = !0, this.requireScript("/webcard/vendor/magnific-popup/jquery.magnific-popup.min.js", function() { this.notify("api.magnific.ready") }.bind(this)), this } 8937 }); 8938Viewport.GOOGLE_MAPS_TOKEN = "AIzaSyBTzXpnx9TPTScpuA9DL9jbGwPNYcnj-dU"; 8939var Animations = Class.extend({ 8940 elements: { all: [], load: [], scroll: [], grouped: {} },
8941 highestOffset: 0, 8942 lowestOffset: 0, 8943 forced: !1, 8944 init: function(elements) { return this.getEnabled() && this.start(elements), this.initGroups(), this.initTriggers(), viewport.observe("scroll", this.executeScroll.bind(this)), viewport.observe("resize", this.calculateOffsets.bind(this)), this.calculateOffsets(), this }, 8945 setForced: function(forced) { return this.forced = forced, this }, 8946 isForced: function() { return this.forced }, 8947 reset: function() { 8948 for (var elements = this.getAllAnimatedElements(), i = 0; i < elements.length; i++) { 8949 var animation = elements[i].getAnimation(), 8950 $target = elements[i].getAnimationTarget(); 8951 switch ($target.velocity("finish").stop(!0), $target.css({ display: "", visibility: "" }), elements[i].wasAnimated(!1), animation.type) { 8952 case "fade": 8953 $target.css({ opacity: "" }); 8954 break; 8955 case "slide": 8956 $target.css({ overflow: "", height: "" }); 8957 break; 8958 case "overlay": 8959 viewport.promise("api.magnific.ready", function() { viewport.jQuery.magnificPopup.close(), $target.css({ position: "", width: "", maxWidth: "", textAlign: "", marginLeft: "", marginRight: "" }).removeClass("mfp-hide") }) 8960 } 8961 this.updateTriggers(elements[i], !1) 8962 } 8963 return this 8964 }, 8965 start: function(elements) { this.elements.all = [], this.elements.load = [], this.elements.scroll = [], this.elements.grouped = [], this.collectElements(elements), this.setInitialStatus(); for (var elements = this.getLoadAnimatedElements(), neededAnimations = 0, finishedAnimations = 0, i = 0; i < elements.length; i++) elements[i].getAnimatedParent() || (neededAnimations++, elements[i].once("animation.end", function() { finishedAnimations++, finishedAnimations >= neededAnimations && this.executeScroll() }.bind(this))); return window.setTimeout(function() { this.executeOnload(), neededAnimations || this.executeScroll() }.bind(this), 500), this }, 8966 getEnabled: function() { return !!this.isForced() || !("undefined" != typeof editor && editor && !editor.getView().getPreview()) }, 8967 getCompatibilityMode: function() { 8968 if (/iP(hone|od|ad)/.test(navigator.userAgent)) { 8969 var match = navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/), 8970 version = parseInt(match[1], 10); 8971 if (version < 9) return !0 8972 } 8973 return !1 8974 }, 8975 collectElements: function(elements) { 8976 if ("undefined" == typeof elements || !elements) { 8977 if ("undefined" == typeof editor || !editor) return this; 8978 elements = editor.getAllElements() 8979 } 8980 for (var i = 0; i < elements.length; i++) 8981 if (!(this.elements.all.indexOf(elements[i]) >= 0)) { 8982 var animation = elements[i].getAnimation(); 8983 animation && "none" != animation.type && (this.elements.all.push(elements[i]), "scroll" == animation.trigger ? this.elements.scroll.push(elements[i]) : "onload" == animation.trigger && this.elements.load.push(elements[i]), animation.group.name && (animation.group.name in this.elements.grouped || (this.elements.grouped[animation.group.name] = []), this.elements.grouped[animation.group.name].push(elements[i]))) 8984 } 8985 return this 8986 }, 8987 setInitialStatus: function(elements) { 8988 "undefined" != typeof elements && elements || (elements = this.getAllAnimatedElements()); 8989 for (var i = 0; i < elements.length; i++) { 8990 var animation = elements[i].getAnimation(), 8991 $target = elements[i].getAnimationTarget(); 8992 animation && "none" != animation.type && "pulse" != animation.type && "flash" != animation.type && ("overlay" == animation.type ? ($target.hide(), this.updateTriggers(elements[i], !0)) : animation.initial && (!this.getCompatibilityMode() || "onload" != animation.trigger && "scroll" != animation.trigger) ? "hide" == animation.initial ? (animation.keepHeight ? $target.css("visibility", "hidden") : $target.hide(), this.updateTriggers(elements[i], !0)) : ($target.show(), this.updateTriggers(elements[i], !1)) : this.updateTriggers(elements[i], !1)) 8993 } 8994 return this 8995 }, 8996 initSubsequent: function(elements) { return this.collectElements(elements), this.setInitialStatus(elements), this }, 8997 initGroups: function() { 8998 return viewport.observe("animation.start", function(element, reverse, trigger) { 8999 var animation = element.getAnimation(); 9000 if (animation.group.name && animation.group.name != trigger) 9001 for (var groupMembers = this.getGroupAnimatedElements(animation.group.name), i = 0; i < groupMembers.length; i++) 9002 if (!groupMembers[i].is(element)) { 9003 var memberAnimation = groupMembers[i].getAnimation(); 9004 memberAnimation && ("show" == memberAnimation.group.behavior[reverse ? "hide" : "show"] ? groupMembers[i].animate(!1, animation.group.name) : "hide" == memberAnimation.group.behavior[reverse ? "hide" : "show"] && groupMembers[i].animate(!0, animation.group.name)) 9005 } 9006 }.bind(this)), this 9007 }, 9008 getScrollAnimatedElements: function() { return this.elements.scroll }, 9009 getLoadAnimatedElements: function() { return this.elements.load }, 9010 getGroupAnimatedElements: function(group) { return group && group in this.elements.grouped ? this.elements.grouped[group] : this.elements.grouped }, 9011 getAllAnimatedElements: function() { return this.elements.all }, 9012 executeScroll: function() { 9013 if (!this.getEnabled() || this.getCompatibilityMode()) return this;
9014 for (var elements = this.getScrollAnimatedElements(), i = 0; i < elements.length; i++) 9015 if (!elements[i].wasAnimated()) { 9016 var hidden = "none" == elements[i].getElement().css("display"); 9017 elements[i].getElement().show(); 9018 var offset = elements[i].getElement().offset().top; 9019 hidden && elements[i].getElement().css("display", "none"), viewport.getScrollBottom() > offset && elements[i].animate() 9020 } 9021 return this 9022 }, 9023 executeOnload: function() { 9024 for (var elements = this.getLoadAnimatedElements(), i = 0; i < elements.length; i++) 9025 if (!(elements[i].wasAnimated() || this.getCompatibilityMode() && "overlay" != elements[i].getAnimation().type)) { 9026 var parent = elements[i].getAnimatedParent(); 9027 parent && parent.getIsAnimated() ? parent.once("animation.start", function(element) { return function() { element.getElement().imagesLoaded({ background: !0 }, function() { window.setTimeout(function() { element.animate() }, 0) }) } }(elements[i])) : elements[i].getElement().imagesLoaded({ background: !0 }, function(element) { return function() { window.setTimeout(function() { element.animate() }, 0) } }(elements[i])) 9028 } 9029 return this 9030 }, 9031 getTriggers: function(element) { return viewport.jQuery('.wv-link-elm[href="#' + element.getId(!0) + '"]') }, 9032 updateTriggers: function(element, reverse) { var $triggers = this.getTriggers(element); return $triggers.length ? (reverse ? $triggers.removeClass("active") : $triggers.addClass("active"), this) : this }, 9033 initTriggers: function() { return viewport.observe("animation.start", function(element, reverse) { this.updateTriggers(element, reverse) }.bind(this)), viewport.jQuery(document).on("click", ".wv-link-elm", function(event) { event.preventDefault(); var element = document.getElementById((this.getAttribute("href") || "").replace(/^#/, "")); return !!element && (element.element && element.element.getIsAnimated() ? element.element.animate(null, this) : void viewport.scrollTo(element, "top", 500, -50)) }), this }, 9034 calculateOffsets: function() { 9035 this.highestOffset = 0, this.lowestOffset = 0; 9036 for (var elements = this.getAllAnimatedElements(), i = 0; i < elements.length; i++) { 9037 var hidden = "none" == elements[i].getElement().css("display"); 9038 elements[i].getElement().show(); 9039 var offset = elements[i].getElement().offset().left; 9040 hidden && elements[i].getElement().css("display", "none"), offset > this.highestOffset && (this.highestOffset = offset), offset < this.lowestOffset && (this.lowestOffset = offset) 9041 } 9042 return this 9043 }, 9044 getHighestOffset: function() { return this.highestOffset }, 9045 getLowestOffset: function() { return this.lowestOffset }, 9046 getTransforms: function($element) { 9047 var transform = $element.css("transform"); 9048 if (!transform || "none" == transform) return {}; 9049 var values = transform.split("(")[1].split(")")[0].split(","), 9050 angle = Math.atan2(values[1], values[0]), 9051 denom = Math.pow(values[0], 2) + Math.pow(values[1], 2), 9052 scaleX = Math.sqrt(denom), 9053 scaleY = (values[0] * values[3] - values[2] * values[1]) / scaleX, 9054 skewX = Math.atan2(values[0] * values[2] + values[1] * values[3], denom); 9055 return { translateX: parseFloat(values[4]) + "px", translateY: parseFloat(values[5]) + "px", rotateZ: angle / (Math.PI / 180), scaleX: scaleX, scaleY: scaleY, skewX: skewX / (Math.PI / 180), skewY: 0 } 9056 } 9057 }), 9058 ElementBase = "undefined" != typeof ElementBase && ElementBase ? ElementBase : ("undefined" != typeof EditorAwareClass && EditorAwareClass ? EditorAwareClass : Class).extend({ 9059 $element: null, 9060 id: null, 9061 animation: { type: "none", initial: "hide", keepHeight: !0, duration: ".5s", delay: "0s", overlay: { width: "auto" }, trigger: "", group: { name: "", behavior: { show: "", hide: "" } } }, 9062 animating: !1, 9063 animated: !1, 9064 init: function(source, dry) { return this.$element = this.getViewport().jQuery(source), this.$element[0].element = this, this.wakeup(), this }, 9065 wakeup: function() {}, 9066 update: function() {}, 9067 getElement: function() { return this.$element }, 9068 getMainElement: function() { return this.$element }, 9069 getId: function(plain) { 9070 if (!this.id) { 9071 var id = this.$element.attr("id"); 9072 id && id.length && (this.id = id.replace("ed-", "")) 9073 } 9074 return plain ? this.$element.attr("id") || "ed-" + this.id : this.id 9075 }, 9076 getParent: function() { var $parent = this.$element.parent().closest(".ed-element"); return !!$parent.length && $parent[0].element }, 9077 getParents: function() { for (var parent, parents = [], child = this; parent = child.getParent();) parents.push(parent), child = parent; return !!parents.length && parents }, 9078 hasParent: function(parent) { 9079 if (!parent) return !!this.$element.parent().closest(".ed-element").length; 9080 if (_.isArray(parent)) { 9081 for (var i = 0; i < parent.length; i++) 9082 if (this.hasParent(parent[i])) return !0; 9083 return !1 9084 } 9085 return !!this.$element.parent().closest(parent.getElement()).length 9086 }, 9087 is: function(element) { return this == element }, 9088 animate: function(reverse, trigger) { 9089 var animation = this.getAnimation(); 9090 if ("none" == animation.type) return this; 9091 var $target = this.getAnimationTarget(); 9092 if (animation.duration = String(animation.duration).replace("ms", ""), animation.duration.match("s") && (animation.duration = 1e3 * parseFloat(animation.duration.replace("s", ""))), animation.delay = String(animation.delay).replace("ms", ""), animation.delay.match("s") && (animation.delay = 1e3 * parseFloat(animation.delay.replace("s", ""))), $target.velocity("finish").stop(!0), "pulse" == animation.type || "shrink" == animation.type ? reverse = !1 : "undefined" != typeof reverse && null !== reverse || (reverse = !($target.is(":hidden") || "hidden" == $target.css("visibility") || 0 == $target.css("opacity"))), "overlay" != animation.type && this.getAnimations().getCompatibilityMode()) return this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]), $target[reverse ? "hide" : "show"](), this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]), this.animated = !0, this; 9093 switch (animation.type) { 9094 case "fade": 9095 reverse ? $target.velocity("fadeOut", { duration: animation.duration, delay: animation.delay, display: null, visibility: "hidden", progress: function() { this.notify("animation.step", [animation.type]), this.getViewport().notify("animation.step", [this, animation.type]) }.bind(this), begin: function() { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]) }.bind(this), complete: function() { this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) }) : $target.velocity("fadeIn", { duration: animation.duration, delay: animation.delay, display: null, visibility: "visible", progress: function() { this.notify("animation.step", [animation.type]), this.getViewport().notify("animation.step", [this, animation.type]) }.bind(this), begin: function() { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]) }.bind(this), complete: function() { this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) }); 9096 break; 9097 case "slide": 9098 if (reverse) $target.delay(animation.delay).slideUp({ duration: animation.duration, step: function() { this.notify("animation.step", [animation.type]), this.getViewport().notify("animation.step", [this, animation.type]) }.bind(this), start: function() { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]) }.bind(this), complete: function() { this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) }); 9099 else { 9100 var scrollIntoView = !0; 9101 this.once("animation.end", function() { scrollIntoView && !this.getViewport().targetVisible(this.$element, "top") && this.getViewport().scrollTo(this.$element, "top", 500, -100) }.bind(this)), this.getViewport().once("scroll", function() { scrollIntoView = !1 }.bind(this)), $target.delay(animation.delay).queue(function(next) { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]), next() }.bind(this)).slideDown({ duration: animation.duration, step: function() { this.notify("animation.step", [animation.type]), this.getViewport().notify("animation.step", [this, animation.type]) }.bind(this), complete: function() { this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) }) 9102 } 9103 break; 9104 case "move-left-to-right": 9105 var existingProperties = this.getAnimations().getTransforms($target); 9106 for (var i in existingProperties) $.Velocity.hook($target, i, existingProperties[i]); 9107 reverse ? $target.velocity({ translateX: [this.getViewport().getWidth() - this.getAnimations().getLowestOff
9107set(), existingProperties.translateX], opacity: [0, 1] }, { duration: animation.duration, delay: animation.delay, easing: [100, 20], display: null, visibility: "hidden", progress: function() { this.notify("animation.step", [animation.type]), this.getViewport().notify("animation.step", [this, animation.type]) }.bind(this), begin: function() { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]) }.bind(this), complete: function() { $target.css("transform", ""), this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) }) : $target.velocity({ translateX: [existingProperties.translateX, -(this.getAnimations().getHighestOffset() + $target.outerWidth())], opacity: [1, 0] }, { duration: animation.duration, delay: animation.delay, easing: [100, 20], display: null, visibility: "visible", progress: function() { this.notify("animation.step", [animation.type]), this.getViewport().notify("animation.step", [this, animation.type]) }.bind(this), begin: function() { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]) }.bind(this), complete: function() { $target.css("transform", ""), this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) }); 9108 break; 9109 case "move-right-to-left": 9110 var existingProperties = this.getAnimations().getTransforms($target); 9111 for (var i in existingProperties) $.Velocity.hook($target, i, existingProperties[i]); 9112 reverse ? $target.velocity({ translateX: [-(this.getAnimations().getHighestOffset() + $target.outerWidth()), existingProperties.translateX], opacity: [0, 1] }, { duration: animation.duration, delay: animation.delay, easing: [100, 20], display: null, visibility: "hidden", progress: function() { this.notify("animation.step", [animation.type]), this.getViewport().notify("animation.step", [this, animation.type]) }.bind(this), begin: function() { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]) }.bind(this), complete: function() { $target.css("transform", ""), this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) }) : $target.velocity({ translateX: [existingProperties.translateX, this.getViewport().getWidth() - this.getAnimations().getLowestOffset()], opacity: [1, 0] }, { duration: animation.duration, delay: animation.delay, easing: [100, 20], display: null, visibility: "visible", progress: function() { this.notify("animation.step", [animation.type]), this.getViewport().notify("animation.step", [this, animation.type]) }.bind(this), begin: function() { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]) }.bind(this), complete: function() { $target.css("transform", ""), this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) }); 9113 break; 9114 case "shrink": 9115 var existingProperties = this.getAnimations().getTransforms($target); 9116 for (var i in existingProperties) $.Velocity.hook($target, i, existingProperties[i]); 9117 reverse ? $target.velocity("transition.expandOut", { duration: animation.duration, delay: animation.delay, display: null, visibility: "hidden", progress: function() { this.notify("animation.step", [animation.type]), this.getViewport().notify("animation.step", [this, animation.type]) }.bind(this), begin: function() { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]) }.bind(this), complete: function() { $target.css("transform", ""), this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) }) : $target.velocity("transition.expandIn", { duration: animation.duration, delay: animation.delay, display: null, visibility: "visible", progress: function() { this.notify("animation.step", [animation.type]), this.getViewport().notify("animation.step", [this, animation.type]) }.bind(this), begin: function() { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]) }.bind(this), complete: function() { $target.css("transform", ""), this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) }); 9118 break; 9119 case "pulse": 9120 var existingProperties = this.getAnimations().getTransforms($target); 9121 for (var i in existingProperties) $.Velocity.hook($target, i, existingProperties[i]); 9122 $target.velocity("callout.pulse", { duration: animation.duration, delay: animation.delay, progress: function() { this.notify("animation.step", [animation.type]), this.getViewport().notify("animation.step", [this, animation.type]) }.bind(this), begin: function() { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]) }.bind(this), complete: function() { $target.css("transform", ""), this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) }); 9123 break; 9124 case "flash": 9125 $target.velocity("callout.flash", { duration: animation.duration, delay: animation.delay, progress: function() { this.notify("animation.step", [animation.type]), this.getViewport().notify("animation.step", [this, animation.type]) }.bind(this), begin: function() { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]) }.bind(this), complete: function() { this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) }); 9126 break; 9127 case "overlay": 9128 this.getViewport().promise("api.magnific.ready", function() { return $target.closest(".mfp-content").length ? void this.getViewport().jQuery.magnificPopup.close() : (animation.overlay.width && "auto" != animation.overlay.width ? $target.css({ position: "relative", "margin-left": "auto", "margin-right": "auto", "max-width": "100%", width: animation.overlay.width }) : $target.css({ position: "relative", display: "inline-block", width: "auto", "text-align": "left" }), $target.show(), this.getViewport().jQuery.magnificPopup.open({ items: { src: "#" + $target.attr("id") }, type: "inline", fixedContentPos: !1, callbacks: { open: function() { this.notify("animation.start", [reverse, trigger]).animating = !0, this.getViewport().notify("animation.start", [this, reverse, trigger]) }.bind(this), close: function() { this.notify("animation.end", [reverse, trigger]).animating = !1, this.getViewport().notify("animation.end", [this, reverse, trigger]) }.bind(this) } }), void(animation.overlay.unit || $target.parent().css("text-align", "center"))) }.bind(this), !0), this.getViewport().requireMagnific() 9129 } 9130 return this.animated = !0, this 9131 }, 9132 getAnimationTarget: function() { return this.$element }, 9133 getIsAnimating: function() { return this.animating }, 9134 wasAnimated: function(animated) { return "undefined" != typeof animated && (this.animated = animated), this.animated }, 9135 getAnimations: function() { return animations }, 9136 getViewport: function() { return viewport }, 9137 getAnimation: function() { var animation; try { animation = JSON.parse(this.$element.attr("data-animation")) } catch (e) { parameters = {} } return _.merge(this.animation, animation), "number" == typeof this.animation.duration && (this.animation.duration = this.animation.duration + "s"), "number" == typeof this.animation.delay && (this.animation.delay = this.animation.delay + "s"), "unit" in this.animation.overlay && this.animation.overlay.unit && (this.animation.overlay.width = parseFloat(this.animation.overlay.width) + this.animation.overlay.unit, delete this.animation.overlay.unit), this.animation }, 9138 getIsAnimated: function() { var animation = this.getAnimation(); return animation && "none" != animation.type }, 9139 getAnimatedParent: function() { 9140 for (var parent, child = this; 9141 (parent = child.getParent()) && !parent.getIsAnimated();) child = parent; 9142 return !(!parent || !parent.getIsAnimated()) && parent 9143 },
9144 getIsBackground: function() { return this.$element.is(".wv-bg") }, 9145 isAttached: function() { return null !== this.$element[0].parentNode && this.$element[0].parentNode.nodeType !== Node.DOCUMENT_FRAGMENT_NODE } 9146 }), 9147 ElementButton = ("undefined" != typeof ElementButton ? ElementButton : ElementBase).extend({ $button: null, wakeup: function() { return this.$button = this.getViewport().jQuery("a,button", this.$element[0]), this }, getMainElement: function() { return this.$button || this.$element } }), 9148 ElementContainer = ("undefined" != typeof ElementContainer ? ElementContainer : ElementBase).extend({ 9149 $inner: null, 9150 wakeup: function() { 9151 if (this.$inner = this.getViewport().jQuery("> .inner", this.$element[0]), !this.$inner.length) return console.warn("Invalid markup for container element.", this.$element[0]), this; 9152 this.getViewport().observe("load resize", function() { this.updateParallax(!0) }.bind(this)); 9153 var parallaxAmount; 9154 return parallaxAmount = "dataset" in this.$inner[0] ? parseInt(this.$inner[0].dataset.parallaxAmount || 0) / 100 : parseInt(this.$inner[0].getAttribute("data-parallax-amount") || 0) / 100, (parallaxAmount || "undefined" != typeof cms && cms) && this.getViewport().observe("scroll.start", function() { this.refreshParallaxData() }.bind(this)).observe("frame.scroll", function() { this.updateParallax() }.bind(this)), this.getViewport().debounce("animation.step animation.end", 5, function() { this.updateParallax(!0) }.bind(this)), this.update(), this 9155 }, 9156 update: function() { if (this.isAttached()) return this.updateParallax(!0), this }, 9157 refreshParallaxData: function() { return this.parallax || (this.parallax = {}), this.isAttached() ? (this.parallax.$backgroundContainer = $("> .background", this.$element), this.parallax.$backgroundContainer.length ? (this.parallax.$backgroundElement = $("> .ed-element", this.parallax.$backgroundContainer), this.parallax.$backgroundElement.length ? (this.parallax.$sliderText = $(".ed-slider-text", this.parallax.$backgroundElement), "dataset" in this.$inner[0] ? this.parallax.amount = parseInt(this.$inner[0].dataset.parallaxAmount || 0) / 100 : this.parallax.amount = parseInt(this.$inner[0].getAttribute("data-parallax-amount") || 0) / 100, !this.getViewport().getIsMobile() && !this.getViewport().getIsTouch() || "undefined" != typeof cms && cms || (this.parallax.amount = 0), this.parallax.amount ? (this.parallax.$backgroundElement.css("transform", ""), this.parallax.elementBoundingBox = this.$element.offset(), this.parallax.elementBoundingBox.height = this.$element.outerHeight(), this.parallax.elementBoundingBox.bottom = this.parallax.elementBoundingBox.top + this.parallax.elementBoundingBox.height, this.parallax.amount > .5 && this.parallax.$backgroundElement.is(".ed-image") && this.parallax.elementBoundingBox.height <= this.getViewport().getHeight() ? (this.parallax.reverse = !0, this.parallax.$backgroundContainer.css("transform", ""), this.parallax.$backgroundImage = $("> .background-image-holder", this.parallax.$backgroundElement), this.parallax.$backgroundImage.addClass("wv-bg-fixed"), this.parallax.alignment = "center", this.parallax.$backgroundElement.is(".bg-rt, .bg-rc, .bg-rb") ? this.parallax.alignment = "right" : this.parallax.$backgroundElement.is(".bg-lt, .bg-lc, .bg-lb") && (this.parallax.alignment = "left")) : (this.parallax.reverse = !1, $("> .background-image-holder", this.parallax.$backgroundElement).css("background-position", "").removeClass("wv-bg-fixed")), this.parallax.startPoint = this.parallax.elementBoundingBox.top - this.getViewport().getHeight(), this.parallax.endPoint = this.parallax.elementBoundingBox.bottom, this.parallax.distance = this.parallax.endPoint - this.parallax.startPoint, this.parallax.height = Math.ceil(this.parallax.elementBoundingBox.height + (this.getViewport().getHeight() - this.parallax.elementBoundingBox.height) * this.parallax.amount), this.parallax.$backgroundContainer.height(this.parallax.height), this.parallax.reverse ? (this.parallax.start = -this.getViewport().getHeight() * (1 - this.parallax.amount), this.parallax.end = this.parallax.elementBoundingBox.height * (1 - this.parallax.amount)) : (this.parallax.start = -this.getViewport().getHeight() * this.parallax.amount, this.parallax.end = this.parallax.elementBoundingBox.height * this.parallax.amount), this.parallax.enabled = !0, this) : (this.$element.removeClass("parallax"), this.parallax.$backgroundContainer.css({ transform: "", height: "" }), this.parallax.$backgroundElement.css({ transform: "", height: "" }), $("> .background-image-holder", this.parallax.$backgroundElement).css("background-position", "").removeClass("wv-bg-fixed"), this.parallax.$sliderText.length && this.parallax.$sliderText.css("transform", ""), void(this.parallax.enabled = !1))) : void(this.parallax.enabled = !1)) : void(this.parallax.enabled = !1)) : void(this.parallax.enabled = !1) }, 9158 updateParallax: function(deep) { 9159 if (this.parallax && !deep || this.refreshParallaxData(), !(!this.parallax.enabled || this.getViewport().getScrollTop() < this.parallax.startPoint || this.getViewport().getScrollTop() > this.parallax.endPoint)) { 9160 var percentScrolled = (this.getViewport().getScrollTop() - this.parallax.startPoint) / this.parallax.distance; 9161 return this.parallax.translation = (this.parallax.end - this.parallax.start) * percentScrolled + this.parallax.start, this.parallax.reverse ? (this.parallax.translation = -this.parallax.translation, this.parallax.$backgroundImage.css("background-position", this.parallax.alignment + " " + this.parallax.translation + "px")) : (this.parallax.$backgroundContainer.css("transform", "translate3d(0, " + this.parallax.translation + "px, 0)"), this.parallax.$sliderText.length && this.parallax.$sliderText.css("transform", "translate3d(0, " + -(this.parallax.height - this.parallax.elementBoundingBox.height + this.parallax.translation) + "px, 0)")), 9162 this 9163 } 9164 } 9165 }), 9166 ElementDocument = ("undefined" != typeof ElementDocument ? ElementDocument : ElementBase).extend({}), 9167 ElementFacebook = ("undefined" != typeof ElementFacebook ? ElementFacebook : ElementBase).extend({ $facebook: null, wakeup: function() { return this.$facebook = this.getViewport().jQuery("iframe", this.$element[0]), this }, getMainElement: function() { return this.$facebook || this.$element } }), 9168 ElementForm = ("undefined" != typeof ElementForm ? ElementForm : ElementBase).extend({}), 9169 ElementGallery = ("undefined" != typeof ElementGallery ? ElementGallery : ElementBase).extend({ $gallery: null, wakeup: function() { this.$gallery = this.getViewport().jQuery(".ed-gallery-items:first", this.$element[0]), this.getViewport().promise("api.magnific.ready", function() { this.$gallery.magnificPopup({ delegate: "a", type: "image", tLoading: "...", mainClass: "mfp-img-mobile", gallery: { enabled: !0, navigateByImgClick: !0, preload: [0, 1], tPrev: "", tNext: " ", tCounter: '<span class="mfp-counter">%curr%/%total%</span>' }, image: { tError: '<a href="%url%">The image #%curr%</a> could not be loaded.' }, disableOn: function() { return "undefined" != typeof editor && editor ? editor.getView().getPreview() || !editor.getCms().getPermission("edit", this) : "undefined" == typeof cms || !cms || cms.getInterface().getPreview() }.bind(this) }) }.bind(this)), this.getViewport().requireMagnific() } }), 9170 ElementGrid = ("undefined" != typeof ElementGrid ? ElementGrid : ElementBase).extend({ 9171 $section: null, 9172 wakeup: function() { 9173 if (this.$section = this.getViewport().jQuery("section:first", this.$element[0]), !this.$section.length) return console.warn("Invalid markup for grid element.", this.$element[0]), this; 9174 if (this.getViewport().observe("load resize", function() { this.updateWidth() }.bind(this)).observe("load:after resize:after", function() { this.updateHeight(), this.updateParallax(!0) }.bind(this)), "dataset" in this.$section[0]) var parallaxAmount = parseInt(this.$section[0].dataset.parallaxAmount || 0) / 100; 9175 else var parallaxAmount = parseInt(this.$section[0].getAttribute("data-parallax-amount") || 0) / 100; 9176 return (parallaxAmount || "undefined" != typeof cms && cms) && this.getViewport().observe("scroll.
9176start", function() { this.refreshParallaxData() }.bind(this)).observe("frame.scroll", function() { this.updateParallax() }.bind(this)), this.getViewport().debounce("animation.step animation.end", 5, function() { this.updateParallax(!0) }.bind(this)), this.update(), this 9177 }, 9178 update: function() { if (this.isAttached()) return this.updateWidth(), this.updateHeight(), this.updateParallax(!0), this }, 9179 updateWidth: function() { 9180 if (this.isAttached()) { 9181 if (!this.$element.is(".full-width") && !this.$section.is(".full-width")) return this.$element.css({ marginLeft: "", width: "" }), this.$section.css({ marginLeft: "", width: "" }), void(this.getViewport().jQuery("> .inner", this.$section).length && (this.getViewport().jQuery("> .inner", this.$section).contents().unwrap(), this.$section.addClass("container"))); 9182 var elementDisplayValue = this.$element.css("display"), 9183 sectionDisplayValue = this.$section.css("display"); 9184 if ("none" == elementDisplayValue && this.$element.show(), "none" == sectionDisplayValue && this.$section.show(), !this.$section.is(":visible")) return this.$section.css({ marginLeft: "0", width: "auto" }), this.getViewport().jQuery("> .inner", this.$section).css({ width: "auto" }), this.$element.css("display", elementDisplayValue), this.$section.css("display", sectionDisplayValue), this; 9185 var fullWidth = this.getViewport().getWidth(), 9186 contentWidth = this.$element.parent().width(), 9187 $closestColumn = this.$element.closest('[class*="span"]'); 9188 $closestColumn.length && (fullWidth = $closestColumn.width()); 9189 var margin = (fullWidth - contentWidth) / 2; 9190 return this.$element.closest(".wv-abs, .wv-fixed").length && (margin = 0), margin < 0 && (margin = 0), this.$element.css("display", elementDisplayValue), this.$section.css("display", sectionDisplayValue), this.$element.is(".full-width") ? (this.getViewport().jQuery("> .inner", this.$section).length && (this.getViewport().jQuery("> .inner", this.$section).contents().unwrap(), this.$section.addClass("container")), this.$element.css({ marginLeft: -margin, width: fullWidth }), this.$section.css({ marginLeft: "", width: "" })) : (this.getViewport().jQuery("> .inner", this.$section).length || this.$section.removeClass("container").children().not("div.overlay, div.background, .slick-arrow, .slick-dots").wrapAll('<div class="inner container"></div>'), this.$element.css({ marginLeft: "", width: "" }), this.$section.css({ marginLeft: -margin, width: fullWidth }), contentWidth == fullWidth ? this.getViewport().jQuery("> .inner", this.$section).css({ width: "", marginLeft: "", marginRight: "" }) : this.getViewport().jQuery("> .inner", this.$section).css({ width: contentWidth + "px", marginLeft: "auto", marginRight: "auto" })), this 9191 } 9192 }, 9193 updateHeight: function() { 9194 if (this.isAttached() && !this.$section.is(".wv-animating") && !this.$element.is(".wv-animating")) { 9195 var heightConfiguration = { mode: this.$section.attr("data-height-mode"), height: this.$section.attr("data-height"), subtract: this.$section.attr("data-height-subtract"), reference: this.$section.attr("data-height-reference") }; 9196 if (void 0 === heightConfiguration.mode || "auto" == heightConfiguration.mode || void 0 === heightConfiguration.height) this.$section.css("height", ""); 9197 else if ("pixel" == heightConfiguration.mode) this.$section.css({ height: parseInt(heightConfiguration.height || 0) + "px" }); 9198 else if ("percent" == heightConfiguration.mode) { 9199 var height = parseFloat(heightConfiguration.height || 0) / 100 * ("width" == heightConfiguration.reference ? this.getViewport().getWidth() : this.getViewport().getHeight()) - parseInt(heightConfiguration.subtract || 0); 9200 this.$section.css({ height: parseInt(height || 0) + "px" }) 9201 } 9202 return this 9203 } 9204 }, 9205 refreshParallaxData: function() { return this.parallax || (this.parallax = {}), this.isAttached() ? (this.parallax.$backgroundContainer = $("> .background", this.$section), this.parallax.$backgroundContainer.length ? (this.parallax.$backgroundElement = $("> .ed-element", this.parallax.$backgroundContainer), this.parallax.$backgroundElement.length ? (this.parallax.$sliderText = $(".ed-slider-text", this.parallax.$backgroundElement), "dataset" in this.$section[0] ? this.parallax.amount = parseInt(this.$section[0].dataset.parallaxAmount || 0) / 100 : this.parallax.amount = parseInt(this.$section[0].getAttribute("data-parallax-amount") || 0) / 100, !this.getViewport().getIsMobile() && !this.getViewport().getIsTouch() || "undefined" != typeof cms && cms || (this.parallax.amount = 0), this.parallax.amount ? (this.parallax.$backgroundElement.css("transform", ""), this.parallax.elementBoundingBox = this.$element.offset(), this.parallax.elementBoundingBox.height = this.$element.outerHeight(), this.parallax.elementBoundingBox.bottom = this.parallax.elementBoundingBox.top + this.parallax.elementBoundingBox.height, this.parallax.amount > .5 && this.parallax.$backgroundElement.is(".ed-image") && this.parallax.elementBoundingBox.height <= this.getViewport().getHeight() ? (this.parallax.reverse = !0, this.parallax.$backgroundContainer.css("transform", ""), this.parallax.$backgroundImage = $("> .background-image-holder", this.parallax.$backgroundElement), this.parallax.$backgroundImage.addClass("wv-bg-fixed"), this.parallax.alignment = "center", this.parallax.$backgroundElement.is(".bg-rt, .bg-rc, .bg-rb") ? this.parallax.alignment = "right" : this.parallax.$backgroundElement.is(".bg-lt, .bg-lc, .bg-lb") && (this.parallax.alignment = "left")) : (this.parallax.reverse = !1, $("> .background-image-holder", this.parallax.$backgroundElement).css("background-position", "").removeClass("wv-bg-fixed")), this.parallax.startPoint = this.parallax.elementBoundingBox.top - this.getViewport().getHeight(), this.parallax.endPoint = this.parallax.elementBoundingBox.bottom, this.parallax.distance = this.parallax.endPoint - this.parallax.startPoint, this.parallax.height = Math.
9205ceil(this.parallax.elementBoundingBox.height + (this.getViewport().getHeight() - this.parallax.elementBoundingBox.height) * this.parallax.amount), this.parallax.$backgroundContainer.height(this.parallax.height), this.parallax.reverse ? (this.parallax.start = -this.getViewport().getHeight() * (1 - this.parallax.amount), this.parallax.end = this.parallax.elementBoundingBox.height * (1 - this.parallax.amount)) : (this.parallax.start = -this.getViewport().getHeight() * this.parallax.amount, this.parallax.end = this.parallax.elementBoundingBox.height * this.parallax.amount), this.parallax.enabled = !0, this) : (this.$section.removeClass("parallax"), this.parallax.$backgroundContainer.css({ transform: "", height: "" }), this.parallax.$backgroundElement.css({ transform: "", height: "" }), $("> .background-image-holder", this.parallax.$backgroundElement).css("background-position", "").removeClass("wv-bg-fixed"), this.parallax.$sliderText.length && this.parallax.$sliderText.css("transform", ""), void(this.parallax.enabled = !1))) : void(this.parallax.enabled = !1)) : void(this.parallax.enabled = !1)) : void(this.parallax.enabled = !1) }, 9206 updateParallax: function(deep) { if (this.parallax && !deep || this.refreshParallaxData(), !(!this.parallax.enabled || this.getViewport().getScrollTop() < this.parallax.startPoint || this.getViewport().getScrollTop() > this.parallax.endPoint)) { var percentScrolled = (this.getViewport().getScrollTop() - this.parallax.startPoint) / this.parallax.distance; return this.parallax.translation = (this.parallax.end - this.parallax.start) * percentScrolled + this.parallax.start, this.parallax.reverse ? (this.parallax.translation = -this.parallax.translation, this.parallax.$backgroundImage.css("background-position", this.parallax.alignment + " " + this.parallax.translation + "px")) : (this.parallax.$backgroundContainer.css("transform", "translate3d(0, " + this.parallax.translation + "px, 0)"), this.parallax.$sliderText.length && this.parallax.$sliderText.css("transform", "translate3d(0, " + -(this.parallax.height - this.parallax.elementBoundingBox.height + this.parallax.translation) + "px, 0)")), this } }, 9207 getAnimationTarget: function() { var animation = this.getAnimation(); return animation && "slide" == animation.type && this.$section.is(".full-width") ? this.$section : this.$element } 9208 }), 9209 ElementHeadline = ("undefined" != typeof ElementHeadline ? ElementHeadline : ElementBase).extend({ getMainElement: function() { return this.getViewport().jQuery("h1,h2,h3,h4,h5,h6", this.$element) } }), 9210 ElementHtml = ("undefined" != typeof ElementHtml ? ElementHtml : ElementBase).extend({}), 9211 ElementImage = ("undefined" != typeof ElementImage ? ElementImage : ElementBase).extend({ $img: null, wakeup: function() { return this.$img = this.getViewport().jQuery("img", this.$element[0]), this.update(), this }, getMainElement: function() { return this.getIsBackground() ? this.getViewport().jQuery("> .background-image-holder", this.$element) : this.$img || this.$element }, update: function() { return this.$element.is(".zoom") && (this.getViewport().promise("api.magnific.ready", function() { this.getViewport().jQuery(this.$element[0]).magnificPopup({ delegate: "a", type: "image", tLoading: "...", image: { tError: '<a href="%url%">The image #%curr%</a> could not be loaded.' } }) }.bind(this)), this.getViewport().requireMagnific()), this } }), 9212 ElementMap = ("undefined" != typeof ElementMap ? ElementMap : ElementBase).extend({ 9213 $map: null, 9214 map: null, 9215 markers: [], 9216 infoWindows: [], 9217 recenter: null, 9218 queryLocationCache: {}, 9219 wakeup: function() { return this.$map = this.getViewport().jQuery(".map-canvas", this.$element[0]), this.getViewport().promise("api.maps.ready", function() { this.updateMap(), this.getViewport().debounce("resize", 50, function() { this.updateMap() }.bind(this)) }.bind(this)), this.getViewport().requireMapsApi(), this.getViewport().observe("animation.start animation.end", function(element) { if (this === element || this.hasParent(element)) { var visible = "none" !== element.getElement().css("display");!visible && element.getElement().css("display", ""), this.updateMap(!1, !0), !visible && element.getElement().css("display", "none") } }.bind(this)), this.isAttached() || this.once("attach", function() { this.updateMap(!0) }.bind(this)), this }, 9220 getMainElement: function() { return this.$map || this.$element }, 9221 update: function() { return this.updateMap(), this }, 9222 queryLocation: function(query, callback) { var self = this; return "undefined" != typeof this.queryLocationCache[query] ? (callback(this.queryLocationCache[query].lat(), this.queryLocationCache[query].lng(), query
9222), this) : ((new google.maps.Geocoder).geocode({ address: query }, function(results, status) { status == google.maps.GeocoderStatus.OK ? (self.queryLocationCache[query] = results[0].geometry.location, callback(results[0].geometry.location.lat(), results[0].geometry.location.lng(), query)) : callback(52.5158473, 13.4109857, query) }), this) }, 9223 updateMap: function(deep, recenter) { 9224 var i; 9225 if ("undefined" == typeof google) return this; 9226 if (this.map && !deep || (this.settings = this.getMapSettings()), this.map || (this.map = new google.maps.Map(this.$map[0]), this.$map.data("map", this.map), this.recenter = this.settings.center.markers && this.settings.markers.length || !this.$map.is(":visible"), deep = !0), deep) { 9227 for (this.map.setOptions({ 9228 center: { lat: this.settings.center.lat, lng: this.settings.center.lng }, 9229 scrollwheel: this.settings.controls.mousewheel, 9230 zoom: this.settings.zoom, 9231 zoomControl: this.settings.controls.zoom, 9232 scaleControl: this.settings.controls.scale, 9233 styles: "colorize" == this.settings.style.name ? function(color) { 9234 var rgb = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(color); 9235 if (rgb) { 9236 var h, s, r = parseInt(rgb[1], 16) / 255, 9237 g = parseInt(rgb[2], 16) / 255, 9238 b = parseInt(rgb[3], 16) / 255, 9239 max = Math.max(r, g, b), 9240 min = Math.min(r, g, b), 9241 l = (max + min) / 2; 9242 if (max == min) h = s = 0; 9243 else { 9244 var d = max - min; 9245 switch (s = l > .5 ? d / (2 - max - min) : d / (max + min), max) { 9246 case r: 9247 h = (g - b) / d + (g < b ? 6 : 0); 9248 break; 9249 case g: 9250 h = (b - r) / d + 2; 9251 break; 9252 case b: 9253 h = (r - g) / d + 4 9254 } 9255 h /= 6 9256 } 9257 return [{ stylers: [{ hue: color }, { saturation: 200 * s - 100 }, { lightness: 200 * l - 100 }] }] 9258 } 9259 return null 9260 }(this.settings.style.color) : this.settings.style.configuration, 9261 mapTypeId: google.maps.MapTypeId[this.settings.type.toUpperCase()] 9262 }), i = 0; i < this.markers.length; i++) this.markers[i].setMap(null); 9263 for (i = 0; i < this.infoWindows.length; i++) this.infoWindows[i].setMap(null); 9264 for (this.markers = [], this.infoWindows = [], i = 0; i < this.settings.markers.length; i++)(function(index) { 9265 var iconUrl = "https://mt.googleapis.com/vt/icon/name=icons/spotlight/spotlight-poi.png&scale=1"; 9266 if (this.settings.markers[index].icon) { 9267 var width = this.settings.markers[index].width; 9268 width && "auto" != width || (width = "full"), iconUrl = new File(this.settings.markers[index].icon).getImageSize(width) 9269 } 9270 var marker = new google.maps.Marker({ position: new google.maps.LatLng(this.settings.markers[index].lat, this.settings.markers[index].lng), map: this.map, title: this.settings.markers[index].title, icon: iconUrl }); 9271 if (this.markers.push(marker), this.settings.markers[index].title || this.settings.markers[index].description) { 9272 var windowContent = '<div id="content">' + (this.settings.markers[index].title ? "<p><strong>" + this.settings.markers[index].title + "</strong></p>" : "") + (this.settings.markers[index].description ? "<div>" + this.settings.markers[index].description + "</div>" : "") + "</div>", 9273 infoWindow = new google.maps.InfoWindow({ content: windowContent, disableAutoPan: !0 }); 9274 this.infoWindows.push(infoWindow), this.markers[index].addListener("click", function() { infoWindow.open(this.map, marker) }.bind(this)), this.settings.markers[index].open && infoWindow.open(this.map, marker) 9275 } 9276 }).bind(this)(i); 9277 this.$map.data("markers", this.markers) 9278 } 9279 if (google.maps.event.trigger(this.map, "resize"), this.recenter || recenter || cms) { 9280 if (this.settings.center.markers && this.settings.markers.length) { var bounds = new google.maps.LatLngBounds; for (i = 0; i < this.markers.length; i++) bounds.extend(this.markers[i].getPosition()); "zoom" == this.settings.center.markers ? this.map.fitBounds(bounds) : this.map.setCenter(bounds.getCenter()) } else this.map.setCenter(new google.maps.LatLng(this.settings.center.lat, this.settings.center.lng)); 9281 this.recenter = !this.$map.is(":visible") 9282 } 9283 return this 9284 }, 9285 getMapSettings: function() { var parameters, old = this.$map.data("params"); try { parameters = JSON.parse(this.$map.attr("data-parameters")), old = null } catch (e) { parameters = {} } var settings = _.merge({ markers: [], center: { query: "Berlin", lat: 52.522254, lng: 13.393534, markers: "center" }, zoom: 13, type: "roadmap", style: { name: "default", configuration: null, color: "#999999" }, controls: { zoom: !0, mousewheel: !0, scale: !1 } }, parameters);
9285 return old && (settings.zoom = old.zoom, settings.center.query = "", settings.center.lat = parseFloat(old.lat), settings.center.lng = parseFloat(old.lng), old.marker ? settings.markers = [{ title: "", description: "", marker: "", lat: old.lat, lng: old.lng }] : settings.markers = [], settings.controls.zoom = !!old.zoomControls, settings.controls.scale = !!old.scale, settings.controls.mousewheel = !!old.scroll), settings } 9286 }), 9287 ElementMenu = ("undefined" != typeof ElementMenu ? ElementMenu : ElementBase).extend({ wakeup: function() { return this.activateParentItems(), "autoFill" in this && this.autoFill(), this }, activateParentItems: function() { return this.$element.is(".wv-custom") && ($("li.active", this.$element).parents("div.sub").addClass("current"), $("div.sub.current", this.$element).parents("li").addClass("active")), this } }), 9288 ElementReference = ("undefined" != typeof ElementReference ? ElementReference : ElementBase).extend({ target: null, initializeTarget: function() { this.target && (this.target.destroy(), this.$element[0].element = this); var elementType = (this.$element.attr("class").match(/ed-reference-([a-z]+)/) || ["", ""])[1]; if ("reference" === elementType) return console.warn("Can't reference a reference, aborting..."), this; if (elementType && (elementType = "Element" + elementType.replace(/^([a-z])|\-([a-z])/g, function(match, first, second) { return (first || second).toUpperCase() }), elementType in this.getViewport().window)) { var win = this.getViewport().window; "getEditor" in this && this.getEditor() ? this.target = new win[elementType](this.getEditor(), this.$element[0], !0) : this.target = new win[elementType](this.$element[0], !0) } return this }, is: function(element) { return this == element || this.target == element }, wakeup: function() { return this.initializeTarget(), this }, update: function() { return this.target && this.target.update(), this }, animate: function(reverse, trigger) { return this.target && this.target.animate.bind(this)(reverse, trigger), this }, getAnimationTarget: function() { return this.target ? this.target.getAnimationTarget() : this.$element } }), 9289 ElementSection = ("undefined" != typeof ElementSection ? ElementSection : ElementBase).extend({ 9290 $section: null, 9291 wakeup: function() { 9292 if (this.$section = this.getViewport().jQuery("section:first", this.$element[0]), !this.$section.length) return console.warn("Invalid markup for section element.", this.$element[0]), this; 9293 if (this.getViewport().observe("load resize", function() { this.updateWidth() }.bind(this)).observe("load:after resize:after", function() { this.updateHeight(), this.updateParallax(!0) }.bind(this)), "dataset" in this.$section[0]) var parallaxAmount = parseInt(this.$section[0].dataset.parallaxAmount || 0) / 100; 9294 else var parallaxAmount = parseInt(this.$section[0].getAttribute("data-parallax-amount") || 0) / 100; 9295 return (parallaxAmount || "undefined" != typeof cms && cms) && this.getViewport().observe("scroll.start", function() { this.refreshParallaxData() }.bind(this)).observe("frame.scroll", function() { this.updateParallax() }.bind(this)), this.getViewport().debounce("animation.step animation.end", 5, function() { this.updateParallax(!0) }.bind(this)), this.update(), this 9296 }, 9297 update: function() { if (this.isAttached()) return this.updateWidth(), this.updateHeight(), this.updateParallax(!0), this }, 9298 updateWidth: function() { 9299 if (this.isAttached()) { 9300 if (!this.$element.is(".full-width") && !this.$section.is(".full-width")) return this.$element.css({ marginLeft: "", width: "" }), this.$section.css({ marginLeft: "", width: "" }), void(this.getViewport().jQuery("> .inner", this.$section).length && (this.getViewport().jQuery("> .inner", this.$section).contents().unwrap(), this.$section.addClass("container"))); 9301 var elementDisplayValue = this.$element.css("display"), 9302 sectionDisplayValue = this.$section.css("display"); 9303 if ("none" == elementDisplayValue && this.$element.show(), "none" == sectionDisplayValue && this.$section.show(), !this.$section.is(":visible")) return this.$section.css({ marginLeft: "0", width: "auto" }), this.getViewport().jQuery("> .inner", this.$section).css({ width: "auto" }), this.$element.css("display", elementDisplayValue), this.$section.css("display", sectionDisplayValue), this; 9304 var fullWidth = this.getViewport().getWidth(), 9305 contentWidth = this.$element.parent().width(), 9306 $closestColumn = this.$element.closest('[class*="span"]'); 9307 $closestColumn.length && (fullWidth = $closestColumn.width()); 9308 var margin = (fullWidth - contentWidth) / 2; 9309 return this.$element.closest(".wv-abs, .wv-fixed").length && (margin = 0), margin < 0 && (margin = 0), this.$element.css("display", elementDisplayValue), this.$section.css("display", sectionDisplayValue), this.$element.is(".full-width") ? (this.getViewport().jQuery("> .inner", this.$section).length && (this.getViewport().jQuery("> .inner", this.$section).contents().unwrap(), this.$section.addClass("container")), this.$element.css({ marginLeft: -margin, width: fullWidth }), this.$section.css({ marginLeft: "", width: "" })) : (this.getViewport().jQuery("> .inner", this.$section).length || this.$section.removeClass("container").children().not("div.overlay, div.background, .slick-arrow, .slick-dots").wrapAll('<div class="inner container"></div>'), this.$element.css({ marginLeft: "", width: "" }), this.$section.css({ marginLeft: -margin, width: fullWidth }), contentWidth == fullWidth ? this.getViewport().jQuery("> .inner", this.$section).css({ width: "", marginLeft: "", marginRight: "" }) : this.getViewport().jQuery("> .inner", this.$section).css({ width: contentWidth + "px", marginLeft: "auto", marginRight: "auto" })), this 9310 } 9311 }, 9312 updateHeight: function() { 9313 if (this.isAttached() && !this.$section.is(".wv-animating") && !this.$element.is(".wv-animating")) { 9314 var heightConfiguration = { mode: this.$section.attr("data-height-mode"), height: this.$section.attr("data-height"), subtract: this.$section.attr("data-height-subtract"), reference: this.$section.attr("data-height-reference") }; 9315 if (void 0 === heightConfiguration.mode || "auto" == heightConfiguration.mode || void 0 === heightConfiguration.height) this.$section.css("height", ""); 9316 else if ("pixel" == heightConfiguration.mode) this.$section.css({ height: parseInt(heightConfiguration.height || 0
9316) + "px" }); 9317 else if ("percent" == heightConfiguration.mode) { 9318 var height = parseFloat(heightConfiguration.height || 0) / 100 * ("width" == heightConfiguration.reference ? this.getViewport().getWidth() : this.getViewport().getHeight()) - parseInt(heightConfiguration.subtract || 0); 9319 this.$section.css({ height: parseInt(height || 0) + "px" }) 9320 } 9321 return this 9322 } 9323 }, 9324 refreshParallaxData: function() { return this.parallax || (this.parallax = {}), this.isAttached() ? (this.parallax.$backgroundContainer = $("> .background", this.$section), this.parallax.$backgroundContainer.length ? (this.parallax.$backgroundElement = $("> .ed-element", this.parallax.$backgroundContainer), this.parallax.$backgroundElement.length ? (this.parallax.$sliderText = $(".ed-slider-text", this.parallax.$backgroundElement), "dataset" in this.$section[0] ? this.parallax.amount = parseInt(this.$section[0].dataset.parallaxAmount || 0) / 100 : this.parallax.amount = parseInt(this.$section[0].getAttribute("data-parallax-amount") || 0) / 100, !this.getViewport().getIsMobile() && !this.getViewport().getIsTouch() || "undefined" != typeof cms && cms || (this.parallax.amount = 0), this.parallax.amount ? (this.parallax.$backgroundElement.css("transform", ""), this.parallax.elementBoundingBox = this.$element.offset(), this.parallax.elementBoundingBox.height = this.$element.outerHeight(), this.parallax.elementBoundingBox.bottom = this.parallax.elementBoundingBox.top + this.parallax.elementBoundingBox.height, this.parallax.amount > .5 && this.parallax.$backgroundElement.is(".ed-image") && this.parallax.elementBoundingBox.height <= this.getViewport().getHeight() ? (this.parallax.reverse = !0, this.parallax.$backgroundContainer.css("transform", ""), this.parallax.$backgroundImage = $("> .background-image-holder", this.parallax.$backgroundElement), this.parallax.$backgroundImage.addClass("wv-bg-fixed"), this.parallax.alignment = "center", this.parallax.$backgroundElement.is(".bg-rt, .bg-rc, .bg-rb") ? this.parallax.alignment = "right" : this.parallax.$backgroundElement.is(".bg-lt, .bg-lc, .bg-lb") && (this.parallax.alignment = "left")) : (this.parallax.reverse = !1, $("> .background-image-holder", this.parallax.$backgroundElement).css("background-position", "").removeClass("wv-bg-fixed")), this.parallax.startPoint = this.parallax.elementBoundingBox.top - this.getViewport().getHeight(), this.parallax.endPoint = this.parallax.elementBoundingBox.bottom, this.parallax.distance = this.parallax.endPoint - this.parallax.startPoint, this.parallax.height = Math.ceil(this.parallax.elementBoundingBox.height + (this.getViewport().getHeight() - this.parallax.elementBoundingBox.height) * this.parallax.amount), this.parallax.$backgroundContainer.height(this.parallax.height), this.parallax.reverse ? (this.parallax.start = -this.getViewport().getHeight() * (1 - this.parallax.amount), this.parallax.end = this.parallax.elementBoundingBox.height * (1 - this.parallax.amount)) : (this.parallax.start = -this.getViewport().getHeight() * this.parallax.amount, this.parallax.end = this.parallax.elementBoundingBox.height * this.parallax.amount), this.parallax.enabled = !0, this) : (this.$section.removeClass("parallax"), this.parallax.$backgroundContainer.css({ transform: "", height: "" }), this.parallax.$backgroundElement.css({ transform: "", height: "" }), $("> .background-image-holder", this.parallax.$backgroundElement).css("background-position", "").removeClass("wv-bg-fixed"), this.parallax.$sliderText.length && this.parallax.$sliderText.css("transform", ""), void(this.parallax.enabled = !1))) : void(this.parallax.enabled = !1)) : void(this.parallax.enabled = !1)) : void(this.parallax.enabled = !1) }, 9325 updateParallax: function(deep) { if (this.parallax && !deep || this.refreshParallaxData(), !(!this.parallax.enabled || this.getViewport().getScrollTop() < this.parallax.startPoint || this.getViewport().getScrollTop() > this.parallax.endPoint)) { var percentScrolled = (this.getViewport().getScrollTop() - this.parallax.startPoint) / this.parallax.distance; return this.parallax.translation = (this.parallax.end - this.parallax.start) * percentScrolled + this.parallax.start, this.parallax.reverse ? (this.parallax.translation = -this.parallax.translation, this.parallax.$backgroundImage.css("background-position", this.parallax.alignment + " " + this.parallax.translation + "px")) : (this.parallax.$backgroundContainer.css("transform", "translate3d(0, " + this.parallax.translation + "px, 0)"), this.parallax.$sliderText.length && this.parallax.$sliderText.css("transform", "translate3d(0, " + -(this.parallax.height - this.parallax.elementBoundingBox.height + this.parallax.translation) + "px, 0)")), this } }, 9326 getAnimationTarget: function() { var animation = this.getAnimation(); return animation && "slide" == animation.type && this.$section && this.$section.is(".full-width") ? this.$section : this.$element } 9327 }), 9328 ElementSeparator = ("undefined" != typeof ElementSeparator ? ElementSeparator : ElementBase).extend({}), 9329 ElementSlider = ("undefined" != typeof ElementSlider ? ElementSlider : ElementBase).extend({ 9330 $slider: null, 9331 slick: !1, 9332 wakeup: function() { 9333 return this.$slider = this.getViewport().jQuery(".slider-container", this.$element[0]), this.getViewport().promise("api.slick.ready", function() { this.updateSlider(), this.getViewport().debounce("resize", 50, function() { this.updateSlider() }.bind(this)) }.bind(this)), this.getViewport().observe("animation.start", function(element, reverse) { 9334 if (!reverse && "slide" == element.getAnimation().type && (this == element || this.hasParent(element))) { 9335 var hidden = "none" == element.getAnimationTarget().css("display"); 9336 element.getAnimationTarget().show(), this.update(), hidden && element.getAnimationTarget().css("display", "none") 9337 } 9338 }.bind(this)), this.getViewport().requireSlick(), this 9339 }, 9340 getMainElement: function() { return this.$slider || this.$element }, 9341 update: function() { return this.updateSlider(), this }, 9342 play: function() { return this.slick && this.settings && this.settings.autoplay && this.slick.play(), this }, 9343 pause: function() { return this.slick && this.slick.pause(), this }, 9344 prev: function() { return this.slick && this.slick.prev(), this }, 9345 next: function() { return this.slick && this.slick.next(), this }, 9346 current: function(current) { return "undefined" == typeof current ? !!this.slick && this.slick.slickCurrentSlide() : (this.slick && this.slick.goTo(current), this) }, 9347 updateSlider: function(deep) { 9348 if ($.fn.slick) { 9349 if (!this.slick || deep) { 9350 this.notify("update.before"), this.settings = this.get
9350SliderSettings(); 9351 var currentSlide = 0; 9352 this.slick && (currentSlide = this.slick.currentSlide, this.slick.unslick()), this.$slider.empty().attr("class", "slider-container"), this.settings.autoplaySpeed = this.settings.autoplaySpeed.indexOf("ms") != -1 ? parseInt(this.settings.autoplaySpeed) : 1e3 * parseFloat(this.settings.autoplaySpeed), this.settings.animationSpeed = this.settings.animationSpeed.indexOf("ms") != -1 ? parseInt(this.settings.animationSpeed) : 1e3 * parseFloat(this.settings.animationSpeed); 9353 for (var i = 0; i < this.settings.items.length; i++) { 9354 var image, url, $item = this.getViewport().jQuery('<div class="ed-slider-item"></div>'); 9355 image = "undefined" != typeof editor && editor && "getMediaManager" in editor ? editor.getMediaManager().getFileByUrl(this.settings.items[i].image) : new File(this.settings.items[i].image), this.getIsBackground() ? (url = image.getImageSize(this.getViewport().getBackgroundDefaultWidth()), $item.css("background-image", "url(" + url + ")"), $item.addClass("bg-" + (this.settings.items[i].orientation || "cc"))) : url = image.getImageSize(this.getViewport().getImageDefaultWidth()); 9356 var $img = this.getViewport().jQuery("<img />").attr("src", url).attr("alt", this.settings.items[i].title ? this.settings.items[i].title : ""); 9357 $img.appendTo($item).on("load", function(self) { return function() { self.notify("load", this) } }(this)), this.settings.items[i].title && this.getViewport().jQuery('<div class="ed-slider-text"></div>').html(this.settings.items[i].title).appendTo($item), this.settings.enlarge && $item.wrapInner('<a href="' + image.getLightboxImage() + '"></a>'), $item.appendTo(this.$slider) 9358 } 9359 var configuration = { accessibility: !1, adaptiveHeight: !1, arrows: this.settings.nav, prevArrow: '<button type="button" data-role="none" class="slick-prev" tabindex="0" role="button"></button>', nextArrow: '<button type="button" data-role="none" class="slick-next" tabindex="0" role="button"></button>', autoplay: this.settings.autoplay, autoplaySpeed: this.settings.autoplaySpeed, dots: this.settings.dots, draggable: !1, fade: "fade" == this.settings.animation, focusOnSelect: !1, infinite: this.settings.loop, initialSlide: currentSlide, mobileFirst: !1, pauseOnHover: this.settings.pauseOnHover, pauseOnFocus: this.settings.pauseOnHover, pauseOnDotsHover: this.settings.pauseOnHover, respondTo: "window", responsive: null, slide: "", slidesPerRow: 1, slidesToShow: 1, slidesToScroll: 1, speed: this.settings.animationSpeed, swipe: !0, swipeToSlide: !1, touchMove: !0, touchThreshold: 5, useCSS: !0, useTransform: !0, variableWidth: !1, vertical: "slide" == this.settings.animation && "vertical" == this.settings.direction, verticalSwiping: !1 }; 9360 this.getIsBackground() && (configuration.appendArrows = this.getParent().$section, configuration.appendDots = configuration.appendArrows), this.$items = this.getViewport().jQuery("> .ed-slider-item", this.$slider), this.$slider.slick(configuration).on("afterChange", function() { this.notify("slide") }.bind(this)).on("beforeChange", function() { this.notify("slide.before") }.bind(this)), this.slick = this.$slider.slick("getSlick"), this.$slider[this.settings.dots ? "addClass" : "removeClass"]("has-dots"), this.settings.enlarge && (this.getViewport().promise("api.magnific.ready", function() { this.$items.magnificPopup({ delegate: "a", type: "image", tLoading: "...", mainClass: "mfp-img-mobile", gallery: { enabled: !0, navigateByImgClick: !0, preload: [0, 1], tPrev: "", tNext: " ", tCounter: '<span class="mfp-counter">%curr%/%total%</span>' }, image: { tError: '<a href="%url%">The image #%curr%</a> could not be loaded.' } }) }.bind(this)), this.getViewport().requireMagnific()), "undefined" != typeof editor && editor && (this.getViewport().jQuery(document).off("visibilitychange.slickFix mozvisibilitychange.slickFix webkitvisibilitychange.slickFix"), this.getViewport().jQuery(document).on("visibilitychange.slickFix mozvisibilitychange.slickFix webkitvisibilitychange.slickFix", function() { this.editing && this.pause() }.bind(this))), this.notify("update.after") 9361 } 9362 return this.slick.setPosition(), this.slick.setOption(null, null, !0), this.editing && this.pause(), this 9363 } 9364 }, 9365 getSliderSettings: function() { 9366 var parameters, old = this.$slider.data("params"); 9367 try { parameters = JSON.parse(this.$slider.attr("data-parameters")), old = null } catch (e) { parameters = {} } 9368 var settings = _.merge({ items: [], animation: "slide", animationSpeed: "800ms", direction: "horizontal", autoplay: !0, autoplaySpeed: "5s", pauseOnHover: !0, loop: !0, nav: !this.getIsBackgroun
9368d(), dots: !1, enlarge: !1 }, parameters); 9369 return old && (settings.animation = old.animation, 9370 settings.animationSpeed = (old.animationSpeed || 800) + "ms", settings.autoplay = !!old.slideshow, settings.autoplaySpeed = (old.slideshowSpeed || 5e3) + "ms", settings.loop = !!old.animationLoop, settings.nav = !!old.directionNav, settings.dots = !!old.controlNav, settings.enlarge = !!old.enlarge, this.$slider.find(".ed-slider-item:not(.clone)").each(function() { 9371 var item = {}; 9372 if (item.image = this.getViewport().jQuery("img", this).attr("src"), !item.image) { 9373 var bgImage = this.getViewport().jQuery(this).css("background-image"); 9374 item.image = (bgImage.match(/url\((?:'|")?(.*?)(?:'|")?\)/) || ["", !1])[1], item.orientation = (this.getViewport().jQuery(this).attr("class").match(/bg-([a-z]{2})/) || ["", "cc"])[1] 9375 } 9376 item.title = this.getViewport().jQuery(".ed-slider-text", this).text() || "", item.image && settings.items.push(item) 9377 }), this.$slider.attr("data-parameters", JSON.stringify(settings)), this.$slider.removeAttr("data-params")), settings 9378 } 9379 }), 9380 ElementSpacer = ("undefined" != typeof ElementSpacer ? ElementSpacer : ElementBase).extend({ $spacer: null, wakeup: function() { return this.$spacer = this.getViewport().jQuery("div.space", this.$element[0]), this }, getMainElement: function() { return this.$spacer || this.$element } }), 9381 ElementText = ("undefined" != typeof ElementText ? ElementText : ElementBase).extend({}), 9382 ElementVideo = ("undefined" != typeof ElementVideo ? ElementVideo : ElementBase).extend({ 9383 $video: null, 9384 $loader: null, 9385 wakeup: function() { return this.$video = this.getViewport().jQuery("iframe", this.$element[0]), this.$loader = this.getViewport().jQuery(".video-loader", this.$element[0]), this.$element.on("click", ".video-loader", function(event) { event.preventDefault(), this.removeLoader() }.bind(this)), this }, 9386 getMainElement: function() { return this.$loader && this.$loader.length ? this.$loader : this.$video && this.$video.length ? this.$video : this.$element }, 9387 removeLoader: function(autoplay) { 9388 if (!this.$element.is(".lazy-load")) return this; 9389 this.$video || (this.$video = this.getViewport().jQuery("iframe", this.$element[0])); 9390 var src = this.$video.attr("data-src"); 9391 return ("undefined" == typeof autoplay || autoplay) && (src += (src.match(/\?[a-z]/) ? "&" : "?") + "autoplay=1"), this.$video.attr("src", src), this.$video.removeAttr("data-src"), this.$video.css("display", ""), (this.$loader || this.$element.children(".video-loader")).remove(), this.$loader = null, this 9392 } 9393 }), 9394 ElementYoutube = ("undefined" != typeof ElementYoutube ? ElementYoutube : ElementVideo).extend({}), 9395 ElementFormContainer = ("undefined" != typeof ElementFormContainer ? ElementFormContainer : ElementBase).extend({ 9396 $form: null, 9397 ajax: !0, 9398 time: null, 9399 wakeup: function() { return this.time = new Date, this.$form = this.getViewport().jQuery("> form", this.$element[0]), this.$form.on("submit", function(event) { this.ajax && (event.preventDefault(), this.submit()) }.bind(this)), this }, 9400 submit: function() { 9401 var formaction = this.$form.attr('action'); 9402 if ("undefined" != typeof cms && cms) return !1; 9403 if (!this.ajax) return this.$form.submit(), this; 9404 var data = this.$form.serialize(); 9405 return "undefined" != typeof webcard && "culture" in webcard && webcard.culture && (data += "&culture=" + webcard.culture), data += "&id=" + this.getId(), data += "&tac=" + Math.floor(((new Date).getTime() - this.time.getTime()) / 1e3), $.post(formaction, data, function(response) { 9406 this.$element.find(".ed-element").each(function() { this.element.destroy() }), this.$element.html(response), this.wakeup(); 9407 var $children = this.$element.find(".ed-element"), 9408 elements = []; 9409 $children.each(function(key, element) { 9410 var elementType = $(element).attr("class").replace("ed-element", ""); 9411 elementType = elementType.match(/ed-(?!stranger|reference-)([a-z\-]+)/)[1], elementType = "Element" + elementType.replace(/^([a-z])|\-([a-z])/g, function(match, first, second) { return (first || second).toUpperCase() }), elementType in window && elements.push(new window[elementType](element)) 9412 }.bind(this)), animations.initSubsequent(elements) 9413 }.bind(this), "text"), this 9414 }, 9415 setAjax: function(ajax) { return this.ajax = ajax, this } 9416 }), 9417 ElementFormButton = ("undefined" != typeof ElementFormButton ? ElementFormButton : ElementBase).extend({ $button: null, wakeup: function() { return this.$button = this.getViewport().jQuery("button", this.$element[0]), this } }), 9418 ElementFormCaptcha = ("undefined" != typeof ElementFormCaptcha ? ElementFormCaptcha : ElementBase).extend({ $image: null, $input: null, $label: null, $regenerate: null, withToken: !1, wakeup: function() { return this.$image = this.getViewport().jQuery("img", this.$element[0]), this.$input = this.getViewport().jQuery("input", this.$element[0]), this.$label = this.getViewport().jQuery("> label", this.$element[0]), this.$regenerate = this.getViewport().jQuery("a.regenerate", this.$element[0]), this.$element.on("click", "a.regenerate", function(event) { event.preventDefault(), this.regenerate() }.bind(this)), this.regenerate(), this }, regenerate: function() { return $.post("/form_container/captcha", { id: this.getId(), _token: $('meta[name="csrf-token"]').attr('content'), color: this.$input.attr("data-color"), background: this.$input.attr("data-background"), opacity: this.$input.attr("data-opacity") }, function(data) { /*this.$image.attr("src", "data:image/png;base64," + data)*/ }.bind(this), "text"), this } }), 9419 ElementFormCheckbox = ("undefined" != typeof ElementFormCheckbox ? ElementFormCheckbox : ElementBase).extend({ $list: null, $label: null, wakeup: function() { return this.$list = this.getViewport().jQuery("> ul.checkbox_list", this.$element[0]), this.$label = this.getViewport().jQuery("> label", this.$element[0]), this } }), 9420 ElementFormInput = ("undefined" != typeof ElementFormInput ? ElementFormInput : ElementBase).extend({ $input: null, $label: null, wakeup: function() { return this.$input = this.getViewport().jQuery("input", this.$element[0]), this.$label = this.getViewport().jQuery("label", this.$element[0]), this } }), 9421 ElementFormEmail = ("undefined" != typeof ElementFormEmail ? ElementFormEmail : ElementBase).extend({ $input: null, $label: null, wakeup: function() { return this.$input = this.getViewport().jQuery("input", this.$element[0]), this.$label = this.getViewport().jQuery("label", this.$element[0]), this } }), 9422 ElementFormNumber = ("undefined" != typeof ElementFormNumber ? ElementFormNumber : ElementBase).extend({ $input: null, $label: null, wakeup: function() { return this.$input = this.getViewport().jQuery("input", this.$element[0]), this.$label = this.getViewport().jQuery("label", this.$element[0]), this } }), 9423 ElementFormPhone = ("undefined" != typeof ElementFormPhone ? ElementFormPhone : ElementBase).extend({ $input: null, $label: null, wakeup: function() { return this.$input = this.getViewport().jQuery("input", this.$element[0]), this.$label = this.getViewport().jQuery("label", this.$element[0]), this } }), 9424 ElementFormDate = ("undefined" != typeof ElementFormDate ? ElementFormDate : ElementBase).extend({ 9425 $input: null, 9426 $hidden: null, 9427 $label: null, 9428 configuration: {}, 9429 wakeup: function() { 9430 if ($('input[type="hidden"], div.xdsoft_datetimepicker', this.$element[0]).remove(), this.$input = this.getViewport().jQuery("input", this.$element[0]), this.$label = this.getViewport().jQuery("label", this.$element[0]), this.$hidden = $('<input type="hidden" />').attr("name", this.$input.attr("name")).insertAfter(this.$input), this.$input.removeAttr("name"), this.$input.val()) { 9431 var type = this.$input.attr("data-type") ? this.$input.attr("data-type") : "date", 9432 format = "time" == type ? "HH:mm" : "YYYY-MM-DD" + ("datetime" == type ? " HH:mm" : ""), 9433 previous = moment(this.$input.val(), format); 9434 previous && previous.isValid() && this.$hidden.val(previous.format(format)), this.$input.val("") 9435 } 9436 return this.updateDatepicker(), this 9437 }, 9438 setConfiguration: function(configuration) { return this.configuration = configuration, this.update(), this }, 9439 getConfiguration: function() { return this.configuration }, 9440 update: function() { return this.updateDatepicker(), this }, 9441 updateDatepicker: function() { 9442 this.$input.data("xdsoft_datetimepicker") && this.$input.datetimepicker("destroy"), $.datetimepicker.setLocale(moment.locale()), $.datetimepicker.setDateFormatter({ parseDate: function(date, format) { var d = moment(date, format); return !!d.isValid() && d.toDate() }, formatDate: function(date, format) { return moment(date).format(format) } }), this.$element[this.$input.data("embed") ? "addClass" : "removeClass"]("embedded"), this.$input.data("embed") || this.$input.css("display", ""); 9443 var minDate = !1, 9444 maxDate = !1, 9445 min = this.$input.attr("data-min-date"), 9446 max = this.$input.attr("data-max-date"); 9447 if (min) { 9448 var match = min.match(/([0-9-]+) (days|weeks|months|years)/); 9449 minDate = match ? moment().add(match[1], match[2]).format("YYYY-MM-DD") : moment(min).format("YYYY-MM-DD") 9450 } 9451 if (max) { 9452 var match = max.match(/([0-9-]+) (days|weeks|months|years)/); 9453 maxDate = match ? moment().add(match[1], match[2]).format("YYYY-MM-DD") : moment(max).format("YYYY-MM-DD") 9454 } 9455 var minTime = this.$input.attr("data-min-time") || !1, 9456 maxTime = this.$input.attr("data-max-time") || !1; 9457 maxTime && (maxTime = moment(maxTime, "HH:mm").add(1, "minute").format("HH:mm")); 9458 var disabledWeekdays = []; 9459 enabledWeekdays = (this.$input.attr("data-weekdays") || "").split(","); 9460 for (var i = 0; i < 7; i++) enabledWeekdays.indexOf(i + "") === -1 && disabledWeekdays.push(i); 9461 var outputFormat = this.$input.attr("data-format") ? this.$input.attr("data-format") : "L", 9462 type = this.$input.attr("data-type") ? this.$input.attr("data-type") : "date"; 9463 "datetime" == type ? outputFormat += " - HH:mm" : "time" == type && (outputFormat = "HH:mm"); 9464 var updateHiddenInput = function(date) { 9465 if (!date) return void this.$hidden.val(""); 9466 var format = "time" == type ? "HH:mm" : "YYYY-MM-DD" + ("datetime" == type ? " HH:mm" : ""); 9467 this.$hidden.val(moment(date).format(format)) 9468 }.bind(this), 9469 currentValue = !1; 9470 if (this.$hidden.val()) { 9471 var format = "time" == type ? "HH:mm" : "YYYY-MM-DD" + ("datetime" == type ? " HH:mm" : ""), 9472 date = moment(this.$hidden.val(), format); 9473 currentValue = date.format(outputFormat) 9474 } 9475 return this.$input.datetimepicker(_.merge({ dayOfWeekStart: moment().startOf("week").isoWeekday(), inline: !!this.$input.data("embed"), weeks: !!this.$input.data("weeks"), minDate: minDate, maxDate: maxDate, minTime: minTime, maxTime: maxTime, value: currentValue, format: outputFormat, formatTime: "HH:mm", formatDate: "YYYY-MM-DD", datepicker: "time" != type, timepicker: "date" != type, defaultSelect: !1, allowBlank: !0, hours12: !1, step: parseInt(this.$input.attr("data-step") || 60), defaultDate: !1, defaultTime: !1, disabledWeekDays: disabledWeekdays, yearStart: 10 * Math.floor(((new Date).getFullYear() - 100) / 10), yearEnd: 10 * Math.ceil(((new Date).getFullYear() + 50) / 10), onSelectDate: updateHiddenInput, onSelectTime: updateHiddenInput, scrollMonth: !1, scrollTime: !1, scrollInput: !1 }, this.getConfiguration())), currentValue || this.$input.datetimepicker("reset"), this 9476 } 9477 }), 9478 ElementFormRadio = ("undefined" != typeof ElementFormRadio ? ElementFormRadio : ElementBase).extend({ $list: null, $label: null, wakeup: function() { return this.$list = this.getViewport().jQuery("> ul.radio_list", this.$element[0]), this.$label = this.getViewport().jQuery("> label", this.$element[0]), this } }), 9479 ElementFormSelect = ("undefined" != typeof ElementFormSelect ? ElementFormSelect : ElementBase).extend({ $select: null, $label: null, wakeup: function() { return this.$select = this.getViewport().jQuery("select", this.$element[0]), this.$label = this.getViewport().jQuery("label", this.$element[0]), this } }), 9480 ElementFormTextarea = ("undefined" != typeof ElementFormTextarea ? ElementFormTextarea : ElementBase).extend({ $textarea: null, $label: null, wakeup: function() { return this.$textarea = this.getViewport().jQuery("textarea", this.$element[0]), this.$label = this.getViewport().jQuery("label", this.$element[0]), this } }); 9481window.parent && window.parent !== window && (window.onerror = function(msg, url, line) { return window.parent.onerror(msg, url, line) }); 9482var viewport, page, animations; 9483jQuery(function() { 9484 "undefined" != typeof editor && editor && editor.notify("init.before"), moment.locale("undefined" != typeof webcard ? webcard.culture || "de" : "de"), viewport = new Viewport; 9485 var elements = []; 9486 $(".ed-element").each(function(key, element) { 9487 if (!("element" in element && element.element)) { 9488 var elementType = $(element).attr("class").replace("ed-element", ""); 9489 if (elementType = (elementType.match(/ed-(?!stranger|reference-)([a-z\-]+)/) || [null, null])[1], !elementType) return void console.warn("Couldn't find matching type for element: ", element); 9490 elementType = "Element" + elementType.replace(/^([a-z])|\-([a-z])/g, function(match, first, second) { return (first || second).toUpperCase() }), elementType in window && elements.push("undefined" != typeof editor && editor ? new window[elementType](editor, element) : new window[elementType](element)) 9491 } 9492 }.bind(this)), animations = new Animations(elements), "undefined" != typeof editor && editor && editor.notify("init.after") 9493}); 9494/*! Magnific Popup - v1.1.0 - 2016-02-20
9495 * http://dimsemenov.com/plugins/magnific-popup/ 9496 * Copyright (c) 2016 Dmitry Semenov; */ 9497! function(a) { "function" == typeof define && define.amd ? define(["jquery"], a) : a("object" == typeof exports ? require("jquery") : window.jQuery || window.Zepto) }(function(a) { 9498 var b, c, d, e, f, g, h = "Close", 9499 i = "BeforeClose", 9500 j = "AfterClose", 9501 k = "BeforeAppend", 9502 l = "MarkupParse", 9503 m = "Open", 9504 n = "Change", 9505 o = "mfp", 9506 p = "." + o, 9507 q = "mfp-ready", 9508 r = "mfp-removing", 9509 s = "mfp-prevent-close", 9510 t = function() {}, 9511 u = !!window.jQuery, 9512 v = a(window), 9513 w = function(a, c) { b.ev.on(o + a + p, c) }, 9514 x = function(b, c, d, e) { var f = document.createElement("div"); return f.className = "mfp-" + b, d && (f.innerHTML = d), e ? c && c.appendChild(f) : (f = a(f), c && f.appendTo(c)), f }, 9515 y = function(c, d) { b.ev.triggerHandler(o + c, d), b.st.callbacks && (c = c.charAt(0).toLowerCase() + c.slice(1), b.st.callbacks[c] && b.st.callbacks[c].apply(b, a.isArray(d) ? d : [d])) }, 9516 z = function(c) { return c === g && b.currTemplate.closeBtn || (b.currTemplate.closeBtn = a(b.st.closeMarkup.replace("%title%", b.st.tClose)), g = c), b.currTemplate.closeBtn }, 9517 A = function() { a.magnificPopup.instance || (b = new t, b.init(), a.magnificPopup.instance = b) }, 9518 B = function() { 9519 var a = document.createElement("p").style, 9520 b = ["ms", "O", "Moz", "Webkit"]; 9521 if (void 0 !== a.transition) return !0; 9522 for (; b.length;) 9523 if (b.pop() + "Transition" in a) return !0; 9524 return !1 9525 }; 9526 t.prototype = { 9527 constructor: t, 9528 init: function() { 9529 var c = navigator.appVersion; 9530 b.isLowIE = b.isIE8 = document.all && !document.addEventListener, b.isAndroid = /android/gi.test(c), b.isIOS = /iphone|ipad|ipod/gi.test(c), b.supportsTransition = B(), b.probablyMobile = b.isAndroid || b.isIOS || /(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent), d = a(document), b.popupsCache = {} 9531 }, 9532 open: function(c) { 9533 var e; 9534 if (c.isObj === !1) { 9535 b.items = c.items.toArray(), b.index = 0; 9536 var g, h = c.items; 9537 for (e = 0; e < h.length; e++) 9538 if (g = h[e], g.parsed && (g = g.el[0]), g === c.el[0]) { b.index = e; break } 9539 } else b.items = a.isArray(c.items) ? c.items : [c.items], b.index = c.index || 0; 9540 if (b.isOpen) return void b.updateItemHTML(); 9541 b.types = [], f = "", c.mainEl && c.mainEl.length ? b.ev = c.mainEl.eq(0) : b.ev = d, c.key ? (b.popupsCache[c.key] || (b.popupsCache[c.key] = {}), b.currTemplate = b.popupsCache[c.key]) : b.currTemplate = {}, b.st = a.extend(!0, {}, a.magnificPopup.defaults, c), b.fixedContentPos = "auto" === b.st.fixedContentPos ? !b.probablyMobile : b.st.fixedContentPos, b.st.modal && (b.st.closeOnContentClick = !1, b.st.closeOnBgClick = !1, b.st.showCloseBtn = !1, b.st.enableEscapeKey = !1), b.bgOverlay || (b.bgOverlay = x("bg").on("click" + p, function() { b.close() }), b.wrap = x("wrap").attr("tabindex", -1).on("click" + p, function(a) { b._checkIfClose(a.target) && b.close() }), b.container = x("container", b.wrap)), b.contentContainer = x("content"), b.st.preloader && (b.preloader = x("preloader", b.container, b.st.tLoading)); 9542 var i = a.magnificPopup.modules; 9543 for (e = 0; e < i.length; e++) { 9544 var j = i[e]; 9545 j = j.charAt(0).toUpperCase() + j.slice(1), b["init" + j].call(b) 9546 } 9547 y("BeforeOpen"), b.st.showCloseBtn && (b.st.closeBtnInside ? (w(l, function(a, b, c, d) { c.close_replaceWith = z(d.type) }), f += " mfp-close-btn-in") : b.wrap.append(z())), b.st.alignTop && (f += " mfp-align-top"), b.fixedContentPos ? b.wrap.css({ overflow: b.st.overflowY, overflowX: "hidden", overflowY: b.st.overflowY }) : b.wrap.css({ top: v.scrollTop(), position: "absolute" }), (b.st.fixedBgPos === !1 || "auto" === b.st.fixedBgPos && !b.fixedContentPos) && b.bgOverlay.css({ height: d.height(), position: "absolute" }), b.st.enableEscapeKey && d.on("keyup" + p, function(a) { 27 === a.keyCode && b.close() }), v.on("resize" + p, function() { b.updateSize() }), b.st.closeOnContentClick || (f += " mfp-auto-cursor"), f && b.wrap.addClass(f); 9548 var k = b.wH = v.height(), 9549 n = {}; 9550 if (b.fixedContentPos && b._hasScrollBar(k)) { 9551 var o = b._getScrollbarSize(); 9552 o && (n.marginRight = o) 9553 } 9554 b.fixedContentPos && (b.isIE7 ? a("body, html").css("overflow", "hidden") : n.overflow = "hidden"); 9555 var r = b.st.mainClass; 9556 return b.isIE7 && (r += " mfp-ie7"), r && b._addClassToMFP(r), b.updateItemHTML(), y("BuildControls"), a("html").css(n), b.bgOverlay.add(b.
9556wrap).prependTo(b.st.prependTo || a(document.body)), b._lastFocusedEl = document.activeElement, setTimeout(function() { b.content ? (b._addClassToMFP(q), b._setFocus()) : b.bgOverlay.addClass(q), d.on("focusin" + p, b._onFocusIn) }, 16), b.isOpen = !0, b.updateSize(k), y(m), c 9557 }, 9558 close: function() { b.isOpen && (y(i), b.isOpen = !1, b.st.removalDelay && !b.isLowIE && b.supportsTransition ? (b._addClassToMFP(r), setTimeout(function() { b._close() }, b.st.removalDelay)) : b._close()) }, 9559 _close: function() { 9560 y(h); 9561 var c = r + " " + q + " "; 9562 if (b.bgOverlay.detach(), b.wrap.detach(), b.container.empty(), b.st.mainClass && (c += b.st.mainClass + " "), b._removeClassFromMFP(c), b.fixedContentPos) { 9563 var e = { marginRight: "" }; 9564 b.isIE7 ? a("body, html").css("overflow", "") : e.overflow = "", a("html").css(e) 9565 } 9566 d.off("keyup" + p + " focusin" + p), b.ev.off(p), b.wrap.attr("class", "mfp-wrap").removeAttr("style"), b.bgOverlay.attr("class", "mfp-bg"), b.container.attr("class", "mfp-container"), !b.st.showCloseBtn || b.st.closeBtnInside && b.currTemplate[b.currItem.type] !== !0 || b.currTemplate.closeBtn && b.currTemplate.closeBtn.detach(), b.st.autoFocusLast && b._lastFocusedEl && a(b._lastFocusedEl).focus(), b.currItem = null, b.content = null, b.currTemplate = null, b.prevHeight = 0, y(j) 9567 }, 9568 updateSize: function(a) { 9569 if (b.isIOS) { 9570 var c = document.documentElement.clientWidth / window.innerWidth, 9571 d = window.innerHeight * c; 9572 b.wrap.css("height", d), b.wH = d 9573 } else b.wH = a || v.height(); 9574 b.fixedContentPos || b.wrap.css("height", b.wH), y("Resize") 9575 }, 9576 updateItemHTML: function() { 9577 var c = b.items[b.index]; 9578 b.contentContainer.detach(), b.content && b.content.detach(), c.parsed || (c = b.parseEl(b.index)); 9579 var d = c.type; 9580 if (y("BeforeChange", [b.currItem ? b.currItem.type : "", d]), b.currItem = c, !b.currTemplate[d]) { 9581 var f = b.st[d] ? b.st[d].markup : !1; 9582 y("FirstMarkupParse", f), f ? b.currTemplate[d] = a(f) : b.currTemplate[d] = !0 9583 } 9584 e && e !== c.type && b.container.removeClass("mfp-" + e + "-holder"); 9585 var g = b["get" + d.charAt(0).toUpperCase() + d.slice(1)](c, b.currTemplate[d]); 9586 b.appendContent(g, d), c.preloaded = !0, y(n, c), e = c.type, b.container.prepend(b.contentContainer), y("AfterChange") 9587 }, 9588 appendContent: function(a, c) { b.content = a, a ? b.st.showCloseBtn && b.st.closeBtnInside && b.currTemplate[c] === !0 ? b.content.find(".mfp-close").length || b.content.append(z()) : b.content = a : b.content = "", y(k), b.container.addClass("mfp-" + c + "-holder"), b.contentContainer.append(b.content) }, 9589 parseEl: function(c) { 9590 var d, e = b.items[c]; 9591 if (e.tagName ? e = { el: a(e) } : (d = e.type, e = { data: e, src: e.src }), e.el) { 9592 for (var f = b.types, g = 0; g < f.length; g++) 9593 if (e.el.hasClass("mfp-" + f[g])) { d = f[g]; break } 9594 e.src = e.el.attr("data-mfp-src"), e.src || (e.src = e.el.attr("href")) 9595 } 9596 return e.type = d || b.st.type || "inline", e.index = c, e.parsed = !0, b.items[c] = e, y("ElementParse", e), b.items[c] 9597 }, 9598 addGroup: function(a, c) { 9599 var d = function(d) { d.mfpEl = this, b._openClick(d, a, c) }; 9600 c || (c = {}); 9601 var e = "click.magnificPopup"; 9602 c.mainEl = a, c.items ? (c.isObj = !0, a.off(e).on(e, d)) : (c.isObj = !1, c.delegate ? a.off(e).on(e, c.delegate, d) : (c.items = a, a.off(e).on(e, d))) 9603 }, 9604 _openClick: function(c, d, e) { 9605 var f = void 0 !== e.midClick ? e.midClick : a.magnificPopup.defaults.midClick; 9606 if (f || !(2 === c.which || c.ctrlKey || c.metaKey || c.altKey || c.shiftKey)) { 9607 var g = void 0 !== e.disableOn ? e.disableOn : a.magnificPopup.defaults.disableOn; 9608 if (g) 9609 if (a.isFunction(g)) { if (!g.call(b)) return !0 } else if (v.width() < g) return !0; 9610 c.type && (c.preventDefault(), b.isOpen && c.stopPropagation()), e.el = a(c.mfpEl), e.delegate && (e.items = d.find(e.delegate)), b.open(e) 9611 } 9612 }, 9613 updateStatus: function(a, d) { 9614 if (b.preloader) { 9615 c !== a && b.container.removeClass("mfp-s-" + c), d || "loading" !== a || (d = b.st.tLoading); 9616 var e = { status: a, text: d }; 9617 y("UpdateStatus", e), a = e.status, d = e.text, b.preloader.html(d), b.preloader.find("a").on("click", function(a) { a.stopImmediatePropagation() }), b.container.addClass("mfp-s-" + a), c = a 9618 } 9619 }, 9620 _checkIfClose: function(c) { 9621 if (!a(c).hasClass(s)) { 9622 var d = b.st.closeOnContentClick, 9623 e = b.st.closeOnBgClick; 9624 if (d && e) return !0; 9625 if (!b.content || a(c).hasClass("mfp-close") || b.preloader && c === b.preloader[0]) return !0; 9626 if (c === b.content[0] || a.contains(b.content[0], c)) { if (d) return !0 } else if (e && a.contains(document, c)) return !0; 9627 return !1 9628 } 9629 }, 9630 _addClassToMFP: function(a) { b.bgOverlay.addClass(a), b.wrap.addClass(a) }, 9631 _removeClassFromMFP: function(a) { this.bgOverlay.removeClass(a), b.wrap.removeClass(a) }, 9632 _hasScrollBar: function(a) { return (b.isIE7 ? d.height() : document.body.scrollHeight) > (a || v.height()) }, 9633 _setFocus: function() { 9634 (b.st.focus ? b.content.find(b.st.focus).eq(0) : b.wrap).focus() 9635 }, 9636 _onFocusIn: function(c) { return c.target === b.wrap[0] || a.contains(b.wrap[0], c.target) ? void 0 : (b._setFocus(), !1) }, 9637 _parseMarkup: function(b, c, d) { 9638 var e; 9639 d.data && (c = a.extend(d.data, c)), y(l, [b, c, d]), a.each(c, function(c, d) { if (void 0 === d || d === !1) return !0; if (e = c.split("_"), e.length > 1) { var f = b.find(p + "-" + e[0]); if (f.length > 0) { var g = e[1]; "replaceWith" === g ? f[0] !== d[0] && f.replaceWith(d) : "img" === g ? f.is("img") ? f.attr("src", d) : f.replaceWith(a("<img>").attr("src", d).attr("class", f.attr("class"))) : f.attr(e[1], d) } } else b.find(p + "-" + c).html(d) }) 9640 }, 9641 _getScrollbarSize: function() { 9642 if (void 0 === b.scrollbarSize) { 9643 var a = document.createElement("div"); 9644 a.style.cssText = "width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;", document.body.appendChild(a), b.scrollbarSize = a.offsetWidth - a.clientWidth, document.body.removeChild(a) 9645 } 9646 return b.scrollbarSize 9647 } 9648 }, a.magnificPopup = { instance: null, proto: t.prototype, modules: [], open: function(b, c) { return A(), b = b ? a.extend(!0, {}, b) : {}, b.isObj = !0, b.index = c || 0, this.instance.open(b) }, close: function() { return a.magnificPopup.instance && a.magnificPopup.instance.close() }, registerModule: function(b, c) { c.options && (a.magnificPopup.defaults[b] = c.options), a.extend(this.proto, c.proto), this.modules.push(b) }, defaults: { disableOn: 0, key: null, midClick: !1, mainClass: "", preloader: !0, focus: "", closeOnContentClick: !1, closeOnBgClick: !0, closeBtnInside: !0, showCloseBtn: !0, enableEscapeKey: !0, modal: !1, alignTop: !1, removalDelay: 0, prependTo: null, fixedContentPos: "auto", fixedBgPos: "auto", overflowY: "auto", closeMarkup: '<button title="%title%" type="button" class="mfp-close">×</button>', tClose: "Close (Esc)", tLoading: "Loading...", autoFocusLast: !0 } }, a.fn.magnificPopup = function(c) { 9649 A(); 9650 var d = a(this); 9651 if ("string" == typeof c) 9652 if ("open" === c) { 9653 var e, f = u ? d.data("magnificPopup") : d[0].magnificPopup, 9654 g = parseInt(arguments[1], 10) || 0; 9655 f.items ? e = f.items[g] : (e = d, f.delegate && (e = e.find(f.delegate)), e = e.eq(g)), b._openClick({ mfpEl: e }, d, f) 9656 } else b.isOpen && b[c].apply(b, Array.prototype.slice.call(arguments, 1)); 9657 else c = a.extend(!0, {}, c), u ? d.data("magnificPopup", c) : d[0].magnificPopup = c, b.addGroup(d, c); 9658 return d 9659 }; 9660 var C, D, E, F = "inline", 9661 G = function() { E && (D.after(E.addClass(C)).detach(), E = null) }; 9662 a.magnificPopup.registerModule(F, { 9663 options: { hiddenClass: "hide", markup: "", tNotFound: "Content not found" }, 9664 proto: { 9665 initInline: function() { b.types.push(F), w(h + "." + F, function() { G() }) }, 9666 getInline: function(c, d) { 9667 if (G(), c.src) { 9668 var e = b.st.inline, 9669 f = a(c.src); 9670 if (f.length) { 9671 var g = f[0].parentNode; 9672 g && g.tagName && (D || (C = e.hiddenClass, D = x(C), C = "mfp-" + C), E = f.after(D).detach().removeClass(C)), b.updateStatus("ready") 9673 } else b.updateStatus("error", e.tNotFound), f = a("<div>"); 9674 return c.inlineElement = f, f 9675 } 9676 return b.updateStatus("ready"), b._parseMarkup(d, {}, c), d 9677 } 9678 } 9679 }); 9680 var H, I = "ajax", 9681 J = function() { H && a(document.body).removeClass(H) },
9682 K = function() { J(), b.req && b.req.abort() }; 9683 a.magnificPopup.registerModule(I, { 9684 options: { settings: null, cursor: "mfp-ajax-cur", tError: '<a href="%url%">The content</a> could not be loaded.' }, 9685 proto: { 9686 initAjax: function() { b.types.push(I), H = b.st.ajax.cursor, w(h + "." + I, K), w("BeforeChange." + I, K) }, 9687 getAjax: function(c) { 9688 H && a(document.body).addClass(H), b.updateStatus("loading"); 9689 var d = a.extend({ 9690 url: c.src, 9691 success: function(d, e, f) { 9692 var g = { data: d, xhr: f }; 9693 y("ParseAjax", g), b.appendContent(a(g.data), I), c.finished = !0, J(), b._setFocus(), setTimeout(function() { b.wrap.addClass(q) }, 16), b.updateStatus("ready"), y("AjaxContentAdded") 9694 }, 9695 error: function() { J(), c.finished = c.loadError = !0, b.updateStatus("error", b.st.ajax.tError.replace("%url%", c.src)) } 9696 }, b.st.ajax.settings); 9697 return b.req = a.ajax(d), "" 9698 } 9699 } 9700 }); 9701 var L, M = function(c) { if (c.data && void 0 !== c.data.title) return c.data.title; var d = b.st.image.titleSrc; if (d) { if (a.isFunction(d)) return d.call(b, c); if (c.el) return c.el.attr(d) || "" } return "" }; 9702 a.magnificPopup.registerModule("image", { 9703 options: { markup: '<div class="mfp-figure"><div class="mfp-close"></div><figure><div class="mfp-img"></div><figcaption><div class="mfp-bottom-bar"><div class="mfp-title"></div><div class="mfp-counter"></div></div></figcaption></figure></div>', cursor: "mfp-zoom-out-cur", titleSrc: "title", verticalFit: !0, tError: '<a href="%url%">The image</a> could not be loaded.' }, 9704 proto: { 9705 initImage: function() { 9706 var c = b.st.image, 9707 d = ".image"; 9708 b.types.push("image"), w(m + d, function() { "image" === b.currItem.type && c.cursor && a(document.body).addClass(c.cursor) }), w(h + d, function() { c.cursor && a(document.body).removeClass(c.cursor), v.off("resize" + p) }), w("Resize" + d, b.resizeImage), b.isLowIE && w("AfterChange", b.resizeImage) 9709 }, 9710 resizeImage: function() { 9711 var a = b.currItem; 9712 if (a && a.img && b.st.image.verticalFit) { 9713 var c = 0; 9714 b.isLowIE && (c = parseInt(a.img.css("padding-top"), 10) + parseInt(a.img.css("padding-bottom"), 10)), a.img.css("max-height", b.wH - c) 9715 } 9716 }, 9717 _onImageHasSize: function(a) { a.img && (a.hasSize = !0, L && clearInterval(L), a.isCheckingImgSize = !1, y("ImageHasSize", a), a.imgHidden && (b.content && b.content.removeClass("mfp-loading"), a.imgHidden = !1)) }, 9718 findImageSize: function(a) { 9719 var c = 0, 9720 d = a.img[0], 9721 e = function(f) { L && clearInterval(L), L = setInterval(function() { return d.naturalWidth > 0 ? void b._onImageHasSize(a) : (c > 200 && clearInterval(L), c++, void(3 === c ? e(10) : 40 === c ? e(50) : 100 === c && e(500))) }, f) }; 9722 e(1) 9723 }, 9724 getImage: function(c, d) { 9725 var e = 0, 9726 f = function() { c && (c.img[0].complete ? (c.img.off(".mfploader"), c === b.currItem && (b._onImageHasSize(c), b.updateStatus("ready")), c.hasSize = !0, c.loaded = !0, y("ImageLoadComplete")) : (e++, 200 > e ? setTimeout(f, 100) : g())) }, 9727 g = function() { c && (c.img.off(".mfploader"), c === b.currItem && (b._onImageHasSize(c), b.updateStatus("error", h.tError.replace("%url%", c.src))), c.hasSize = !0, c.loaded = !0, c.loadError = !0) }, 9728 h = b.st.image, 9729 i = d.find(".mfp-img"); 9730 if (i.length) { 9731 var j = document.createElement("img"); 9732 j.className = "mfp-img", c.el && c.el.find("img").length && (j.alt = c.el.find("img").attr("alt")), c.img = a(j).on("load.mfploader", f).on("error.mfploader", g), j.src = c.src, i.is("img") && (c.img = c.img.clone()), j = c.img[0], j.naturalWi
9732dth > 0 ? c.hasSize = !0 : j.width || (c.hasSize = !1) 9733 } 9734 return b._parseMarkup(d, { title: M(c), img_replaceWith: c.img }, c), b.resizeImage(), c.hasSize ? (L && clearInterval(L), c.loadError ? (d.addClass("mfp-loading"), b.updateStatus("error", h.tError.replace("%url%", c.src))) : (d.removeClass("mfp-loading"), b.updateStatus("ready")), d) : (b.updateStatus("loading"), c.loading = !0, c.hasSize || (c.imgHidden = !0, d.addClass("mfp-loading"), b.findImageSize(c)), d) 9735 } 9736 } 9737 }); 9738 var N, O = function() { return void 0 === N && (N = void 0 !== document.createElement("p").style.MozTransform), N }; 9739 a.magnificPopup.registerModule("zoom", { 9740 options: { enabled: !1, easing: "ease-in-out", duration: 300, opener: function(a) { return a.is("img") ? a : a.find("img") } }, 9741 proto: { 9742 initZoom: function() { 9743 var a, c = b.st.zoom, 9744 d = ".zoom"; 9745 if (c.enabled && b.supportsTransition) { 9746 var e, f, g = c.duration, 9747 j = function(a) { 9748 var b = a.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"), 9749 d = "all " + c.duration / 1e3 + "s " + c.easing, 9750 e = { position: "fixed", zIndex: 9999, left: 0, top: 0, "-webkit-backface-visibility": "hidden" }, 9751 f = "transition"; 9752 return e["-webkit-" + f] = e["-moz-" + f] = e["-o-" + f] = e[f] = d, b.css(e), b 9753 }, 9754 k = function() { b.content.css("visibility", "visible") }; 9755 w("BuildControls" + d, function() { 9756 if (b._allowZoom()) { 9757 if (clearTimeout(e), b.content.css("visibility", "hidden"), a = b._getItemToZoom(), !a) return void k(); 9758 f = j(a), f.css(b._getOffset()), b.wrap.append(f), e = setTimeout(function() { f.css(b._getOffset(!0)), e = setTimeout(function() { k(), setTimeout(function() { f.remove(), a = f = null, y("ZoomAnimationEnded") }, 16) }, g) }, 16) 9759 } 9760 }), w(i + d, function() { 9761 if (b._allowZoom()) { 9762 if (clearTimeout(e), b.st.removalDelay = g, !a) { 9763 if (a = b._getItemToZoom(), !a) return; 9764 f = j(a) 9765 } 9766 f.css(b._getOffset(!0)), b.wrap.append(f), b.content.css("visibility", "hidden"), setTimeout(function() { f.css(b._getOffset()) }, 16) 9767 } 9768 }), w(h + d, function() { b._allowZoom() && (k(), f && f.remove(), a = null) }) 9769 } 9770 }, 9771 _allowZoom: function() { return "image" === b.currItem.type }, 9772 _getItemToZoom: function() { return b.currItem.hasSize ? b.currItem.img : !1 }, 9773 _getOffset: function(c) { 9774 var d; 9775 d = c ? b.currItem.img : b.st.zoom.opener(b.currItem.el || b.currItem); 9776 var e = d.offset(), 9777 f = parseInt(d.css("padding-top"), 10), 9778 g = parseInt(d.css("padding-bottom"), 10); 9779 e.top -= a(window).scrollTop() - f; 9780 var h = { width: d.width(), height: (u ? d.innerHeight() : d[0].offsetHeight) - g - f }; 9781 return O() ? h["-moz-transform"] = h.transform = "translate(" + e.left + "px," + e.top + "px)" : (h.left = e.left, h.top = e.top), h 9782 } 9783 } 9784 }); 9785 var P = "iframe", 9786 Q = "//about:blank", 9787 R = function(a) { 9788 if (b.currTemplate[P]) { 9789 var c = b.currTemplate[P].find("iframe"); 9790 c.length && (a || (c[0].src = Q), b.isIE8 && c.css("display", a ? "block" : "none")) 9791 } 9792 }; 9793 a.magnificPopup.registerModule(P, { 9794 options: { markup: '<div class="mfp-iframe-scaler"><div class="mfp-close"></div><iframe class="mfp-iframe" src="//about:blank" frameborder="0" allowfullscreen></iframe></div>', srcAction: "iframe_src", patterns: { youtube: { index: "youtube.com", id: "v=", src: "//www.youtube.com/embed/%id%?autoplay=1" }, vimeo: { index: "vimeo.com/", id: "/", src: "//player.vimeo.com/video/%id%?autoplay=1" }, gmaps: { index: "//maps.google.", src: "%id%&output=embed" } } }, 9795 proto: { 9796 initIframe: function() { b.types.push(P), w("BeforeChange", function(a, b, c) { b !== c && (b === P ? R() : c === P && R(!0)) }), w(h + "." + P, function() { R() }) }, 9797 getIframe: function(c, d) { 9798 var e = c.src, 9799 f = b.st.iframe; 9800 a.each(f.patterns, function() { return e.indexOf(this.index) > -1 ? (this.id && (e = "string" == typeof this.id ? e.substr(e.lastIndexOf(this.id
9800) + this.id.length, e.length) : this.id.call(this, e)), e = this.src.replace("%id%", e), !1) : void 0 }); 9801 var g = {}; 9802 return f.srcAction && (g[f.srcAction] = e), b._parseMarkup(d, g, c), b.updateStatus("ready"), d 9803 } 9804 } 9805 }); 9806 var S = function(a) { var c = b.items.length; return a > c - 1 ? a - c : 0 > a ? c + a : a }, 9807 T = function(a, b, c) { return a.replace(/%curr%/gi, b + 1).replace(/%total%/gi, c) }; 9808 a.magnificPopup.registerModule("gallery", { 9809 options: { enabled: !1, arrowMarkup: '<button title="%title%" type="button" class="mfp-arrow mfp-arrow-%dir%"></button>', preload: [0, 2], navigateByImgClick: !0, arrows: !0, tPrev: "Previous (Left arrow key)", tNext: "Next (Right arrow key)", tCounter: "%curr% of %total%" }, 9810 proto: { 9811 initGallery: function() { 9812 var c = b.st.gallery, 9813 e = ".mfp-gallery"; 9814 return b.direction = !0, c && c.enabled ? (f += " mfp-gallery", w(m + e, function() { c.navigateByImgClick && b.wrap.on("click" + e, ".mfp-img", function() { return b.items.length > 1 ? (b.next(), !1) : void 0 }), d.on("keydown" + e, function(a) { 37 === a.keyCode ? b.prev() : 39 === a.keyCode && b.next() }) }), w("UpdateStatus" + e, function(a, c) { c.text && (c.text = T(c.text, b.currItem.index, b.items.length)) }), w(l + e, function(a, d, e, f) { 9815 var g = b.items.length; 9816 e.counter = g > 1 ? T(c.tCounter, f.index, g) : "" 9817 }), w("BuildControls" + e, function() { 9818 if (b.items.length > 1 && c.arrows && !b.arrowLeft) { 9819 var d = c.arrowMarkup, 9820 e = b.arrowLeft = a(d.replace(/%title%/gi, c.tPrev).replace(/%dir%/gi, "left")).addClass(s), 9821 f = b.arrowRight = a(d.replace(/%title%/gi, c.tNext).replace(/%dir%/gi, "right")).addClass(s); 9822 e.click(function() { b.prev() }), f.click(function() { b.next() }), b.container.append(e.add(f)) 9823 } 9824 }), w(n + e, function() { b._preloadTimeout && clearTimeout(b._preloadTimeout), b._preloadTimeout = setTimeout(function() { b.preloadNearbyImages(), b._preloadTimeout = null }, 16) }), void w(h + e, function() { d.off(e), b.wrap.off("click" + e), b.arrowRight = b.arrowLeft = null })) : !1 9825 }, 9826 next: function() { b.direction = !0, b.index = S(b.index + 1), b.updateItemHTML() }, 9827 prev: function() { b.direction = !1, b.index = S(b.index - 1), b.updateItemHTML() }, 9828 goTo: function(a) { b.direction = a >= b.index, b.index = a, b.updateItemHTML() }, 9829 preloadNearbyImages: function() { 9830 var a, c = b.st.gallery.preload, 9831 d = Math.min(c[0], b.items.length), 9832 e = Math.min(c[1], b.items.length); 9833 for (a = 1; a <= (b.direction ? e : d); a++) b._preloadItem(b.index + a); 9834 for (a = 1; a <= (b.direction ? d : e); a++) b._preloadItem(b.index - a) 9835 }, 9836 _preloadItem: function(c) { 9837 if (c = S(c), !b.items[c].preloaded) { 9838 var d = b.items[c]; 9839 d.parsed || (d = b.parseEl(c)), y("LazyLoad", d), "image" === d.type && (d.img = a('<img class="mfp-img" />').on("load.mfploader", function() { d.hasSize = !0 }).on("error.mfploader", function() { d.hasSize = !0, d.loadError = !0, y("LazyLoadError", d) }).attr("src", d.src)), d.preloaded = !0 9840 } 9841 } 9842 } 9843 }); 9844 var U = "retina"; 9845 a.magnificPopup.registerModule(U, { 9846 options: { replaceSrc: function(a) { return a.src.replace(/\.\w+$/, function(a) { return "@2x" + a }) }, ratio: 1 }, 9847 proto: { 9848 initRetina: function() { 9849 if (window.devicePixelRatio > 1) { 9850 var a = b.st.retina, 9851 c = a.ratio; 9852 c = isNaN(c) ? c() : c, c > 1 && (w("ImageHasSize." + U, function(a, b) { b.img.css({ "max-width": b.img[0].naturalWi
9852dth / c, width: "100%" }) }), w("ElementParse." + U, function(b, d) { d.src = a.replaceSrc(d, c) })) 9853 } 9854 } 9855 } 9856 }), A() 9857});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.