MINI Sh3ll
/*
* Copyright 2016 Small Batch, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
/* Web Font Loader v1.6.16 - (c) Adobe Systems, Google. License: Apache 2.0 */
(function() {
function aa(a, b, c) {
return a.call.apply(a.bind, arguments)
}
function ba(a, b, c) {
if (!a)
throw Error();
if (2 < arguments.length) {
var d = Array.prototype.slice.call(arguments, 2);
return function() {
var c = Array.prototype.slice.call(arguments);
Array.prototype.unshift.apply(c, d);
return a.apply(b, c)
}
}
return function() {
return a.apply(b, arguments)
}
}
function n(a, b, c) {
n = Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf("native code") ? aa : ba;
return n.apply(null, arguments)
}
var p = Date.now || function() {
return +new Date
}
;
function r(a, b) {
this.F = a;
this.k = b || a;
this.H = this.k.document
}
var ca = !!window.FontFace;
r.prototype.createElement = function(a, b, c) {
a = this.H.createElement(a);
if (b)
for (var d in b)
b.hasOwnProperty(d) && ("style" == d ? a.style.cssText = b[d] : a.setAttribute(d, b[d]));
c && a.appendChild(this.H.createTextNode(c));
return a
}
;
function s(a, b, c) {
a = a.H.getElementsByTagName(b)[0];
a || (a = document.documentElement);
a.insertBefore(c, a.lastChild)
}
function t(a, b, c) {
b = b || [];
c = c || [];
for (var d = a.className.split(/\s+/), e = 0; e < b.length; e += 1) {
for (var f = !1, g = 0; g < d.length; g += 1)
if (b[e] === d[g]) {
f = !0;
break
}
f || d.push(b[e])
}
b = [];
for (e = 0; e < d.length; e += 1) {
f = !1;
for (g = 0; g < c.length; g += 1)
if (d[e] === c[g]) {
f = !0;
break
}
f || b.push(d[e])
}
a.className = b.join(" ").replace(/\s+/g, " ").replace(/^\s+|\s+$/, "")
}
function u(a, b) {
for (var c = a.className.split(/\s+/), d = 0, e = c.length; d < e; d++)
if (c[d] == b)
return !0;
return !1
}
function v(a) {
if ("string" === typeof a.fa)
return a.fa;
var b = a.k.location.protocol;
"about:" == b && (b = a.F.location.protocol);
return "https:" == b ? "https:" : "http:"
}
function x(a, b, c) {
function d() {
l && e && f && (l(g),
l = null)
}
b = a.createElement("link", {
rel: "stylesheet",
href: b,
media: "all"
});
var e = !1
, f = !0
, g = null
, l = c || null;
ca ? (b.onload = function() {
e = !0;
d()
}
,
b.onerror = function() {
e = !0;
g = Error("Stylesheet failed to load");
d()
}
) : setTimeout(function() {
e = !0;
d()
}, 0);
s(a, "head", b)
}
function y(a, b, c, d) {
var e = a.H.getElementsByTagName("head")[0];
if (e) {
var f = a.createElement("script", {
src: b
})
, g = !1;
f.onload = f.onreadystatechange = function() {
g || this.readyState && "loaded" != this.readyState && "complete" != this.readyState || (g = !0,
c && c(null),
f.onload = f.onreadystatechange = null,
"HEAD" == f.parentNode.tagName && e.removeChild(f))
}
;
e.appendChild(f);
setTimeout(function() {
g || (g = !0,
c && c(Error("Script load timeout")))
}, d || 5E3);
return f
}
return null
}
;function z() {
this.S = 0;
this.K = null
}
function A(a) {
a.S++;
return function() {
a.S--;
B(a)
}
}
function C(a, b) {
a.K = b;
B(a)
}
function B(a) {
0 == a.S && a.K && (a.K(),
a.K = null)
}
;function D(a) {
this.ea = a || "-"
}
D.prototype.d = function(a) {
for (var b = [], c = 0; c < arguments.length; c++)
b.push(arguments[c].replace(/[\W_]+/g, "").toLowerCase());
return b.join(this.ea)
}
;
function E(a, b) {
this.Q = a;
this.M = 4;
this.L = "n";
var c = (b || "n4").match(/^([nio])([1-9])$/i);
c && (this.L = c[1],
this.M = parseInt(c[2], 10))
}
E.prototype.getName = function() {
return this.Q
}
;
function da(a) {
return F(a) + " " + (a.M + "00") + " 300px " + G(a.Q)
}
function G(a) {
var b = [];
a = a.split(/,\s*/);
for (var c = 0; c < a.length; c++) {
var d = a[c].replace(/['"]/g, "");
-1 != d.indexOf(" ") || /^\d/.test(d) ? b.push("'" + d + "'") : b.push(d)
}
return b.join(",")
}
function I(a) {
return a.L + a.M
}
function F(a) {
var b = "normal";
"o" === a.L ? b = "oblique" : "i" === a.L && (b = "italic");
return b
}
function ea(a) {
var b = 4
, c = "n"
, d = null;
a && ((d = a.match(/(normal|oblique|italic)/i)) && d[1] && (c = d[1].substr(0, 1).toLowerCase()),
(d = a.match(/([1-9]00|normal|bold)/i)) && d[1] && (/bold/i.test(d[1]) ? b = 7 : /[1-9]00/.test(d[1]) && (b = parseInt(d[1].substr(0, 1), 10))));
return c + b
}
;function fa(a, b) {
this.a = a;
this.j = a.k.document.documentElement;
this.O = b;
this.f = "wf";
this.e = new D("-");
this.da = !1 !== b.events;
this.u = !1 !== b.classes
}
function ga(a) {
a.u && t(a.j, [a.e.d(a.f, "loading")]);
J(a, "loading")
}
function K(a) {
if (a.u) {
var b = u(a.j, a.e.d(a.f, "active"))
, c = []
, d = [a.e.d(a.f, "loading")];
b || c.push(a.e.d(a.f, "inactive"));
t(a.j, c, d)
}
J(a, "inactive")
}
function J(a, b, c) {
if (a.da && a.O[b])
if (c)
a.O[b](c.getName(), I(c));
else
a.O[b]()
}
;function ha() {
this.t = {}
}
function ia(a, b, c) {
var d = [], e;
for (e in b)
if (b.hasOwnProperty(e)) {
var f = a.t[e];
f && d.push(f(b[e], c))
}
return d
}
;function L(a, b) {
this.a = a;
this.h = b;
this.m = this.a.createElement("span", {
"aria-hidden": "true"
}, this.h)
}
function M(a, b) {
var c = a.m, d;
d = "display:block;position:absolute;top:-9999px;left:-9999px;font-size:300px;width:auto;height:auto;line-height:normal;margin:0;padding:0;font-variant:normal;white-space:nowrap;font-family:" + G(b.Q) + ";" + ("font-style:" + F(b) + ";font-weight:" + (b.M + "00") + ";");
c.style.cssText = d
}
function N(a) {
s(a.a, "body", a.m)
}
L.prototype.remove = function() {
var a = this.m;
a.parentNode && a.parentNode.removeChild(a)
}
;
function O(a, b, c, d, e, f) {
this.G = a;
this.J = b;
this.g = d;
this.a = c;
this.v = e || 3E3;
this.h = f || void 0
}
O.prototype.start = function() {
function a() {
p() - d >= c.v ? c.J(c.g) : b.fonts.load(da(c.g), c.h).then(function(b) {
1 <= b.length ? c.G(c.g) : setTimeout(a, 25)
}, function() {
c.J(c.g)
})
}
var b = this.a.k.document
, c = this
, d = p();
a()
}
;
function P(a, b, c, d, e, f, g) {
this.G = a;
this.J = b;
this.a = c;
this.g = d;
this.h = g || "BESbswy";
this.s = {};
this.v = e || 3E3;
this.Z = f || null;
this.D = this.C = this.A = this.w = null;
this.w = new L(this.a,this.h);
this.A = new L(this.a,this.h);
this.C = new L(this.a,this.h);
this.D = new L(this.a,this.h);
M(this.w, new E(this.g.getName() + ",serif",I(this.g)));
M(this.A, new E(this.g.getName() + ",sans-serif",I(this.g)));
M(this.C, new E("serif",I(this.g)));
M(this.D, new E("sans-serif",I(this.g)));
N(this.w);
N(this.A);
N(this.C);
N(this.D)
}
var Q = {
ia: "serif",
ha: "sans-serif"
}
, R = null;
function S() {
if (null === R) {
var a = /AppleWebKit\/([0-9]+)(?:\.([0-9]+))/.exec(window.navigator.userAgent);
R = !!a && (536 > parseInt(a[1], 10) || 536 === parseInt(a[1], 10) && 11 >= parseInt(a[2], 10))
}
return R
}
P.prototype.start = function() {
this.s.serif = this.C.m.offsetWidth;
this.s["sans-serif"] = this.D.m.offsetWidth;
this.ga = p();
ja(this)
}
;
function ka(a, b, c) {
for (var d in Q)
if (Q.hasOwnProperty(d) && b === a.s[Q[d]] && c === a.s[Q[d]])
return !0;
return !1
}
function ja(a) {
var b = a.w.m.offsetWidth, c = a.A.m.offsetWidth, d;
(d = b === a.s.serif && c === a.s["sans-serif"]) || (d = S() && ka(a, b, c));
d ? p() - a.ga >= a.v ? S() && ka(a, b, c) && (null === a.Z || a.Z.hasOwnProperty(a.g.getName())) ? T(a, a.G) : T(a, a.J) : la(a) : T(a, a.G)
}
function la(a) {
setTimeout(n(function() {
ja(this)
}, a), 50)
}
function T(a, b) {
setTimeout(n(function() {
this.w.remove();
this.A.remove();
this.C.remove();
this.D.remove();
b(this.g)
}, a), 0)
}
;function U(a, b, c) {
this.a = a;
this.p = b;
this.P = 0;
this.ba = this.Y = !1;
this.v = c
}
var V = null;
U.prototype.V = function(a) {
var b = this.p;
b.u && t(b.j, [b.e.d(b.f, a.getName(), I(a).toString(), "active")], [b.e.d(b.f, a.getName(), I(a).toString(), "loading"), b.e.d(b.f, a.getName(), I(a).toString(), "inactive")]);
J(b, "fontactive", a);
this.ba = !0;
ma(this)
}
;
U.prototype.W = function(a) {
var b = this.p;
if (b.u) {
var c = u(b.j, b.e.d(b.f, a.getName(), I(a).toString(), "active"))
, d = []
, e = [b.e.d(b.f, a.getName(), I(a).toString(), "loading")];
c || d.push(b.e.d(b.f, a.getName(), I(a).toString(), "inactive"));
t(b.j, d, e)
}
J(b, "fontinactive", a);
ma(this)
}
;
function ma(a) {
0 == --a.P && a.Y && (a.ba ? (a = a.p,
a.u && t(a.j, [a.e.d(a.f, "active")], [a.e.d(a.f, "loading"), a.e.d(a.f, "inactive")]),
J(a, "active")) : K(a.p))
}
;function na(a) {
this.F = a;
this.q = new ha;
this.$ = 0;
this.T = this.U = !0
}
na.prototype.load = function(a) {
this.a = new r(this.F,a.context || this.F);
this.U = !1 !== a.events;
this.T = !1 !== a.classes;
oa(this, new fa(this.a,a), a)
}
;
function pa(a, b, c, d, e) {
var f = 0 == --a.$;
(a.T || a.U) && setTimeout(function() {
var a = e || null
, l = d || null || {};
if (0 === c.length && f)
K(b.p);
else {
b.P += c.length;
f && (b.Y = f);
var h, k = [];
for (h = 0; h < c.length; h++) {
var m = c[h]
, w = l[m.getName()]
, q = b.p
, H = m;
q.u && t(q.j, [q.e.d(q.f, H.getName(), I(H).toString(), "loading")]);
J(q, "fontloading", H);
q = null;
null === V && (V = window.FontFace ? (q = /Gecko.*Firefox\/(\d+)/.exec(window.navigator.userAgent)) ? 42 < parseInt(q[1], 10) : !0 : !1);
q = V ? new O(n(b.V, b),n(b.W, b),b.a,m,b.v,w) : new P(n(b.V, b),n(b.W, b),b.a,m,b.v,a,w);
k.push(q)
}
for (h = 0; h < k.length; h++)
k[h].start()
}
}, 0)
}
function oa(a, b, c) {
var d = []
, e = c.timeout;
ga(b);
var d = ia(a.q, c, a.a)
, f = new U(a.a,b,e);
a.$ = d.length;
b = 0;
for (c = d.length; b < c; b++)
d[b].load(function(b, c, d) {
pa(a, f, b, c, d)
})
}
;function qa(a, b, c) {
this.N = a ? a : b + ra;
this.o = [];
this.R = [];
this.ca = c || ""
}
var ra = "//fonts.googleapis.com/css";
function sa(a, b) {
for (var c = b.length, d = 0; d < c; d++) {
var e = b[d].split(":");
3 == e.length && a.R.push(e.pop());
var f = "";
2 == e.length && "" != e[1] && (f = ":");
a.o.push(e.join(f))
}
}
qa.prototype.d = function() {
if (0 == this.o.length)
throw Error("No fonts to load!");
if (-1 != this.N.indexOf("kit="))
return this.N;
for (var a = this.o.length, b = [], c = 0; c < a; c++)
b.push(this.o[c].replace(/ /g, "+"));
a = this.N + "?family=" + b.join("%7C");
0 < this.R.length && (a += "&subset=" + this.R.join(","));
0 < this.ca.length && (a += "&text=" + encodeURIComponent(this.ca));
return a
}
;
function ta(a) {
this.o = a;
this.aa = [];
this.I = {}
}
var ua = {
latin: "BESbswy",
cyrillic: "йяЖ",
greek: "αβΣ",
khmer: "កខគ",
Hanuman: "កខគ"
}
, va = {
thin: "1",
extralight: "2",
"extra-light": "2",
ultralight: "2",
"ultra-light": "2",
light: "3",
regular: "4",
book: "4",
medium: "5",
"semi-bold": "6",
semibold: "6",
"demi-bold": "6",
demibold: "6",
bold: "7",
"extra-bold": "8",
extrabold: "8",
"ultra-bold": "8",
ultrabold: "8",
black: "9",
heavy: "9",
l: "3",
r: "4",
b: "7"
}
, wa = {
i: "i",
italic: "i",
n: "n",
normal: "n"
}
, xa = /^(thin|(?:(?:extra|ultra)-?)?light|regular|book|medium|(?:(?:semi|demi|extra|ultra)-?)?bold|black|heavy|l|r|b|[1-9]00)?(n|i|normal|italic)?$/;
ta.prototype.parse = function() {
for (var a = this.o.length, b = 0; b < a; b++) {
var c = this.o[b].split(":")
, d = c[0].replace(/\+/g, " ")
, e = ["n4"];
if (2 <= c.length) {
var f;
var g = c[1];
f = [];
if (g)
for (var g = g.split(","), l = g.length, h = 0; h < l; h++) {
var k;
k = g[h];
if (k.match(/^[\w-]+$/))
if (k = xa.exec(k.toLowerCase()),
null == k)
k = "";
else {
var m;
m = k[1];
if (null == m || "" == m)
m = "4";
else {
var w = va[m];
m = w ? w : isNaN(m) ? "4" : m.substr(0, 1)
}
k = k[2];
k = [null == k || "" == k ? "n" : wa[k], m].join("")
}
else
k = "";
k && f.push(k)
}
0 < f.length && (e = f);
3 == c.length && (c = c[2],
f = [],
c = c ? c.split(",") : f,
0 < c.length && (c = ua[c[0]]) && (this.I[d] = c))
}
this.I[d] || (c = ua[d]) && (this.I[d] = c);
for (c = 0; c < e.length; c += 1)
this.aa.push(new E(d,e[c]))
}
}
;
function ya(a, b) {
this.a = a;
this.c = b
}
var za = {
Arimo: !0,
Cousine: !0,
Tinos: !0
};
ya.prototype.load = function(a) {
var b = new z
, c = this.a
, d = new qa(this.c.api,v(c),this.c.text)
, e = this.c.families;
sa(d, e);
var f = new ta(e);
f.parse();
x(c, d.d(), A(b));
C(b, function() {
a(f.aa, f.I, za)
})
}
;
function W(a, b) {
this.a = a;
this.c = b;
this.X = []
}
W.prototype.B = function(a) {
var b = this.a;
return v(this.a) + (this.c.api || "//f.fontdeck.com/s/css/js/") + (b.k.location.hostname || b.F.location.hostname) + "/" + a + ".js"
}
;
W.prototype.load = function(a) {
var b = this.c.id
, c = this.a.k
, d = this;
b ? (c.__webfontfontdeckmodule__ || (c.__webfontfontdeckmodule__ = {}),
c.__webfontfontdeckmodule__[b] = function(b, c) {
for (var g = 0, l = c.fonts.length; g < l; ++g) {
var h = c.fonts[g];
d.X.push(new E(h.name,ea("font-weight:" + h.weight + ";font-style:" + h.style)))
}
a(d.X)
}
,
y(this.a, this.B(b), function(b) {
b && a([])
})) : a([])
}
;
function X(a, b) {
this.a = a;
this.c = b
}
X.prototype.B = function(a) {
return (this.c.api || "https://use.typekit.net") + "/" + a + ".js"
}
;
X.prototype.load = function(a) {
var b = this.c.id
, c = this.a.k;
b ? y(this.a, this.B(b), function(b) {
if (b)
a([]);
else if (c.Typekit && c.Typekit.config && c.Typekit.config.fn) {
b = c.Typekit.config.fn;
for (var e = [], f = 0; f < b.length; f += 2)
for (var g = b[f], l = b[f + 1], h = 0; h < l.length; h++)
e.push(new E(g,l[h]));
try {
c.Typekit.load({
events: !1,
classes: !1,
async: !0
})
} catch (k) {}
a(e)
}
}, 2E3) : a([])
}
;
function Y(a, b) {
this.a = a;
this.c = b
}
Y.prototype.B = function(a, b) {
var c = v(this.a)
, d = (this.c.api || "fast.fonts.net/jsapi").replace(/^.*http(s?):(\/\/)?/, "");
return c + "//" + d + "/" + a + ".js" + (b ? "?v=" + b : "")
}
;
Y.prototype.load = function(a) {
function b() {
if (e["__mti_fntLst" + c]) {
var d = e["__mti_fntLst" + c](), g = [], l;
if (d)
for (var h = 0; h < d.length; h++) {
var k = d[h].fontfamily;
void 0 != d[h].fontStyle && void 0 != d[h].fontWeight ? (l = d[h].fontStyle + d[h].fontWeight,
g.push(new E(k,l))) : g.push(new E(k))
}
a(g)
} else
setTimeout(function() {
b()
}, 50)
}
var c = this.c.projectId
, d = this.c.version;
if (c) {
var e = this.a.k;
y(this.a, this.B(c, d), function(c) {
c ? a([]) : b()
}).id = "__MonotypeAPIScript__" + c
} else
a([])
}
;
function Aa(a, b) {
this.a = a;
this.c = b
}
Aa.prototype.load = function(a) {
var b, c, d = this.c.urls || [], e = this.c.families || [], f = this.c.testStrings || {}, g = new z;
b = 0;
for (c = d.length; b < c; b++)
x(this.a, d[b], A(g));
var l = [];
b = 0;
for (c = e.length; b < c; b++)
if (d = e[b].split(":"),
d[1])
for (var h = d[1].split(","), k = 0; k < h.length; k += 1)
l.push(new E(d[0],h[k]));
else
l.push(new E(d[0]));
C(g, function() {
a(l, f)
})
}
;
var Z = new na(window);
Z.q.t.custom = function(a, b) {
return new Aa(b,a)
}
;
Z.q.t.fontdeck = function(a, b) {
return new W(b,a)
}
;
Z.q.t.monotype = function(a, b) {
return new Y(b,a)
}
;
Z.q.t.typekit = function(a, b) {
return new X(b,a)
}
;
Z.q.t.google = function(a, b) {
return new ya(b,a)
}
;
var $ = {
load: n(Z.load, Z)
};
"function" === typeof define && define.amd ? define(function() {
return $
}) : "undefined" !== typeof module && module.exports ? module.exports = $ : (window.WebFont = $,
window.WebFontConfig && Z.load(window.WebFontConfig));
}());
OHA YOOOO