Skip to content

Instantly share code, notes, and snippets.

@SimonEast
Created April 4, 2014 07:28
Show Gist options
  • Star 7 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save SimonEast/9969832 to your computer and use it in GitHub Desktop.
Save SimonEast/9969832 to your computer and use it in GitHub Desktop.
CloudFlare Javascript (including Rocket Loader?)
/*! CloudFlareJS-0.1.11 Tue Mar 11 2014 07:42:08
*/
! function (a, b) {
function c(a) {
if (!(this instanceof c)) return new c(a);
if (!a || !m.isElement(a)) throw new Error("A DOM element reference is required");
return this.element = a, this.tokens = a.classList, this
}
var d = {}, e = "0.1.11",
f = a.setTimeout,
g = (a.setInterval, a.clearTimeout),
h = (a.clearInterval, a.encodeURIComponent),
i = a.parseInt,
j = (String.prototype.substring, function () {
var a = b.head || b.getElementsByTagName("head")[0],
c = b.createElement("style"),
d = ".cf-hidden { display: none; } .cf-invisible { visibility: hidden; }";
return c.type = "text/css", c.styleSheet ? c.styleSheet.cssText = d : c.appendChild(b.createTextNode(d)), a.appendChild(c), c
}(), function () {
var b = "undefined" != typeof a && a.setImmediate,
c = "undefined" != typeof a && a.postMessage && a.addEventListener;
if (b) return function (b) {
return a.setImmediate(b)
};
if (c) {
var d = [];
return a.addEventListener("message", function (b) {
var c = b.source;
c !== a && null !== c || "cf-tick" !== b.data || (b.stopPropagation(), d.length > 0 && d.shift()())
}, !0),
function (b) {
d.push(b), a.postMessage("cf-tick", "*")
}
}
return function (a) {
f(a, 0)
}
}());
d.paths = {}, d.paths.cloudflare = "//ajax.cloudflare.com/cdn-cgi/nexp/", d.verbose = 0, d.debug = 0, d.disableStorage = d.byc = 0, d.actionToken = d.atok = void 0, d.expireStorageBefore = d.p = void 0;
var m = function () {
var c = {}, d = c.exports = {};
return function () {
function e(a) {
return "function" != typeof a.toString && "string" == typeof (a + "")
}
function f(a) {
a.length = 0, G.length < I && G.push(a)
}
function g(a, b) {
var c;
b || (b = 0), "undefined" == typeof c && (c = a ? a.length : 0);
var d = -1;
c = c - b || 0;
for (var e = Array(0 > c ? 0 : c); ++d < c;) e[d] = a[b + d];
return e
}
function h() {}
function i(a) {
function b() {
if (d) {
var a = g(d);
lb.apply(a, arguments)
}
if (this instanceof b) {
var f = l(c.prototype),
a = c.apply(f, a || arguments);
return u(a) ? a : f
}
return c.apply(e, a || arguments)
}
var c = a[0],
d = a[2],
e = a[4];
return wb(b, a), b
}
function j(a, b, c, d, h) {
if (c) {
var i = c(a);
if ("undefined" != typeof i) return i
}
if (!u(a)) return a;
var k = hb.call(a);
if (!W[k] || !vb.nodeClass && e(a)) return a;
var l = tb[k];
switch (k) {
case P:
case Q:
return new l(+a);
case S:
case V:
return new l(a);
case U:
return i = l(a.source, J.exec(a)), i.lastIndex = a.lastIndex, i
}
if (k = xb(a), b) {
var m = !d;
d || (d = G.pop() || []), h || (h = G.pop() || []);
for (var n = d.length; n--;)
if (d[n] == a) return h[n];
i = k ? l(a.length) : {}
} else i = k ? g(a) : Cb({}, a);
return k && (kb.call(a, "index") && (i.index = a.index), kb.call(a, "input") && (i.input = a.input)), b ? (d.push(a), h.push(i), (k ? Bb : Eb)(a, function (a, e) {
i[e] = j(a, b, c, d, h)
}), m && (f(d), f(h)), i) : i
}
function l(a) {
return u(a) ? pb(a) : {}
}
function m(a, b, c) {
if ("function" != typeof a) return D;
if ("undefined" == typeof b || !("prototype" in a)) return a;
var d = a.__bindData__;
if ("undefined" == typeof d && (vb.funcNames && (d = !a.name), d = d || !vb.funcDecomp, !d)) {
var e = jb.call(a);
vb.funcNames || (d = !K.test(e)), d || (d = L.test(e), wb(a, d))
}
if (!1 === d || !0 !== d && 1 & d[1]) return a;
switch (c) {
case 1:
return function (c) {
return a.call(b, c)
};
case 2:
return function (c, d) {
return a.call(b, c, d)
};
case 3:
return function (c, d, e) {
return a.call(b, c, d, e)
};
case 4:
return function (c, d, e, f) {
return a.call(b, c, d, e, f)
}
}
return C(a, b)
}
function n(a) {
function b() {
var a = j ? h : this;
if (e) {
var q = g(e);
lb.apply(q, arguments)
}
return (f || m) && (q || (q = g(arguments)), f && lb.apply(q, f), m && q.length < i) ? (d |= 16, n([c, o ? d : -4 & d, q, null, h, i])) : (q || (q = arguments), k && (c = a[p]), this instanceof b ? (a = l(c.prototype), q = c.apply(a, q), u(q) ? q : a) : c.apply(a, q))
}
var c = a[0],
d = a[1],
e = a[2],
f = a[3],
h = a[4],
i = a[5],
j = 1 & d,
k = 2 & d,
m = 4 & d,
o = 8 & d,
p = c;
return wb(b, a), b
}
function o(a, b, c, d, g, h) {
if (c) {
var i = c(a, b);
if ("undefined" != typeof i) return !!i
}
if (a === b) return 0 !== a || 1 / a == 1 / b;
if (a === a && !(a && Z[typeof a] || b && Z[typeof b])) return !1;
if (null == a || null == b) return a === b;
var j = hb.call(a),
k = hb.call(b);
if (j == N && (j = T), k == N && (k = T), j != k) return !1;
switch (j) {
case P:
case Q:
return +a == +b;
case S:
return a != +a ? b != +b : 0 == a ? 1 / a == 1 / b : a == +b;
case U:
case V:
return a == b + ""
}
if (k = j == O, !k) {
var l = kb.call(a, "__wrapped__"),
m = kb.call(b, "__wrapped__");
if (l || m) return o(l ? a.__wrapped__ : a, m ? b.__wrapped__ : b, c, d, g, h);
if (j != T || !vb.nodeClass && (e(a) || e(b))) return !1;
if (j = !vb.argsObject && s(a) ? Object : a.constructor, l = !vb.argsObject && s(b) ? Object : b.constructor, j != l && !(t(j) && j instanceof j && t(l) && l instanceof l) && "constructor" in a && "constructor" in b) return !1
}
for (j = !g, g || (g = G.pop() || []), h || (h = G.pop() || []), l = g.length; l--;)
if (g[l] == a) return h[l] == b;
var n = 0,
i = !0;
if (g.push(a), h.push(b), k) {
if (l = a.length, n = b.length, (i = n == l) || d)
for (; n--;)
if (k = l, m = b[n], d)
for (; k-- && !(i = o(a[k], m, c, d, g, h)););
else if (!(i = o(a[n], m, c, d, g, h))) break
} else Db(b, function (b, e, f) {
return kb.call(f, e) ? (n++, i = kb.call(a, e) && o(a[e], b, c, d, g, h)) : void 0
}), i && !d && Db(a, function (a, b, c) {
return kb.call(c, b) ? i = -1 < --n : void 0
});
return g.pop(), h.pop(), j && (f(g), f(h)), i
}
function p(a, b, c, d, e, f) {
var h = 1 & b,
j = 4 & b,
k = 16 & b,
l = 32 & b;
if (!(2 & b || t(a))) throw new TypeError;
k && !c.length && (b &= -17, k = c = !1), l && !d.length && (b &= -33, l = d = !1);
var m = a && a.__bindData__;
return m && !0 !== m ? (m = g(m), m[2] && (m[2] = g(m[2])), m[3] && (m[3] = g(m[3])), !h || 1 & m[1] || (m[4] = e), !h && 1 & m[1] && (b |= 8), !j || 4 & m[1] || (m[5] = f), k && lb.apply(m[2] || (m[2] = []), c), l && nb.apply(m[3] || (m[3] = []), d), m[1] |= b, p.apply(null, m)) : (1 == b || 17 === b ? i : n)([a, b, c, d, e, f])
}
function q() {
Y.h = M, Y.b = Y.c = Y.g = Y.i = "", Y.e = "t", Y.j = !0;
for (var a, b = 0; a = arguments[b]; b++)
for (var c in a) Y[c] = a[c];
b = Y.a, Y.d = /^[^,]+/.exec(b)[0], a = Function, b = "return function(" + b + "){", c = Y;
var d = "var n,t=" + c.d + ",E=" + c.e + ";if(!t)return E;" + c.i + ";";
c.b ? (d += "var u=t.length;n=-1;if(" + c.b + "){", vb.unindexedChars && (d += "if(s(t)){t=t.split('')}"), d += "while(++n<u){" + c.g + ";}}else{") : vb.nonEnumArgs && (d += "var u=t.length;n=-1;if(u&&p(t)){while(++n<u){n+='';" + c.g + ";}}else{"), vb.enumPrototypes && (d += "var G=typeof t=='function';"), vb.enumErrorProps && (d += "var F=t===k||t instanceof Error;");
var e = [];
if (vb.enumPrototypes && e.push('!(G&&n=="prototype")'), vb.enumErrorProps && e.push('!(F&&(n=="message"||n=="name"))'), c.j && c.f) d += "var C=-1,D=B[typeof t]&&v(t),u=D?D.length:0;while(++C<u){n=D[C];", e.length && (d += "if(" + e.join("&&") + "){"), d += c.g + ";", e.length && (d += "}"), d += "}";
else if (d += "for(n in t){", c.j && e.push("m.call(t, n)"), e.length && (d += "if(" + e.join("&&") + "){"), d += c.g + ";", e.length && (d += "}"), d += "}", vb.nonEnumShadows) {
for (d += "if(t!==A){var i=t.constructor,r=t===(i&&i.prototype),f=t===J?I:t===k?j:L.call(t),x=y[f];", k = 0; 7 > k; k++) d += "n='" + c.h[k] + "';if((!(r&&x[n])&&m.call(t,n))", c.j || (d += "||(!x[n]&&t[n]!==A[n])"), d += "){" + c.g + "}";
d += "}"
}
return (c.b || vb.nonEnumArgs) && (d += "}"), d += c.c + ";return E", a("d,j,k,m,o,p,q,s,v,A,B,y,I,J,L", b + d + "}")(m, R, eb, kb, H, s, xb, v, Y.f, fb, Z, ub, V, gb, hb)
}
function r(a) {
return "function" == typeof a && ib.test(a)
}
function s(a) {
return a && "object" == typeof a && "number" == typeof a.length && hb.call(a) == N || !1
}
function t(a) {
return "function" == typeof a
}
function u(a) {
return !(!a || !Z[typeof a])
}
function v(a) {
return "string" == typeof a || a && "object" == typeof a && hb.call(a) == V || !1
}
function w(a) {
for (var b = -1, c = zb(a), d = c.length, e = Array(d); ++b < d;) e[b] = a[c[b]];
return e
}
function x(a, b, c) {
var d = [];
if (b = h.createCallback(b, c, 3), xb(a)) {
c = -1;
for (var e = a.length; ++c < e;) {
var f = a[c];
b(f, c, a) && d.push(f)
}
} else Bb(a, function (a, c, e) {
b(a, c, e) && d.push(a)
});
return d
}
function y(a, b, c) {
if (b = h.createCallback(b, c, 3), !xb(a)) {
var d;
return Bb(a, function (a, c, e) {
return b(a, c, e) ? (d = a, !1) : void 0
}), d
}
c = -1;
for (var e = a.length; ++c < e;) {
var f = a[c];
if (b(f, c, a)) return f
}
}
function z(a, b, c) {
if (b && "undefined" == typeof c && xb(a)) {
c = -1;
for (var d = a.length; ++c < d && !1 !== b(a[c], c, a););
} else Bb(a, b, c);
return a
}
function A(a, b, c) {
var d = -1,
e = a ? a.length : 0,
f = Array("number" == typeof e ? e : 0);
if (b = h.createCallback(b, c, 3), xb(a))
for (; ++d < e;) f[d] = b(a[d], d, a);
else Bb(a, function (a, c, e) {
f[++d] = b(a, c, e)
});
return f
}
function B(a, b, c, d) {
var e = 0,
f = a ? a.length : e;
for (c = c ? h.createCallback(c, d, 1) : D, b = c(b); f > e;) d = e + f >>> 1, c(a[d]) < b ? e = d + 1 : f = d;
return e
}
function C(a, b) {
return 2 < arguments.length ? p(a, 17, g(arguments, 2), null, b) : p(a, 1, null, null, b)
}
function D(a) {
return a
}
function E() {}
function F(a) {
return function (b) {
return b[a]
}
}
var G = [],
H = {}, I = 40,
J = /\w*$/,
K = /^\s*function[ \n\r\t]+\w/,
L = /\bthis\b/,
M = "constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" "),
N = "[object Arguments]",
O = "[object Array]",
P = "[object Boolean]",
Q = "[object Date]",
R = "[object Error]",
S = "[object Number]",
T = "[object Object]",
U = "[object RegExp]",
V = "[object String]",
W = {
"[object Function]": !1
};
W[N] = W[O] = W[P] = W[Q] = W[S] = W[T] = W[U] = W[V] = !0;
var X = {
configurable: !1,
enumerable: !1,
value: null,
writable: !1
}, Y = {
a: "",
b: null,
c: "",
d: "",
e: "",
v: null,
g: "",
h: null,
support: null,
i: "",
j: !1
}, Z = {
"boolean": !1,
"function": !0,
object: !0,
number: !1,
string: !1,
undefined: !1
}, $ = Z[typeof a] && a || this,
_ = Z[typeof d] && d && !d.nodeType && d,
ab = Z[typeof c] && c && !c.nodeType && c,
bb = ab && ab.exports === _ && _,
cb = Z[typeof global] && global;
!cb || cb.global !== cb && cb.window !== cb || ($ = cb);
var db = [],
eb = Error.prototype,
fb = Object.prototype,
gb = String.prototype,
hb = fb.toString,
ib = RegExp("^" + (hb + "").replace(/[.*+?^${}()|[\]\\]/g, "\\$&").replace(/toString| for [^\]]+/g, ".*?") + "$"),
jb = Function.prototype.toString,
kb = fb.hasOwnProperty,
lb = db.push,
mb = fb.propertyIsEnumerable,
nb = db.unshift,
ob = function () {
try {
var a = {}, b = r(b = Object.defineProperty) && b,
c = b(a, a, a) && b
} catch (d) {}
return c
}(),
pb = r(pb = Object.create) && pb,
qb = r(qb = Array.isArray) && qb,
rb = r(rb = Object.keys) && rb,
sb = Math.max,
tb = {};
tb[O] = Array, tb[P] = Boolean, tb[Q] = Date, tb["[object Function]"] = Function, tb[T] = Object, tb[S] = Number, tb[U] = RegExp, tb[V] = String;
var ub = {};
ub[O] = ub[Q] = ub[S] = {
constructor: !0,
toLocaleString: !0,
toString: !0,
valueOf: !0
}, ub[P] = ub[V] = {
constructor: !0,
toString: !0,
valueOf: !0
}, ub[R] = ub["[object Function]"] = ub[U] = {
constructor: !0,
toString: !0
}, ub[T] = {
constructor: !0
},
function () {
for (var a = M.length; a--;) {
var b, c = M[a];
for (b in ub) kb.call(ub, b) && !kb.call(ub[b], c) && (ub[b][c] = !1)
}
}();
var vb = h.support = {};
! function () {
function a() {
this.x = 1
}
var c = {
0: 1,
length: 1
}, d = [];
a.prototype = {
valueOf: 1,
y: 1
};
for (var e in new a) d.push(e);
for (e in arguments);
vb.argsClass = hb.call(arguments) == N, vb.argsObject = arguments.constructor == Object && !(arguments instanceof Array), vb.enumErrorProps = mb.call(eb, "message") || mb.call(eb, "name"), vb.enumPrototypes = mb.call(a, "prototype"), vb.funcDecomp = !r($.k) && L.test(function () {
return this
}), vb.funcNames = "string" == typeof Function.name, vb.nonEnumArgs = 0 != e, vb.nonEnumShadows = !/valueOf/.test(d), vb.spliceObjects = (db.splice.call(c, 0, 1), !c[0]), vb.unindexedChars = "xx" != "x" [0] + Object("x")[0];
try {
vb.nodeClass = !(hb.call(b) == T && !({
toString: 0
} + ""))
} catch (f) {
vb.nodeClass = !0
}
}(1), pb || (l = function () {
function a() {}
return function (b) {
if (u(b)) {
a.prototype = b;
var c = new a;
a.prototype = null
}
return c || $.Object()
}
}());
var wb = ob ? function (a, b) {
X.value = b, ob(a, "__bindData__", X)
} : E;
vb.argsClass || (s = function (a) {
return a && "object" == typeof a && "number" == typeof a.length && kb.call(a, "callee") && !mb.call(a, "callee") || !1
});
var xb = qb || function (a) {
return a && "object" == typeof a && "number" == typeof a.length && hb.call(a) == O || !1
}, yb = q({
a: "z",
e: "[]",
i: "if(!(B[typeof z]))return E",
g: "E.push(n)"
}),
zb = rb ? function (a) {
return u(a) ? vb.enumPrototypes && "function" == typeof a || vb.nonEnumArgs && a.length && s(a) ? yb(a) : rb(a) : []
} : yb,
cb = {
a: "g,e,K",
i: "e=e&&typeof K=='undefined'?e:d(e,K,3)",
b: "typeof u=='number'",
v: zb,
g: "if(e(t[n],n,g)===false)return E"
}, qb = {
a: "z,H,l",
i: "var a=arguments,b=0,c=typeof l=='number'?2:a.length;while(++b<c){t=a[b];if(t&&B[typeof t]){",
v: zb,
g: "if(typeof E[n]=='undefined')E[n]=t[n]",
c: "}}"
}, Ab = {
i: "if(!B[typeof t])return E;" + cb.i,
b: !1
}, Bb = q(cb),
Cb = q(qb, {
i: qb.i.replace(";", ";if(c>3&&typeof a[c-2]=='function'){var e=d(a[--c-1],a[c--],2)}else if(c>2&&typeof a[c-1]=='function'){e=a[--c]}"),
g: "E[n]=e?e(E[n],t[n]):t[n]"
}),
Db = q(cb, Ab, {
j: !1
}),
Eb = q(cb, Ab);
t(/x/) && (t = function (a) {
return "function" == typeof a && "[object Function]" == hb.call(a)
}), h.assign = Cb, h.bind = C, h.createCallback = function (a, b, c) {
var d = typeof a;
if (null == a || "function" == d) return m(a, b, c);
if ("object" != d) return F(a);
var e = zb(a),
f = e[0],
g = a[f];
return 1 != e.length || g !== g || u(g) ? function (b) {
for (var c = e.length, d = !1; c-- && (d = o(b[e[c]], a[e[c]], null, !0)););
return d
} : function (a) {
return a = a[f], g === a && (0 !== g || 1 / g == 1 / a)
}
}, h.filter = x, h.forEach = z, h.forIn = Db, h.forOwn = Eb, h.keys = zb, h.map = A, h.property = F, h.toArray = function (a) {
return a && "number" == typeof a.length ? vb.unindexedChars && v(a) ? a.split("") : g(a) : w(a)
}, h.values = w, h.collect = A, h.each = z, h.extend = Cb, h.select = x, h.clone = function (a, b, c, d) {
return "boolean" != typeof b && null != b && (d = c, c = b, b = !1), j(a, b, "function" == typeof c && m(c, d, 1))
}, h.find = y, h.findKey = function (a, b, c) {
var d;
return b = h.createCallback(b, c, 3), Eb(a, function (a, c, e) {
return b(a, c, e) ? (d = c, !1) : void 0
}), d
}, h.identity = D, h.indexOf = function (a, b, c) {
if ("number" == typeof c) {
var d = a ? a.length : 0;
c = 0 > c ? sb(0, d + c) : c || 0
} else if (c) return c = B(a, b), a[c] === b ? c : -1;
a: {
for (c = (c || 0) - 1, d = a ? a.length : 0; ++c < d;)
if (a[c] === b) {
a = c;
break a
}
a = -1
}
return a
}, h.isArguments = s, h.isArray = xb, h.isElement = function (a) {
return a && 1 === a.nodeType || !1
}, h.isFunction = t, h.isObject = u, h.isString = v, h.noop = E, h.sortedIndex = B, h.detect = y, h.findWhere = y, h.VERSION = "2.4.1", _ && ab && bb && ((ab.exports = h)._ = h)
}.call(this), c.exports
}(),
n = function (a, b, c, d) {
return d ? m.forIn(a, b, c) : m.forEach(a, b, c)
}, o = m.filter,
p = m.map,
q = m.extend,
r = m.find,
s = m.indexOf,
t = m.keys,
u = m.values,
v = function (a, b) {
var c;
for (c = 0, l = a.length; l > c; c++)
if (-1 !== s(b, a[c])) return a[c];
return null
}, w = {};
w.log = function (a, b) {
var c = {};
c.message = a, c.category = b, w.history.push(c)
}, w.replay = function () {
var a = arguments.length ? "number" != typeof arguments[0] ? arguments[0] : w.filter.apply(this, arguments) : w.history;
n(a, function (a) {
f(function () {
var b = a.message,
c = a.category;
try {
c & z ? H(b, c, !1) : a.category & y ? I(b, c, !1) : a.category & A ? K(b.expression, b.message, c, !1) : a.category & B ? H(b.stack, c, !1) : G(b, c, !1)
} catch (d) {}
}, 0)
})
}, w.step = function (a) {
var b = w.step.position || 0;
a = Math.max(a, 0) || 10, w.replay(w.history.slice(b, Math.min(b + a, w.history.length))), w.step.position = b + a < w.history.length ? b + a : 0
}, w.history = [], w.filter = function () {
var a = Array.prototype.slice.call(arguments);
return o(w.history, function (b) {
var c = !1;
return b.category && n(a, function (a) {
return !(c = b.category & a)
}), c
})
};
var x = 1,
y = 2,
z = 4,
A = 8,
B = 16,
C = 32,
D = 64,
E = 128,
F = 256,
G = function (a, b, c) {
if (d.verbose) {
try {
console.log("[ CLOUDFLARE ] " + a)
} catch (e) {}
c !== !1 && w.log(a, b | x)
}
}, H = function (a, b, c) {
if (d.verbose) {
try {
console.error("[ CLOUDFLARE ] " + a)
} catch (e) {
G(a, b | z, !1)
}
c !== !1 && w.log(a, b | z)
}
}, I = function (a, b, c) {
if (d.verbose) {
try {
console.info(a)
} catch (e) {
G(a, b | y, !1)
}
c !== !1 && w.log(a, b | y)
}
}, J = function (a, b, c) {
if (d.verbose) {
try {
console.trace()
} catch (e) {
"undefined" != typeof stackTrace ? stackTrace(H, a) : H(a, b | B, !1)
}
c !== !1 && w.log(a, b | B)
}
}, K = function (a, b, c, d) {
try {
console.assert(a, b)
} catch (e) {
H("Assertion failure: " + b, c | A, !1)
}
d !== !1 && w.log({
expression: a,
message: b
}, c | A)
}, L = function (a, c, d) {
if (d) {
var e = new Date;
e.setDate(e.getDate() + d)
}
b.cookie = a + "=" + escape(c) + (d ? ";expires=" + e.toUTCString() : "")
}, M = function (a) {
a = a.replace(/([.*+?^=!:${}()|[\]\/\\])/g, "\\$1");
var c = new RegExp("(?:^|;)\\s?" + a + "=(.*?)(?:;|$)", "i"),
d = b.cookie.match(c);
return d && unescape(d[1])
}, N = function () {
var b, c = {};
try {
b = a.localStorage
} catch (f) {}
"undefined" == typeof b && (b = function () {
var a = [],
b = {}, c = {};
return c.getItem = function (c) {
return c in b ? a[b[c]].value : void 0
}, c.setItem = function (d, e) {
storable = {}, storable.key = d, storable.value = e, d in b ? a[b[d]] = storable : b[d] = (c.length = a.push(storable)) - 1
}, c.removeItem = function (d) {
d in b && a.splice(b[d], 1), c.length = a.length
}, c.clear = function () {
a = [], b = {}, c.length = 0
}, c.toString = function () {
return "[object FakeStorage]"
}, c.key = function (b) {
return a[b].key
}, c.each = function (a) {
return n(b, a)
}, c.length = 0, c
}());
var g = function (a, d) {
var e;
try {
e = b[a].apply(b, d)
} catch (f) {
c.purge();
try {
e = b[a].apply(b, d)
} catch (f) {
H("Storage is full and purging did not free up enough space.")
}
}
return e
};
return n(["key", "getItem", "setItem", "removeItem", "clear", "toString"], function (a) {
c[a] = function () {
return g(a, arguments)
}
}), c.each = function (a) {
var c;
if ("function" == typeof b.each) return b.each(a);
if (b.length)
for (var d = 0; d < b.length; d++) c = b.key(d), a(c, d)
}, c.purge = function () {
var b = d.p,
f = +new Date;
c.each(function (d) {
var g = !1;
if (/^CLOUDFLARE\:\:/.test(d) && "JSON" in a) {
try {
var h = JSON.parse(c.getItem(d))
} catch (i) {
G("Purging corrupted entity from cache: " + d), g = !0
}
h && (b && h.stime <= b || h.version !== e ? (G("Purging outdated entity from cache: " + d), g = !0) : h.ctime + h.ttl < f && (G("Purging cache-expired entity from cache: " + d), g = !0));
try {
g && c.removeItem(d)
} catch (i) {}
}
})
}, c
}();
N.purge();
var O = function (a) {
"use strict";
function b(a) {
return a
}
function c() {
var b, e = [],
f = F(c.prototype),
g = F(d.prototype);
g.promiseSend = function () {
var c = J.call(arguments);
e ? e.push(c) : a(function () {
b.promiseSend.apply(b, c)
})
}, g.valueOf = function () {
return e ? g : b.valueOf()
};
var h = function (c) {
return e ? (b = k(c), H.call(e, function (c, d) {
a(function () {
b.promiseSend.apply(b, d)
})
}, void 0), e = void 0, b) : void 0
};
return f.promise = E(g), f.resolve = h, f.reject = function (a) {
return h(j(a))
}, f
}
function d(a, c, e) {
void 0 === c && (c = function (a) {
return j("Promise does not support operation: " + a)
});
var f = F(d.prototype);
return f.promiseSend = function (d, e) {
var f, g = J.call(arguments, 2);
try {
f = a[d] ? a[d].apply(a, g) : c.apply(a, [d].concat(g))
} catch (h) {
f = j(h)
}
return (e || b)(f)
}, e && (f.valueOf = e), E(f)
}
function e(a) {
return a && "function" == typeof a.promiseSend
}
function g(a) {
return !e(K(a))
}
function h(a) {
return !e(K(a)) && !i(a)
}
function i(a) {
return a = K(a), void 0 === a || null === a ? !1 : !! a.promiseRejected
}
function j(a) {
var b = {};
return b.when = function (b) {
return b ? b(a) : j(a)
}, d(b, function () {
return j(a)
}, function () {
var b = F(j.prototype);
return b.promiseRejected = !0, b.reason = a, b
})
}
function k(a) {
if (e(a)) return a;
if (a && "function" == typeof a.then) {
var b = c();
return a.then(b.resolve, b.reject), b.promise
}
var f = {};
return f.when = function () {
return a
}, f.get = function (b) {
return a[b]
}, f.put = function (b, c) {
return a[b] = c
}, f.del = function (b) {
return delete a[b]
}, f.post = function (b, c) {
return a[b].apply(a, c)
}, f.apply = function (b, c) {
return a.apply(b, c)
}, f.viewInfo = function () {
for (var b = a, c = {}, d = {}; b;) Object.getOwnPropertyNames(b).forEach(function (a) {
c[a] || (c[a] = typeof b[a])
}), b = Object.getPrototypeOf(b);
return d.type = typeof a, d.properties = c, d
}, f.keys = function () {
return G(a)
}, d(f, void 0, function () {
return a
})
}
function l(a, b) {
if (a = k(a), b) {
var c = {};
return c.viewInfo = function () {
return b
}, d(c, function () {
var b = J.call(arguments);
return q.apply(void 0, [a].concat(b))
}, function () {
return K(a)
})
}
return q(a, "viewInfo")
}
function m(b, d, e) {
function f(a) {
try {
return d ? d(a) : a
} catch (b) {
return j(b)
}
}
function g(a) {
try {
return e ? e(a) : j(a)
} catch (b) {
return j(b)
}
}
var h = c(),
i = !1;
return a(function () {
k(b).promiseSend("when", function (a) {
i || (i = !0, h.resolve(k(a).promiseSend("when", f, g)))
}, function (a) {
i || (i = !0, h.resolve(g(a)))
})
}), h.promise
}
function n(a, b, c) {
return m(a, function (a) {
return b.apply(void 0, a)
}, c)
}
function o(a) {
return function () {
var b = function (a, b) {
var f;
try {
f = c[a](b)
} catch (g) {
return I(g) ? g.value : j(g)
}
return m(f, d, e)
}, c = a.apply(this, arguments),
d = b.bind(b, "send"),
e = b.bind(b, "throw");
return d()
}
}
function p(a) {
return function (b) {
var c = J.call(arguments, 1);
return q.apply(void 0, [b, a].concat(c))
}
}
function q(b, d) {
var e = c(),
f = J.call(arguments, 2);
return b = k(b), a(function () {
b.promiseSend.apply(b, [d, e.resolve].concat(f))
}), e.promise
}
function r(a) {
return m(a, function (a) {
var b = a.length;
if (0 === b) return k(u);
var d = c();
return H.call(a, function (c, e, f) {
m(e, function (c) {
a[f] = c, 0 === --b && d.resolve(a)
}).fail(d.reject)
}, void 0), d.promise
})
}
function s(a, b) {
return m(a, void 0, b)
}
function t(a, b) {
return m(a, function (a) {
return m(b(), function () {
return a
})
}, function (a) {
return m(b(), function () {
return j(a)
})
})
}
function v(b) {
m(b, void 0, function (b) {
a(function () {
throw b
})
})
}
function w(a, b) {
var d = c();
return m(a, d.resolve, d.reject), f(function () {
d.reject("Timed out")
}, b), d.promise
}
function x(a, b) {
arguments.length < 2 && (b = a, a = void 0);
var d = c();
return f(function () {
d.resolve(a)
}, b), d.promise
}
function y(a) {
return function () {
var b = c();
return J.call(arguments), O(a, this, b).fail(b.reject), b.promise
}
}
function z(a) {
var b = J.call(arguments, 1);
return y(a).apply(void 0, b)
}
function A(a) {
if (arguments.length > 1) {
var b = Array.prototype.slice.call(arguments, 1);
a = a.bind.apply(a, b)
}
return function () {
var b = c(),
d = J.call(arguments);
return d.push(b.node()), N(a, this, d).fail(b.reject), b.promise
}
}
function B(a, b) {
var c = J.call(arguments, 2);
return A(a).apply(b, c)
}
var C = {}, D = function (a, b, c) {
return a[b] || (a[b] = c), a[b]
}, E = D(Object, "freeze", b),
F = D(Object, "create", function (a) {
var b = function () {};
return b.prototype = a, new b
}),
G = D(Object, "keys", function (a) {
var b = [];
for (var c in a) b.push(c);
return b
}),
H = Array.prototype.reduce || function (a, b) {
var c = 0,
d = this.length;
if (1 == arguments.length)
for (;;) {
if (c in this) {
b = this[c++];
break
}
if (++c >= d) throw new TypeError
}
for (; d > c; c++) c in this && (b = a(b, this[c], c));
return b
}, I = function (a) {
return "[object StopIteration]" === Object.prototype.toString.call(a)
}, J = Array.prototype.slice,
K = function (a) {
return void 0 === a || null === a ? a : a.valueOf()
};
C.nextTick = a, C.defer = c, c.prototype.node = function () {
var a = this;
return function (b, c) {
b ? a.reject(b) : arguments.length > 2 ? a.resolve(Array.prototype.slice.call(arguments, 1)) : a.resolve(c)
}
}, C.makePromise = d, d.prototype.then = function (a, b) {
return m(this, a, b)
}, H.call(["when", "spread", "send", "get", "put", "del", "post", "invoke", "keys", "apply", "call", "all", "wait", "join", "fail", "fin", "view", "viewInfo", "timeout", "delay", "end"], function (a, b) {
d.prototype[b] = function () {
return C[b].apply(C, [this].concat(J.call(arguments)))
}
}, void 0), d.prototype.toSource = function () {
return this.toString()
}, d.prototype.toString = function () {
return "[object Promise]"
}, E(d.prototype), C.isPromise = e, C.isResolved = g, C.isFulfilled = h, C.isRejected = i, C.reject = j;
var L = {};
L.constructor = {}, L.constructor.value = j, j.prototype = F(d.prototype, L), C.ref = k, C.master = function (a) {
var b = {};
return b.isDef = function () {}, d(b, function () {
var b = J.call(arguments);
return q.apply(void 0, [a].concat(b))
}, function () {
return K(a)
})
}, C.viewInfo = l, C.view = function (a) {
return l(a).when(function (b) {
var c;
c = "function" === b.type ? function () {
return N(a, void 0, arguments)
} : {};
var d = b.properties || {};
return Object.keys(d).forEach(function (b) {
"function" === d[b] && (c[b] = function () {
return M(a, b, arguments)
})
}), k(c)
})
}, C.when = m, C.spread = n, C.async = o, C.Method = p, C.send = q, C.get = p("get"), C.put = p("put"), C.del = p("del");
var M = C.post = p("post");
C.invoke = function (a, b) {
var c = J.call(arguments, 2);
return M(a, b, c)
};
var N = C.apply = p("apply"),
O = C.call = function (a, b) {
var c = J.call(arguments, 2);
return N(a, b, c)
};
return C.keys = p("keys"), C.all = r, C.wait = function () {
return r(arguments).get(0)
}, C.join = function () {
var a = J.call(arguments),
b = a.pop();
return r(a).spread(b)
}, C.fail = s, C.fin = t, C.end = v, C.timeout = w, C.delay = x, C.wrap = y, C.wcall = z, C.node = A, C.ncall = B, C
}, P = function () {
"use strict";
function b() {
for (; u.n;) {
u = u.n;
var a = u.f;
u.f = null, a()
}
w = !1
}
function c(a) {
return "object" === a || "function" === a
}
function d(a, b) {
for (var c = 0, d = a.length; d > c; ++c) c in a && b(a[c], c)
}
function e(a) {
try {
if (!h.onerror) throw a;
h.onerror(a)
} catch (b) {
f(function () {
throw b
}, 0)
}
}
function h(a) {
return a instanceof n ? a : k(new n, a)
}
function i(a, b, c) {
return a._state ? a : (a._state = b, a._value = c, a._pending.length > 0 && d(a._pending, A), a._pending = null, a)
}
function j(a, b) {
a._pending.push(b)
}
function k(a, b) {
return a._state ? a : (b instanceof n ? b === a ? i(a, D, new TypeError("You can't resolve a promise with itself")) : b._state ? i(a, b._state, b._value) : j(b, function () {
i(a, b._state, b._value)
}) : b !== Object(b) ? i(a, C, b) : A(function () {
var c = l(a);
try {
var d = b.then;
"function" == typeof d ? y.call(d, b, c.resolve, c.reject) : i(a, C, b)
} catch (e) {
c.reject(e)
}
}), a)
}
function l(a) {
var b = !1;
return {
promise: a,
resolve: function (c) {
b || (b = !0, k(a, c))
},
reject: function (c) {
b || (b = !0, i(a, D, c))
}
}
}
function m() {
return l(new n)
}
function n() {
this._state = 0, this._value = void 0, this._pending = []
}
function o(a) {
function b(b) {
return a(b, [])
}
function c(a) {
return h(a).then(b)
}
return c._ = a, c
}
function p(a, b) {
var c = 0,
e = new n;
return d(a, function (a, d) {
var f = h(a);
f._state === B ? (++c, j(f, function () {
b[d] = f.inspect(), 0 === --c && i(e, C, b)
})) : b[d] = f.inspect()
}), 0 === c && i(e, C, b), e
}
function q(a, b) {
var c = 0,
e = m();
return d(a, function (a, d) {
var f = h(a);
f._state === C ? b[d] = f._value : (++c, f.then(function (a) {
b[d] = a, 0 === --c && e.resolve(b)
}, e.reject))
}), 0 === c && e.resolve(b), e.promise
}
function r(a) {
function b(b) {
return z.apply(a, b)
}
return function () {
var a = q(arguments, []);
return q([this, a], []).then(b)
}
}
var s, t, u = {
f: null,
n: null
}, v = u,
w = !1,
x = c(typeof a) && a || c(typeof worker) && worker,
y = c.call,
z = c.apply,
A = function (a) {
v = v.n = {
f: a,
n: null
}, w || (w = !0, t(b, 0))
};
c(typeof process) && process && process.nextTick ? t = process.nextTick : c(typeof setImmediate) ? t = x ? function (a) {
x.setImmediate(a)
} : function (a) {
setImmediate(a)
} : c(typeof MessageChannel) ? (s = new MessageChannel, s.port1.onmessage = b, t = function () {
s.port2.postMessage(0)
}) : (t = f, x && c(typeof Image) && Image && ! function () {
var a = 0,
b = function (a) {
var b = new Image;
b.onerror = a, b.src = "data:image/png,"
};
try {
b(function () {
0 === --a && (t = b)
}), ++a
} catch (c) {}
a && f(function () {
a = 0
}, 0)
}());
var B = 0,
C = 1,
D = 2;
return h.defer = m, n.prototype.then = function (a, b) {
function c() {
var a, b = f._state === C ? d : e;
if (null !== b) {
try {
a = b(f._value)
} catch (c) {
return i(g, D, c), void 0
}
k(g, a)
} else i(g, f._state, f._value)
}
var d = "function" == typeof a ? a : null,
e = "function" == typeof b ? b : null,
f = this,
g = new n;
return f._state === B ? j(f, c) : A(c), g
}, n.prototype.done = function (a, b) {
var c = this;
(a || b) && (c = c.then(a, b)), c.then(null, e)
}, n.prototype.fail = function (a) {
return this.then(null, a)
}, n.prototype.spread = function (a, b) {
return this.then(a && function (c) {
return q(c, []).then(function (b) {
return z.call(a, void 0, b)
}, b)
}, b)
}, n.prototype.timeout = function (a, b) {
var c = this,
d = new n;
if (c._state !== B) i(d, c._state, c._value);
else {
var e = f(function () {
i(d, D, new Error(b || "Timed out after " + a + " ms"))
}, a);
j(c, function () {
g(e), i(d, c._state, c._value)
})
}
return d
}, n.prototype.delay = function (a) {
var b = m();
return this.then(function (c) {
f(function () {
b.resolve(c)
}, a)
}, b.reject), b.promise
}, n.prototype.inspect = function () {
switch (this._state) {
case B:
return {
state: "pending"
};
case C:
return {
state: "fulfilled",
value: this._value
};
case D:
return {
state: "rejected",
reason: this._value
};
default:
throw new TypeError("invalid state")
}
}, h.allSettled = o(p), h.all = o(q), h.promised = r, h.onerror = null, h.nextTick = function (a) {
A(function () {
try {
a()
} catch (b) {
f(function () {
throw b
}, 0)
}
})
}, h
}(),
Q = !1,
R = O(function (a) {
Q ? a() : j(a)
}),
S = R.ref,
T = (R.reject, R.isPromise, R.when),
U = R.defer,
V = (R.ref, R.isRejected),
W = R.isResolved,
X = a.navigator.userAgent,
Y = Number((X.match(/Firefox\/([0-9]+\.[0-9]+)/) || [0, 0])[1]) || void 0,
Z = Number((X.match(/Chrome\/([0-9]+\.[0-9]+)/) || [0, 0])[1]) || void 0,
$ = Number((X.match(/Version\/([0-9]+\.[0-9]+)(?:\.[0-9]+)?\sSafari\//) || [0, 0])[1]) || void 0,
_ = Number((X.match(/Opera\/.*\sVersion\/([0-9]+\.[0-9]+)|Opera\/([0-9]+\.[0-9]+)/) || []).slice(1).join("")) || void 0,
ab = Number(X.match(/(iPad|iPhone|iPod)(?:\sSimulator)?;[\s\w;]*?CPU/) && (X.match(/U; CPU i?OS ([0-9]+_[0-9]+)/) || ["", "1_0"])[1].replace("_", ".")) || void 0,
bb = Number((X.match(/Android ([0-9]+\.[0-9])/) || [])[1]) || void 0,
cb = -1 !== X.indexOf("AppleWebKit") || void 0,
db = -1 !== X.indexOf("Macintosh") || void 0,
eb = -1 !== X.indexOf("Windows") || void 0,
fb = Number((navigator.userAgent.match(/MSIE ([\w.]+)/) || [])[1]) || void 0,
gb = function () {
try {
return !!b.createElement.call
} catch (a) {
return !1
}
}, hb = function () {
try {
return !!b.write.call
} catch (a) {
return !1
}
}, ib = function () {
try {
return !(!a.attachEvent || !a.attachEvent.call)
} catch (b) {
return !1
}
}, jb = function () {
try {
return !!a.addEventListener
} catch (b) {
return !1
}
}, kb = function () {
try {
return !(!Object.defineProperty || !Object.getOwnPropertyDescriptor)
} catch (a) {
return !1
}
}, lb = function () {
try {
return !(!b.__defineSetter__ || !b.__defineGetter__)
} catch (a) {
return !1
}
}, mb = function () {
try {
return "undefined" != typeof b.createElement("span").textContent
} catch (a) {
return !1
}
}, nb = function () {
try {} catch (a) {
return !1
}
}, ob = function (a, b) {
return a ? 8 > fb && "style" === b ? a.style.cssText : "getAttribute" in a ? a.getAttribute(b) : a.attributes[b] : void 0
}, pb = function (a, b, c) {
a && (8 > fb && "style" === b ? a.style.cssText = c : "setAttribute" in a ? a.setAttribute(b, c) : a.attributes[b] = c)
}, qb = function (a, b) {
a && (8 > fb && "style" === b ? a.style.cssText = "" : "removeAttribute" in a ? a.removeAttribute(b) : delete a.attributes[b])
}, rb = function (a, b) {
return a ? "dataset" in a ? a.dataset[b] : ob(a, "data-" + b) : void 0
}, sb = function (a, b, c) {
a && ("dataset" in a ? a.dataset[b] = c : pb(a, "data-" + b, c))
}, tb = function (a, b) {
a && ("dataset" in a ? delete a.dataset[b] : qb(a, "data-" + b))
}, ub = function (a, b, c, d) {
jb() ? a.addEventListener(b, c, d) : a.attachEvent("on" + b, c)
}, vb = function (a, b, c, d) {
jb() ? a.removeEventListener(b, c, d) : a.detachEvent("on" + b, c)
}, wb = function () {
var a = b.createElement;
return function (c) {
return gb() ? a.apply(b, arguments) : a(c)
}
}(),
xb = function (a) {
return mb() ? a.textContent : a.innerText || ""
}, yb = function (a) {
try {
return Array.prototype.slice.call(a)
} catch (b) {}
for (var c = 0, d = []; c < a.length; d.push(a[c++]));
return d
}, zb = function (a) {
"preventDefault" in a ? a.preventDefault() : a.returnValue = !1
}, Ab = function () {
var c = {};
try {
"undefined" != typeof a.innerWidth ? (c.width = a.innerWidth, c.height = a.innerHeight) : "undefined" != typeof b.documentElement && "undefined" != typeof b.documentElement.clientWidth && 0 != b.documentElement.clientWidth ? (c.width = b.documentElement.clientWidth, c.height = b.documentElement.clientHeight) : (c.width = b.getElementsByTagName("body")[0].clientWidth, c.height = b.getElementsByTagName("body")[0].clientHeight)
} catch (d) {
c.width = void 0, c.height = void 0
}
return c
}, Bb = {
domComplete: void 0,
loadEventStart: void 0
}, Cb = function () {
var a = U();
return "readyState" in b && "complete" === b.readyState && a.resolve({}), ub(b, "readystatechange", function (c) {
"readyState" in b && "complete" === b.readyState && (Bb.domComplete = Lb(), a.resolve(c))
}, !0), ub(b, "DOMContentLoaded", function (b) {
Bb.loadEventStart = Lb(), a.resolve(b)
}, !0), a.promise
}(),
Db = function () {
var c = U();
return "complete" === b.readyState && Cb.then(c.resolve), ub(a, "load", function (a) {
c.resolve(a)
}, !0), c.promise
}(),
Eb = function () {
var a = b.write,
c = !0;
return Db.then(function () {
c = !1
}),
function (d) {
try {
c && (hb() ? a.apply(b, arguments) : a(d))
} catch (e) {}
}
}();
c.add = function (a, b) {
return c(a).add(b)
}, c.prototype.add = function (a) {
var b, c;
return this.tokens ? (this.tokens.add(a), this) : (b = this.array(), c = m.indexOf(b, a), 0 > c && b.push(a), this.element.className = b.join(" "), this)
}, c.remove = function (a, b) {
return c(a).remove(b)
}, c.prototype.remove = function (a) {
var b, c;
return this.tokens ? (this.tokens.remove(a), this) : (b = this.array(), c = m.indexOf(b, a), c >= 0 ? (b.splice(c, 1), this.element.className = b.join(" "), this) : void 0)
}, c.toggle = function (a, b) {
c(a).toggle(b)
}, c.prototype.toggle = function (a) {
return this.tokens ? (this.tokens.toggle(a), this) : (this.has(a) ? this.remove(a) : this.add(a), this)
}, c.prototype.array = function () {
var a, b;
return a = this.element.className.replace(/^\s+|\s+$/g, ""), b = a.split(/\s+/), "" === b[0] && b.shift(), b
}, c.has = c.contains = function (a, b) {
return c(a).has(b)
}, c.prototype.has = c.prototype.contains = function (a) {
return this.tokens ? this.tokens.contains(a) : !! ~m.indexOf(this.array(), a)
};
var Fb = function (a, b, c) {
var d = c.get,
e = c.set;
try {
lb() ? (d && a.__defineGetter__(b, d), e && a.__defineSetter__(b, e)) : kb() ? Object.defineProperty(a, b, c) : G("Warning: agent does not support property descriptor modifications.")
} catch (f) {
H("Attempt to modify descriptor for property " + b + " failed. " + f.message)
}
}, Gb = function (a, b) {
return lb() ? {
get: a.__lookupGetter__(b),
set: a.__lookupSetter__(b)
} : kb() ? Object.getOwnPropertyDescriptor(a, b) : {}
}, Hb = function (a, b) {
for (var c, d = []; c = b.exec(a);) d.push(a.substr(0, c.index)), a = a.substr(c.index + c[0].length);
return d.push(a), d
}, Ib = function (a) {
return Object.prototype.toString.call(a)
}, Jb = function (a) {
return /String/.test(Ib(a))
}, Kb = function (a) {
return !!a && (a instanceof Array || "object" == typeof a && a.hasOwnProperty("length") && !a.propertyIsEnumerable("length"))
}, Lb = function () {
return (new Date).getTime()
}, Mb = function (a) {
return "string" == typeof a ? a.trim ? a.trim() : a.replace(/(^\s*|\s*$)/g, "") : a
}, Nb = function () {
return Math.round(Math.random() * Lb()).toString(16)
}, Ob = m.toArray,
Pb = function () {
return 9 > fb || 3.3 > $ || 9.3 > _ ? function (a) {
var c, d = wb("script"),
e = Nb(),
f = "__eval#" + e,
g = "__result#" + e,
h = b.getElementsByTagName("head")[0];
return CloudFlare[f] = a, d.type = "text/javascript", d.text = "CloudFlare['" + g + "']=eval(CloudFlare['" + f + "']);", h.insertBefore(d, h.firstChild), h.removeChild(d), c = CloudFlare[g], delete CloudFlare[f], delete CloudFlare[g], c
} : function (b) {
return function () {
return (1, eval)(b)
}.call(a)
}
}(),
Qb = function () {}, Rb = function (b) {
var c = (b || "").match(Xb) || [],
d = a.location.protocol,
e = {};
return e.protocol = c[2] || (c[4] ? d && d.substr(0, d.length - 1) : ""), e.auth = c[5] || "", e.host = c[7] || "", e.port = c[9] || "", e.path = c[10] || "", e.query = c[12] || "", e.hash = c[14] || "", e.toString = function () {
return Sb(e)
}, e
}, Sb = function (a) {
return (a.protocol && a.protocol + "://") + (a.auth && a.auth + "@") + (a.host && a.host) + (a.port && ":" + a.port) + (a.path && a.path) + (a.query && "?" + a.query) + (a.hash && "#" + a.hash)
}, Tb = function (a) {
var c = b.createElement("div");
return a = a.split("&").join("&#38;").split("<").join("&#60;").split("'").join("&#39;"), c.innerHTML = "<a href='" + a + "'>x</a>", c.firstChild.href
}, Ub = function (b, c) {
return b = Rb(Tb(b)), c = Rb(Tb(c ? c : a.location.href)), b.protocol === c.protocol && b.host === c.host && b.port === c.port
}, Vb = function (a) {
var b = Rb(a),
c = b.path.split("/"),
d = c[c.length - 1],
e = d.split(".");
return e.pop()
}, Wb = function () {
for (var a = "", b = !1, c = arguments.length; c >= -1 && !b; c--) {
var d = c >= 0 ? arguments[c] : "/";
"string" == typeof d && d && (a = d + "/" + a, b = "/" === d.charAt(0))
}
}, Xb = /^(?!mailto\:)(?!javascript\:)(([^\:\/]+):)?((\/\/)(([^\:\@\/]*\:[^@]*)\@)?([^\#\:\?\$\/]*))?(\:([0-9]+))?(\/?[^\?\#]*)?(\??([^#]*))?(\#?(.*))?$/,
Yb = function () {
var b = ["Microsoft.XMLHTTP", "MSXML2.XMLHTTP.3.0", "MSXML3.XMLHTTP", "MSXML2.XMLHTTP.6.0"],
c = function () {
if ("XMLHttpRequest" in a) return new XMLHttpRequest;
for (; b.length;) try {
return new ActiveXObject(b[b.length - 1])
} catch (c) {
b.pop()
}
};
return function (b) {
var d = b.headers || {}, e = b.method || "get",
f = "get" !== e ? (b.data || "") + "\r\n" : function () {
var a = [],
c = b.data || {};
return m.forEach(c, function (b, c) {
m.isArray(b) ? m.forEach(b, function (b) {
a.push(h(c) + "[]=" + h(b))
}) : a.push(h(c) + "=" + h(b))
}), a.join("&").replace(/%20/g, "+")
}(),
g = ("/" == b.url.substr(0, 1) ? a.location.protocol + "//" + a.location.host : "") + b.url + ("get" === e && f.length ? "?" + f : ""),
i = b.async !== !1,
j = b.complete || Qb,
k = b.error || Qb,
l = c(),
n = function () {
var a = l.responseText;
j(a, l)
};
return l.onreadystatechange = function () {
try {
var a, b = l.readyState;
try {
a = l.status
} catch (c) {}
a && a > 399 ? (l.onreadystatechange = Qb, k(a)) : 4 === b && n()
} catch (c) {
k("Uncaught exception while attempting to contact the cloud: " + c.message), l.onreadystatechange = Qb
}
}, l.open(e, g, i), m.forEach(d, function (a, b) {
l.setRequestHeader(b, a)
}), l.send(f ? f : void 0), l
}
}(),
Zb = [],
$b = function () {
var c = function (a) {
return "CLOUDFLARE::" + a
}, f = function (b) {
var d = c(b.url);
try {
"JSON" in a ? N.setItem(d, JSON.stringify(b)) : Zb.push(arguments)
} catch (e) {
H("Failed to store item " + d + ". " + e.message)
}
}, g = !1,
h = function (a) {
g = a.shiftKey
};
return ub(b, "keydown", h), ub(b, "keyup", h), ub(a, "unload", function () {
if (g) try {
for (var a, b = 0; b < N.length; b++)(a = N.key[b]).indexOf("CLOUDFLARE") || N.removeItem(a)
} catch (c) {}
}),
function (a, b) {
var g = !d.byc,
h = d.petok,
i = d.bag || "/cdn-cgi/pe/bag2",
j = (Lb(), function (b, c, d) {
a[b](c, d)
}),
k = function () {
b()
}, l = !1,
m = function (a) {
return (l = 1 === a.length) ? a : a
}, p = t(a);
g && (p = o(p, function (a) {
var b = c(a),
d = N.getItem(b);
if (d) try {
return d = JSON.parse(d), d.version && d.version === e ? (j(a, d.contents, d.meta[3]), !1) : !0
} catch (f) {
H("Stored item with key " + b + " was corrupt. Purging..."), N.removeItem(b)
}
return !0
})), p.length ? ! function () {
var a = arguments.callee,
b = p.splice(0, 16),
c = {};
c.data = {}, c.data.r = m(b), c.headers = {}, c.headers["PE-Token"] = h, c.url = i, c.error = function (a) {
H("Error retrieving items from the cloud. Status code: " + a), n(b, function (b) {
j(b, a)
}), k()
}, c.complete = function (c, d) {
var g;
g = d.getResponseHeader("Content-Type").match(/boundary="(.*)"/)[1], g || n(b, function (a) {
j(a, "", d.status)
}), n(ac(c, g), function (a) {
var b = a.headers["x-cf-status"],
c = a.headers["x-cf-max-age"] || 72e5;
310 > b ? (f({
url: a.headers["x-cf-url"],
contents: a.data,
version: e,
ctime: Lb(),
stime: Lb(),
ttl: c,
meta: [null, null, null, b]
}), j(a.headers["x-cf-url"], a.data, b)) : j(a.headers["x-cf-url"], "", b)
}), p.length ? a() : k()
}, Yb(c)
}() : k()
}
}(),
_b = function () {
"use strict";
function a() {
this.boundary = null, this.boundaryChars = null, this.lookbehind = null, this.state = d.PARSER_UNINITIALIZED, this.index = null, this.flags = 0
}
var b = m.bind,
c = m.findKey,
d = {
PARSER_UNINITIALIZED: 0,
START: 1,
START_BOUNDARY: 2,
HEADER_FIELD_START: 3,
HEADER_FIELD: 4,
HEADER_VALUE_START: 5,
HEADER_VALUE: 6,
HEADER_VALUE_ALMOST_DONE: 7,
HEADERS_ALMOST_DONE: 8,
PART_DATA_START: 9,
PART_DATA: 10,
PART_END: 11,
END: 12
}, e = {
PART_BOUNDARY: 1,
LAST_BOUNDARY: 2
};
return a.stateToString = function (a) {
return c(d, function (b) {
return b === a
})
}, a.prototype.initWithBoundary = function (a) {
if (!a || /^(?![-0-9A-Za-z'\(\)\+_,\.\/:=\? ]{1,63}$)/.test(a)) throw new TypeError("Invalid boundary");
this.boundary = "\r\n--" + a, this.lookbehind = [], this.state = d.START, this.boundaryChars = {};
for (var b = 0; b < this.boundary.length; b++) this.boundaryChars[this.boundary[b]] = !0
}, a.prototype.write = function (a) {
var c, f = b(function (a) {
this[a + "Mark"] = k
}, this),
g = b(function (a) {
delete this[a + "Mark"]
}, this),
h = b(function (a, b, c, d) {
if (void 0 === c || c !== d) {
var e = "on" + a.substr(0, 1).toUpperCase() + a.substr(1);
e in this && this[e](b, c, d)
}
}, this),
i = b(function (b, c) {
var d = b + "Mark";
d in this && (c ? (h(b, a, this[d], k), delete this[d]) : (h(b, a, this[d], a.length), this[d] = 0))
}, this),
j = a.length,
k = 0,
l = this.index,
m = this.boundary.length - 1;
for (k = 0; j > k; k++) switch (c = a[k], this.state) {
case d.PARSER_UNINITIALIZED:
return k;
case d.START:
this.index = 0, this.state = d.START_BOUNDARY;
case d.START_BOUNDARY:
if (this.index === this.boundary.length - 2) {
if ("-" === c) this.flags |= e.LAST_BOUNDARY;
else if ("\r" !== c) return k;
this.index++;
break
}
if (this.index - 1 === this.boundary.length - 2) {
if (this.flags & e.LAST_BOUNDARY && "-" === c) h("end"), this.state = d.END, this.flags = 0;
else {
if (this.flags & e.LAST_BOUNDARY || "\n" !== c) return k;
this.index = 0, h("partBegin"), this.state = d.HEADER_FIELD_START
}
break
}
c !== this.boundary[this.index + 2] && (this.index = -2), c === this.boundary[this.index + 2] && this.index++;
break;
case d.HEADER_FIELD_START:
this.state = d.HEADER_FIELD, f("headerField"), this.index = 0;
case d.HEADER_FIELD:
if ("\r" === c) {
g("headerField"), this.state = d.HEADERS_ALMOST_DONE;
break
}
if (this.index++, "-" === c) break;
if (":" === c) {
if (1 === this.index) return k;
i("headerField", !0), this.state = d.HEADER_VALUE_START;
break
}
break;
case d.HEADER_VALUE_START:
if (" " === c) break;
f("headerValue"), this.state = d.HEADER_VALUE;
case d.HEADER_VALUE:
"\r" === c && (i("headerValue", !0), h("headerEnd"), this.state = d.HEADER_VALUE_ALMOST_DONE);
break;
case d.HEADER_VALUE_ALMOST_DONE:
if ("\n" !== c) return k;
this.state = d.HEADER_FIELD_START;
break;
case d.HEADERS_ALMOST_DONE:
if ("\n" !== c) return k;
h("headersEnd"), this.state = d.PART_DATA_START;
break;
case d.PART_DATA_START:
this.state = d.PART_DATA, f("partData");
case d.PART_DATA:
if (l = this.index, 0 === this.index) {
for (k += m; k < a.length && !(a[k] in this.boundaryChars);) k += this.boundary.length;
k -= m, c = a[k]
}
if (this.index < this.boundary.length) this.boundary[this.index] === c ? (0 === this.index && i("partData", !0), this.index++) : this.index = 0;
else if (this.index === this.boundary.length) this.index++, "\r" === c ? this.flags |= e.PART_BOUNDARY : "-" === c ? this.flags |= e.LAST_BOUNDARY : this.index = 0;
else if (this.index - 1 === this.boundary.length)
if (this.flags & e.PART_BOUNDARY) {
if (this.index = 0, "\n" === c) {
this.flags &= ~e.PART_BOUNDARY, h("partEnd"), h("partBegin"), this.state = d.HEADER_FIELD_START;
break
}
} else this.flags & e.LAST_BOUNDARY ? "-" === c ? (h("partEnd"), h("end"), this.state = d.END, this.flags = 0) : this.index = 0 : this.index = 0;
this.index > 0 ? this.lookbehind[this.index - 1] = c : l > 0 && (h("partData", this.lookbehind.join(""), 0, l), l = 0, f("partData"), k--);
case d.END:
break;
default:
return k
}
return i("headerField"), i("headerValue"), i("partData"), j
}, a.prototype.end = function () {
var a = function (a, b) {
var c = "on" + b.substr(0, 1).toUpperCase() + b.str(1);
c in a && a[c]()
};
if (this.state === d.HEADER_FIELD_START && 0 === this.index || this.state === d.PART_DATA && this.index === this.boundary.length) a(this, "partEnd"), a(this, "end");
else if (this.state !== d.END) return new Error("MultipartParser.end(): stream ended unexpectedly, " + this)
}, a.prototype.toString = function () {
return "state = " + a.stateToString(this.state)
}, a
}(),
ac = function (a, b) {
"use strict";
var c, d, e, f, g = [],
h = {}, i = new _b;
return i.initWithBoundary(b), i.onPartBegin = function () {
c = {}, h = {}, e = "", f = "", d = ""
}, i.onHeaderField = function (a, b, c) {
e = a.slice(b, c)
}, i.onHeaderValue = function (a, b, c) {
f = a.slice(b, c)
}, i.onHeaderEnd = function () {
h[e.toLowerCase()] = f
}, i.onPartData = function (a, b, c) {
d = d.concat(a.slice(b, c))
}, i.onPartEnd = function () {
c.data = d, c.headers = h, g.push(c)
}, i.write(a), i.end(), g
};
! function () {
var c = {}, g = a.CloudFlare || {}, h = {}, k = [],
l = function (a) {
var b, c = a.split("/");
return (b = d.paths[c[0]]) && "string" == typeof b ? Tb(b + ("/" !== b.substr(b.length - 1) ? "/" : "") + a + ".js" + (d.bustCache ? "?" + Lb() : "")) : Tb(a)
}, o = function () {
var a;
return function () {
return a && "interactive" === a.readyState ? a : (a = void 0, n(yb(b.getElementsByTagName("script")), function (b) {
return "interactive" === b.readyState ? (a = b, !1) : void 0
}), a)
}
}(),
q = function (a) {
k.push(a)
}, r = function (a) {
!v(a) && k.length && (G('Assigning anonymously defined module to "' + a + '"'), h[a] = k.pop()), k = []
}, s = function (a) {
var b = U(),
c = t(a);
return v(a) ? b.resolve(h[a].promise) : c ? (G('Warning: "' + a + '" does not appear to define a module.'), h[a] = b, b.resolve()) : b.reject(new Error('Module "' + a + '" was not properly defined.')), b.promise
}, t = function (a) {
return !(a.split("/")[0] in d.paths)
}, u = function (a) {
return v(a) && !(V(h[a]) || W(h[a]))
}, v = function (a) {
return a in h && !V(h[a])
}, x = function (a) {
var d = "string" == typeof a && a,
e = function () {
d ? (delete c["__" + d + "_load"], delete c["__" + d + "_readystatechange"], delete c["__" + d + "_error"]) : (vb(a, "load", g), vb(a, "readystatechange", g), vb(a, "error", h))
}, g = function () {
d && (a = b.getElementById(d)), "readyState" in a && "loaded" !== a.readyState && "complete" !== a.readyState || (fb || r(rb(a, "module")), e(), i.resolve())
}, h = function () {
e(), i.reject(new Error("The module script dispatched an error event during load."))
}, i = U();
return f(function () {
i.reject(new Error("The module script timed out during load."))
}, 1e4), d ? (c["__" + d + "_load"] = g, c["__" + d + "_readystatechange"] = g, c["__" + d + "_error"] = h) : (ub(a, "load", g), ub(a, "readystatechange", g), ub(a, "error", h)), i.promise
}, y = function () {
var a = [],
c = {}, d = b.getElementsByTagName("script")[0],
e = 0;
return function (b) {
var g = U(),
i = !1;
return v(b) ? g.resolve(h[b].promise) : (n(a, function (a) {
i = a == b
}), i || c[b] || a.push(b), c[b] = c[b] || [], c[b].push(g), G('Attempting to resolve module "' + b + '" with asynchronous script insertion.'), e = e || f(function () {
var b = m.clone(a);
e = 0, a = [], n(b, function (a) {
var b, e = l(a);
u(a) || (b = wb("script"), x(b).then(function () {
n(c[a], function (b) {
b.resolve(s(a))
})
}, function (b) {
n(c[a], function (c) {
c.reject(new Error('Inserted script for module "' + a + '" did not load properly. ' + b.message))
})
}), pb(b, "type", "text/javascript"), pb(b, "src", e), pb(b, "async", "true"), sb(b, "module", a), d.parentNode.insertBefore(b, d))
})
}, 50)), g.promise
}
}(),
z = function (a) {
var b, c = U();
return v(a) ? c.resolve(h[a].promise) : (G('Writing "' + a + '" into the DOM as a blocking module.'), b = "cfjs_block_" + Nb(), x(b).then(function () {
c.resolve(s(a))
}, function (b) {
c.reject(new Error('Written script for module "' + a + '" did not load properly. ' + b.message))
}), Eb('<script data-module="' + a + '" id="' + b + '" onload="CloudFlare.__' + b + '_load()" onerror="CloudFlare.__' + b + '_error()" onreadystatechange="CloudFlare.__' + b + '_readystatechange()" type="text/javascript" src="' + l(a) + '"></' + "script>")), c.promise
}, A = function () {
var a = [],
b = {}, c = 0;
return function (e) {
var g = U();
return v(e) ? g.resolve(h[e].promise) : (a.push(e), b[e] = b[e] || [], b[e].push(g), G('Queueing "' + e + '" to be resolved by the cloud.'), c = c || f(function () {
var e = {}, f = m.clone(a);
c = 0, a = [], G('The following queued modules are being looked up: "' + a.join('", "') + '."'), n(f, function (a) {
var c = l(a);
u(a) || (e[c] = e[c] || function (c, e) {
if (e = i(e), c) {
G('Executing code related to "' + a + '" that was received from the cloud.');
try {
d.verbose && (c += "\n/*\n//# sourceURL=/cloudflarejs/module[" + a + "]\n*/"), Pb(c), r(a), n(b[a], function (b) {
b.resolve(s(a))
})
} catch (f) {
n(b[a], function (a) {
a.reject(f)
})
}
} else e > 499 && 801 > e ? n(b[a], function (b) {
b.resolve(y(a))
}) : n(b[a], function (b) {
b.reject(new Error('Code for module "' + a + '" retrieved from the cloud came back with status ' + e + "."))
})
})
}), $b(e, function () {
G("A correspondance with the cloud has concluded.")
})
}, 50)), g.promise
}
}(),
B = function (a, b) {
var c, d = U(),
e = [];
return a = a || [], a.length ? (n(a, function (a) {
var d = c;
c = T(b(a).then(function (a) {
return a
}, function (b) {
H('Required module "' + a + '" was rejected. ' + b.message)
}), function (a) {
return T(d, function () {
e.push(a)
})
})
}), c.then(function () {
d.resolve(e)
})) : d.resolve(e), d.promise
}, C = function () {
var a = arguments.length,
b = a > 1 && "string" == typeof arguments[0] && arguments[0] || "",
c = a > 1 && arguments[a - 2] !== b && arguments[a - 2] || [],
e = "function" == typeof arguments[a - 1] && arguments[a - 1],
f = U();
return v(b) ? f.reject(new Error('Module "' + name + '" is already defined.')) : e ? (fb && !b && (b = rb(o(), "module")), b ? h[b] = f : q(f), E(c, function () {
var a = {}, g = {}, h = {}, i = arguments;
c = p(c, function (b, c) {
return "module" === b ? a : "exports" === b ? g : i[c]
}), G(b ? 'Running factory for "' + b + '" to complete module definition.' : "Running factory for an anonymous module to complete module definition."), a.exports = g, a.paths = d.paths, h.module = a, h.debug = !! d.debug;
try {
a = e.apply(h, c) || a.exports || g
} catch (j) {
f.reject(j)
}
a && f.resolve(a)
})) : f.reject(new Error('Module "' + name + '" did not provide an intializer.')), f.promise
}, D = function (a, b) {
return Q = !0, result = B(a, z).then(function (a) {
return b ? b.apply(b, a) : S()
}).then(function () {
Q = !1
})
}, E = function (a, b) {
return B(a, "bag" in d && !d.bag ? y : A).then(function (a) {
return b ? b.apply(b, a) : S()
})
}, F = function (a) {
"function" == typeof a ? j(function () {
a(E, C)
}) : "object" == typeof a && n(a, function (a, b) {
"object" == typeof a && "object" == typeof d[b] ? n(a, function (a, c) {
d[b][c] = a
}) : d[b] = a
})
};
g && g.length && n(g, F), d.apps || d.bag || (d.bag = 0);
try {
/\?.*cfjs-bust-cache/.test(a.location.toString()) && (d.bustCache = 1)
} catch (I) {}
try {
/\?.*cfjs-debug/.test(a.location.toString()) && (d.debug = 1)
} catch (I) {}
h.require = U(), h.require.resolve(function () {
H('The CommonJS AMD psuedo-module "require" is NOT YET IMPLEMENTED!')
}), h.exports = U(), h.exports.resolve(), h.module = U(), h.module.resolve(), c.require = E, c.require.paths = d.paths, c.define = C, c.define.amd = {}, c.block = D, c.push = F, c.version = e + "", ub(a, "load", function () {
c.block = c.require
}, !0), c.debug = {}, c.debug.log = w, c.debug.module = {}, c.debug.module.clear = function () {
h = {}
}, c.debug.module.remove = function (a) {
delete h[a]
}, c.debug.module.resolve = function (a) {
return l(a)
}, c.debug.module.exists = function (a) {
return a in h
}, c.debug.module.list = function () {
m.forEach(h, function (a) {
G(a)
})
}, c.debug.module.globalize = function () {
c.global = {}, n(h, function (a, b) {
a.promise.then(function (a) {
c.global[b] = a
})
})
}, c.debug.eval = function (a) {
return Pb(a)
}, c.debug.cache = {}, c.debug.cache.clear = function () {
N.clear()
}, c.debug.cache.show = function (a) {
var b;
switch (typeof a) {
default:
case "undefined":
for (var c = 0; c < N.length; c++) b = N.key(c), 0 === b.indexOf("CLOUDFLARE") && G(c + ") " + b);
break;
case "number":
b = N.key(a);
case "string":
return b = b || a, JSON.parse(N.getItem(b))
}
}, -1 !== a.location.toString().indexOf("silent=1") && (d.verbose = !1), a.CloudFlare = c
}();
var bc = CloudFlare.define,
cc = CloudFlare.require;
if (bc("cloudflare/deferred", function () {
return R
}), bc("cloudflare/promise", function () {
return P
}), bc("cloudflare/console", function () {
var a = {};
return a.log = "undefined" != typeof G ? G : Qb, a.error = "undefined" != typeof H ? H : Qb, a.info = "undefined" != typeof I ? I : Qb, a.trace = "undeinfed" != typeof J ? J : Qb, a.LOG = x, a.INFO = y, a.ERROR = z, a.ASSERT = A, a.TRACE = B, a.EXECUTION = C, a.PARSER = D, a.HACK = E, a.WARNING = F, a
}), bc("cloudflare/iterator", function () {
var a = {};
return a.forEach = n, a.map = p, a.filter = o, a.extend = q, a.indexOf = s, a.keys = t, a.values = u, a.find = r, a.firstInBoth = v, a
}), bc("cloudflare/dom", function () {
var a = {};
return a.userAgent = X, a.internetExplorer = fb, a.chrome = Z, a.opera = _, a.firefox = Y, a.webkit = cb, a.macintosh = db, a.safari = $, a.ios = ab, a.android = bb, a.windows = eb, a.hasCreateElementCallApply = gb, a.hasAttachEventCallApply = ib, a.hasStandardEvents = jb, a.hasStandardAccessors = kb, a.hasAlternateAccessors = lb, a.hasTextContent = mb, a.hasStorage = nb, a.getAttribute = ob, a.setAttribute = pb, a.removeAttribute = qb, a.getData = rb, a.setData = sb, a.removeData = tb, a.addEventListener = ub, a.removeEventListener = vb, a.createElement = wb, a.textContent = xb, a.nodeListToArray = yb, a.getViewport = Ab, a.performance = Bb, a.onLoad = Db, a.onReady = Cb, a.write = Eb, a.preventDefault = zb, a
}), bc("cloudflare/classes", function () {
return c
}), bc("cloudflare/user", function () {
var a = {};
return a.getCookie = M, a.setCookie = L, a.storage = N, a
}), bc("cloudflare/path", function () {
var a = {};
return a.parseURL = Rb, a.stringifyURL = Sb, a.parseExtension = Vb, a.resolveFullURL = Tb, a.resolvePath = Wb, a.sameOrigin = Ub, a
}), bc("cloudflare/utility", function () {
var a = {};
return a.defineProperty = Fb, a.getOwnPropertyDescriptor = Gb, a.split = Hb, a.getClass = Ib, a.isString = Jb, a.isArray = Kb, a.toArray = Ob, a.now = Lb, a.uid = Nb, a.trim = Mb, a.globalEval = Pb, a.nextTick = j, a.noop = Qb, a
}), bc("cloudflare/loader", function () {
var a = {};
return a.load = $b, a.ajax = Yb, a
}), bc("cloudflare/config", function () {
return q({}, d)
}), bc("cloudflare", function () {
return CloudFlare
}), "JSON" in a ? bc("cloudflare/json", function () {
return JSON
}) : cc(["cloudflare/json"], function () {
n(Zb, function () {}), Zb = []
}), CloudFlare.block, d.apps) {
var dc = {};
dc.cdnjs = 0, dc.smrtln = 0, dc.excpnhb = 0, dc.ape = 0, dc.panopta = 0, dc.blitz = 0, dc.cdgrd = 0, dc.dome9 = 0, dc.gsha = 0, dc.monitis_key = 0, dc.ping_key = 0, dc.stphck = 0, dc.webmst = 0, dc.zoompf_report = 0, dc.mobeeself = 0, dc.verelo = 0, n(d.apps, function (a, b) {
0 !== dc[b] && ("highlight" === b ? b = "cloudflare/highlight" : d.paths[b] = a && a.cfjs_path || d.paths.cloudflare + "apps/", bc(b + "/config", function () {
return a
}), "ga_key" != b && cc([b]))
})
}
delete d.paths.apps, d.rocket && "0" !== d.rocket && CloudFlare.block(["cloudflare/rocket"]), d.oracle && CloudFlare.require(["cloudflare/oracle"]), d.mirage2 && CloudFlare.require(["cloudflare/mirage2"])
}(window, document, "undefined" != typeof window.__CF && window.__CF.DJS || "object" == typeof window.DJS && window.DJS.length && window.DJS || []);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment