! function(e) { var t = {}; function n(r) { if (t[r]) return t[r].exports; var i = t[r] = { i: r, l: !1, exports: {} }; return e[r].call(i.exports, i, i.exports, n), i.l = !0, i.exports } n.m = e, n.c = t, n.d = function(e, t, r) { n.o(e, t) || Object.defineProperty(e, t, { enumerable: !0, get: r }) }, n.r = function(e) { "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(e, "__esModule", { value: !0 }) }, n.t = function(e, t) { if (1 & t && (e = n(e)), 8 & t) return e; if (4 & t && "object" == typeof e && e && e.__esModule) return e; var r = Object.create(null); if (n.r(r), Object.defineProperty(r, "default", { enumerable: !0, value: e }), 2 & t && "string" != typeof e) for (var i in e) n.d(r, i, function(t) { return e[t] }.bind(null, i)); return r }, n.n = function(e) { var t = e && e.__esModule ? function() { return e.default } : function() { return e }; return n.d(t, "a", t), t }, n.o = function(e, t) { return Object.prototype.hasOwnProperty.call(e, t) }, n.p = "", n(n.s = 3) }([function(e, t, n) { (function(t, n) { ! function() { "use strict"; function r(e, t, n, r, i, o) { return { tag: e, key: t, attrs: n, children: r, text: i, dom: o, domSize: void 0, state: void 0, _state: void 0, events: void 0, instance: void 0, skip: !1 } } r.normalize = function(e) { return Array.isArray(e) ? r("[", void 0, void 0, r.normalizeChildren(e), void 0, void 0) : null != e && "object" != typeof e ? r("#", void 0, void 0, !1 === e ? "" : e, void 0, void 0) : e }, r.normalizeChildren = function(e) { for (var t = 0; t < e.length; t++) e[t] = r.normalize(e[t]); return e }; var i = /(?:(^|#|\.)([^#\.\[\]]+))|(\[(.+?)(?:\s*=\s*("|'|)((?:\\["'\]]|.)*?)\5)?\])/g, o = {}, a = {}.hasOwnProperty; function u(e) { for (var t in e) if (a.call(e, t)) return !1; return !0 } function l(e) { var t, n = arguments[1], l = 2; if (null == e || "string" != typeof e && "function" != typeof e && "function" != typeof e.view) throw Error("The selector must be either a string or a component."); if ("string" == typeof e) var c = o[e] || function(e) { for (var t, n = "div", r = [], a = {}; t = i.exec(e);) { var u = t[1], l = t[2]; if ("" === u && "" !== l) n = l; else if ("#" === u) a.id = l; else if ("." === u) r.push(l); else if ("[" === t[3][0]) { var c = t[6]; c && (c = c.replace(/\\(["'])/g, "$1").replace(/\\\\/g, "\\")), "class" === t[4] ? r.push(c) : a[t[4]] = "" === c ? c : c || !0 } } return r.length > 0 && (a.className = r.join(" ")), o[e] = { tag: n, attrs: a } }(e); if (null == n ? n = {} : ("object" != typeof n || null != n.tag || Array.isArray(n)) && (n = {}, l = 1), arguments.length === l + 1) t = arguments[l], Array.isArray(t) || (t = [t]); else for (t = []; l < arguments.length;) t.push(arguments[l++]); var s = r.normalizeChildren(t); return "string" == typeof e ? function(e, t, n) { var i, o, l = !1, c = t.className || t.class; if (!u(e.attrs) && !u(t)) { var s = {}; for (var f in t) a.call(t, f) && (s[f] = t[f]); t = s } for (var f in e.attrs) a.call(e.attrs, f) && (t[f] = e.attrs[f]); for (var f in void 0 !== c && (void 0 !== t.class && (t.class = void 0, t.className = c), null != e.attrs.className && (t.className = e.attrs.className + " " + c)), t) if (a.call(t, f) && "key" !== f) { l = !0; break } return Array.isArray(n) && 1 === n.length && null != n[0] && "#" === n[0].tag ? o = n[0].children : i = n, r(e.tag, t.key, l ? t : void 0, i, o) }(c, n, s) : r(e, n.key, n, s) } l.trust = function(e) { return null == e && (e = ""), r("<", void 0, void 0, e, void 0, void 0) }, l.fragment = function(e, t) { return r("[", e.key, e, r.normalizeChildren(t), void 0, void 0) }; var c = l; if ((s = function(e) { if (!(this instanceof s)) throw new Error("Promise must be called with `new`"); if ("function" != typeof e) throw new TypeError("executor must be a function"); var n = this, r = [], i = [], o = c(r, !0), a = c(i, !1), u = n._instance = { resolvers: r, rejectors: i }, l = "function" == typeof t ? t : setTimeout; function c(e, t) { return function o(c) { var s; try { if (!t || null == c || "object" != typeof c && "function" != typeof c || "function" != typeof(s = c.then)) l(function() { t || 0 !== e.length || console.error("Possible unhandled promise rejection:", c); for (var n = 0; n < e.length; n++) e[n](c); r.length = 0, i.length = 0, u.state = t, u.retry = function() { o(c) } }); else { if (c === n) throw new TypeError("Promise can't be resolved w/ itself"); f(s.bind(c)) } } catch (e) { a(e) } } } function f(e) { var t = 0; function n(e) { return function(n) { t++ > 0 || e(n) } } var r = n(a); try { e(n(o), r) } catch (e) { r(e) } } f(e) }).prototype.then = function(e, t) { var n, r, i = this._instance; function o(e, t, o, a) { t.push(function(t) { if ("function" != typeof e) o(t); else try { n(e(t)) } catch (e) { r && r(e) } }), "function" == typeof i.retry && a === i.state && i.retry() } var a = new s(function(e, t) { n = e, r = t }); return o(e, i.resolvers, n, !0), o(t, i.rejectors, r, !1), a }, s.prototype.catch = function(e) { return this.then(null, e) }, s.resolve = function(e) { return e instanceof s ? e : new s(function(t) { t(e) }) }, s.reject = function(e) { return new s(function(t, n) { n(e) }) }, s.all = function(e) { return new s(function(t, n) { var r = e.length, i = 0, o = []; if (0 === e.length) t([]); else for (var a = 0; a < e.length; a++) ! function(a) { function u(e) { i++, o[a] = e, i === r && t(o) } null == e[a] || "object" != typeof e[a] && "function" != typeof e[a] || "function" != typeof e[a].then ? u(e[a]) : e[a].then(u, n) }(a) }) }, s.race = function(e) { return new s(function(t, n) { for (var r = 0; r < e.length; r++) e[r].then(t, n) }) }, "undefined" != typeof window) { void 0 === window.Promise && (window.Promise = s); var s = window.Promise } else if (void 0 !== n) { void 0 === n.Promise && (n.Promise = s); s = n.Promise } var f = function(e) { if ("[object Object]" !== Object.prototype.toString.call(e)) return ""; var t = []; for (var n in e) r(n, e[n]); return t.join("&"); function r(e, n) { if (Array.isArray(n)) for (var i = 0; i < n.length; i++) r(e + "[" + i + "]", n[i]); else if ("[object Object]" === Object.prototype.toString.call(n)) for (var i in n) r(e + "[" + i + "]", n[i]); else t.push(encodeURIComponent(e) + (null != n && "" !== n ? "=" + encodeURIComponent(n) : "")) } }, d = new RegExp("^file://", "i"), g = function(e, t) { var n, r = 0; function i() { var e = 0; function t() { 0 == --e && "function" == typeof n && n() } return function n(r) { var i = r.then; return r.then = function() { e++; var o = i.apply(r, arguments); return o.then(t, function(n) { if (t(), 0 === e) throw n }), n(o) }, r } } function o(e, t) { if ("string" == typeof e) { var n = e; null == (e = t || {}).url && (e.url = n) } return e } function a(e, t) { if (null == t) return e; for (var n = e.match(/:[^\/]+/gi) || [], r = 0; r < n.length; r++) { var i = n[r].slice(1); null != t[i] && (e = e.replace(n[r], t[i])) } return e } function u(e, t) { var n = f(t); return "" !== n && (e += (e.indexOf("?") < 0 ? "?" : "&") + n), e } function l(e) { try { return "" !== e ? JSON.parse(e) : null } catch (t) { throw new Error(e) } } function c(e) { return e.responseText } function s(e, t) { if ("function" == typeof e) { if (!Array.isArray(t)) return new e(t); for (var n = 0; n < t.length; n++) t[n] = new e(t[n]) } return t } return { request: function(n, r) { var f = i(); n = o(n, r); var g = new t(function(t, r) { null == n.method && (n.method = "GET"), n.method = n.method.toUpperCase(); var i = "GET" !== n.method && "TRACE" !== n.method && ("boolean" != typeof n.useBody || n.useBody); "function" != typeof n.serialize && (n.serialize = "undefined" != typeof FormData && n.data instanceof FormData ? function(e) { return e } : JSON.stringify), "function" != typeof n.deserialize && (n.deserialize = l), "function" != typeof n.extract && (n.extract = c), n.url = a(n.url, n.data), i ? n.data = n.serialize(n.data) : n.url = u(n.url, n.data); var o = new e.XMLHttpRequest, f = !1, g = o.abort; for (var m in o.abort = function() { f = !0, g.call(o) }, o.open(n.method, n.url, "boolean" != typeof n.async || n.async, "string" == typeof n.user ? n.user : void 0, "string" == typeof n.password ? n.password : void 0), n.serialize !== JSON.stringify || !i || n.headers && n.headers.hasOwnProperty("Content-Type") || o.setRequestHeader("Content-Type", "application/json; charset=utf-8"), n.deserialize !== l || n.headers && n.headers.hasOwnProperty("Accept") || o.setRequestHeader("Accept", "application/json, text/*"), n.withCredentials && (o.withCredentials = n.withCredentials), n.headers)({}).hasOwnProperty.call(n.headers, m) && o.setRequestHeader(m, n.headers[m]); "function" == typeof n.config && (o = n.config(o, n) || o), o.onreadystatechange = function() { if (!f && 4 === o.readyState) try { var e = n.extract !== c ? n.extract(o, n) : n.deserialize(n.extract(o, n)); if (o.status >= 200 && o.status < 300 || 304 === o.status || d.test(n.url)) t(s(n.type, e)); else { var i = new Error(o.responseText); for (var a in e) i[a] = e[a]; r(i) } } catch (e) { r(e) } }, i && null != n.data ? o.send(n.data) : o.send() }); return !0 === n.background ? g : f(g) }, jsonp: function(n, l) { var c = i(); n = o(n, l); var f = new t(function(t, i) { var o = n.callbackName || "_mithril_" + Math.round(1e16 * Math.random()) + "_" + r++, l = e.document.createElement("script"); e[o] = function(r) { l.parentNode.removeChild(l), t(s(n.type, r)), delete e[o] }, l.onerror = function() { l.parentNode.removeChild(l), i(new Error("JSONP request failed")), delete e[o] }, null == n.data && (n.data = {}), n.url = a(n.url, n.data), n.data[n.callbackKey || "callback"] = o, l.src = u(n.url, n.data), e.document.documentElement.appendChild(l) }); return !0 === n.background ? f : c(f) }, setCompletionCallback: function(e) { n = e } } }(window, s), m = function(e) { var t, n = e.document, i = n.createDocumentFragment(), o = { svg: "http://www.w3.org/2000/svg", math: "http://www.w3.org/1998/Math/MathML" }; function a(e) { return e.attrs && e.attrs.xmlns || o[e.tag] } function u(e, t, n, r, i, o, a) { for (var u = n; u < r; u++) { var c = t[u]; null != c && l(e, c, i, a, o) } } function l(e, t, o, f, d) { var g = t.tag; if ("string" != typeof g) return function(e, t, n, r, o) { if (s(t, n), null != t.instance) { var a = l(e, t.instance, n, r, o); return t.dom = t.instance.dom, t.domSize = null != t.dom ? t.instance.domSize : 0, p(e, a, o), a } return t.domSize = 0, i }(e, t, o, f, d); switch (t.state = {}, null != t.attrs && b(t.attrs, t, o), g) { case "#": return function(e, t, r) { return t.dom = n.createTextNode(t.children), p(e, t.dom, r), t.dom }(e, t, d); case "<": return c(e, t, d); case "[": return function(e, t, r, i, o) { var a = n.createDocumentFragment(); if (null != t.children) { var l = t.children; u(a, l, 0, l.length, r, null, i) } return t.dom = a.firstChild, t.domSize = a.childNodes.length, p(e, a, o), a }(e, t, o, f, d); default: return function(e, t, i, o, l) { var c = t.tag, s = t.attrs, f = s && s.is, d = (o = a(t) || o) ? f ? n.createElementNS(o, c, { is: f }) : n.createElementNS(o, c) : f ? n.createElement(c, { is: f }) : n.createElement(c); t.dom = d, null != s && function(e, t, n) { for (var r in t) x(e, r, null, t[r], n) }(t, s, o); if (p(e, d, l), null != t.attrs && null != t.attrs.contenteditable) h(t); else if (null != t.text && ("" !== t.text ? d.textContent = t.text : t.children = [r("#", void 0, void 0, t.text, void 0, void 0)]), null != t.children) { var g = t.children; u(d, g, 0, g.length, i, null, o), function(e) { var t = e.attrs; "select" === e.tag && null != t && ("value" in t && x(e, "value", null, t.value, void 0), "selectedIndex" in t && x(e, "selectedIndex", null, t.selectedIndex, void 0)) }(t) } return d }(e, t, o, f, d) } } function c(e, t, r) { var i = { caption: "table", thead: "table", tbody: "table", tfoot: "table", tr: "tbody", th: "tr", td: "tr", colgroup: "table", col: "colgroup" } [(t.children.match(/^\s*?<(\w+)/im) || [])[1]] || "div", o = n.createElement(i); o.innerHTML = t.children, t.dom = o.firstChild, t.domSize = o.childNodes.length; for (var a, u = n.createDocumentFragment(); a = o.firstChild;) u.appendChild(a); return p(e, u, r), u } function s(e, t) { var n; if ("function" == typeof e.tag.view) { if (e.state = Object.create(e.tag), null != (n = e.state.view).$$reentrantLock$$) return i; n.$$reentrantLock$$ = !0 } else { if (e.state = void 0, null != (n = e.tag).$$reentrantLock$$) return i; n.$$reentrantLock$$ = !0, e.state = null != e.tag.prototype && "function" == typeof e.tag.prototype.view ? new e.tag(e) : e.tag(e) } if (e._state = e.state, null != e.attrs && b(e.attrs, e, t), b(e._state, e, t), e.instance = r.normalize(e._state.view.call(e.state, e)), e.instance === e) throw Error("A view cannot return the vnode it received as argument"); n.$$reentrantLock$$ = null } function f(e, t, n, r, i, o, a) { if (t !== n && (null != t || null != n)) if (null == t) u(e, n, 0, n.length, i, o, a); else if (null == n) v(t, 0, t.length, n); else { if (t.length === n.length) { for (var c = !1, s = 0; s < n.length; s++) if (null != n[s] && null != t[s]) { c = null == n[s].key && null == t[s].key; break } if (c) { for (s = 0; s < t.length; s++) t[s] !== n[s] && (null == t[s] && null != n[s] ? l(e, n[s], i, a, M(t, s + 1, o)) : null == n[s] ? v(t, s, s + 1, n) : d(e, t[s], n[s], i, M(t, s + 1, o), r, a)); return } } if (r = r || function(e, t) { if (null != e.pool && Math.abs(e.pool.length - t.length) <= Math.abs(e.length - t.length)) { var n = e[0] && e[0].children && e[0].children.length || 0, r = e.pool[0] && e.pool[0].children && e.pool[0].children.length || 0, i = t[0] && t[0].children && t[0].children.length || 0; if (Math.abs(r - i) <= Math.abs(n - i)) return !0 } return !1 }(t, n)) { var f = t.pool; t = t.concat(t.pool) } for (var h, w = 0, y = 0, x = t.length - 1, N = n.length - 1; x >= w && N >= y;) { if ((b = t[w]) !== (I = n[y]) || r) if (null == b) w++; else if (null == I) y++; else if (b.key === I.key) { var D = null != f && w >= t.length - f.length || null == f && r; y++, d(e, b, I, i, M(t, ++w, o), D, a), r && b.tag === I.tag && p(e, m(b), o) } else { if ((b = t[x]) !== I || r) if (null == b) x--; else if (null == I) y++; else { if (b.key !== I.key) break; D = null != f && x >= t.length - f.length || null == f && r; d(e, b, I, i, M(t, x + 1, o), D, a), (r || y < N) && p(e, m(b), M(t, w, o)), x--, y++ } else x--, y++ } else w++, y++ } for (; x >= w && N >= y;) { var b, I; if ((b = t[x]) !== (I = n[N]) || r) if (null == b) x--; else if (null == I) N--; else if (b.key === I.key) { D = null != f && x >= t.length - f.length || null == f && r; d(e, b, I, i, M(t, x + 1, o), D, a), r && b.tag === I.tag && p(e, m(b), o), null != b.dom && (o = b.dom), x--, N-- } else { if (h || (h = g(t, x)), null != I) { var T = h[I.key]; if (null != T) { var j = t[T]; D = null != f && T >= t.length - f.length || null == f && r; d(e, j, I, i, M(t, x + 1, o), r, a), p(e, m(j), o), t[T].skip = !0, null != j.dom && (o = j.dom) } else { o = l(e, I, i, a, o) } } N-- } else x--, N--; if (N < y) break } u(e, n, y, N + 1, i, o, a), v(t, w, x + 1, n) } } function d(e, t, n, i, o, u, g) { var M = t.tag; if (M === n.tag) { if (n.state = t.state, n._state = t._state, n.events = t.events, !u && function(e, t) { var n, r; null != e.attrs && "function" == typeof e.attrs.onbeforeupdate && (n = e.attrs.onbeforeupdate.call(e.state, e, t)); "string" != typeof e.tag && "function" == typeof e._state.onbeforeupdate && (r = e._state.onbeforeupdate.call(e.state, e, t)); if (!(void 0 === n && void 0 === r || n || r)) return e.dom = t.dom, e.domSize = t.domSize, e.instance = t.instance, !0; return !1 }(n, t)) return; if ("string" == typeof M) switch (null != n.attrs && (u ? (n.state = {}, b(n.attrs, n, i)) : I(n.attrs, n, i)), M) { case "#": ! function(e, t) { e.children.toString() !== t.children.toString() && (e.dom.nodeValue = t.children); t.dom = e.dom }(t, n); break; case "<": ! function(e, t, n, r) { t.children !== n.children ? (m(t), c(e, n, r)) : (n.dom = t.dom, n.domSize = t.domSize) }(e, t, n, o); break; case "[": ! function(e, t, n, r, i, o, a) { f(e, t.children, n.children, r, i, o, a); var u = 0, l = n.children; if (n.dom = null, null != l) { for (var c = 0; c < l.length; c++) { var s = l[c]; null != s && null != s.dom && (null == n.dom && (n.dom = s.dom), u += s.domSize || 1) } 1 !== u && (n.domSize = u) } }(e, t, n, u, i, o, g); break; default: ! function(e, t, n, i, o) { var u = t.dom = e.dom; o = a(t) || o, "textarea" === t.tag && (null == t.attrs && (t.attrs = {}), null != t.text && (t.attrs.value = t.text, t.text = void 0)); (function(e, t, n, r) { if (null != n) for (var i in n) x(e, i, t && t[i], n[i], r); if (null != t) for (var i in t) null != n && i in n || ("className" === i && (i = "class"), "o" !== i[0] || "n" !== i[1] || N(i) ? "key" !== i && e.dom.removeAttribute(i) : D(e, i, void 0)) })(t, e.attrs, t.attrs, o), null != t.attrs && null != t.attrs.contenteditable ? h(t) : null != e.text && null != t.text && "" !== t.text ? e.text.toString() !== t.text.toString() && (e.dom.firstChild.nodeValue = t.text) : (null != e.text && (e.children = [r("#", void 0, void 0, e.text, void 0, e.dom.firstChild)]), null != t.text && (t.children = [r("#", void 0, void 0, t.text, void 0, void 0)]), f(u, e.children, t.children, n, i, null, o)) }(t, n, u, i, g) } else ! function(e, t, n, i, o, a, u) { if (a) s(n, i); else { if (n.instance = r.normalize(n._state.view.call(n.state, n)), n.instance === n) throw Error("A view cannot return the vnode it received as argument"); null != n.attrs && I(n.attrs, n, i), I(n._state, n, i) } null != n.instance ? (null == t.instance ? l(e, n.instance, i, u, o) : d(e, t.instance, n.instance, i, o, a, u), n.dom = n.instance.dom, n.domSize = n.instance.domSize) : null != t.instance ? (w(t.instance, null), n.dom = void 0, n.domSize = 0) : (n.dom = t.dom, n.domSize = t.domSize) }(e, t, n, i, o, u, g) } else w(t, null), l(e, n, i, g, o) } function g(e, t) { var n = {}, r = 0; for (r = 0; r < t; r++) { var i = e[r]; if (null != i) { var o = i.key; null != o && (n[o] = r) } } return n } function m(e) { var t = e.domSize; if (null != t || null == e.dom) { var r = n.createDocumentFragment(); if (t > 0) { for (var i = e.dom; --t;) r.appendChild(i.nextSibling); r.insertBefore(i, r.firstChild) } return r } return e.dom } function M(e, t, n) { for (; t < e.length; t++) if (null != e[t] && null != e[t].dom) return e[t].dom; return n } function p(e, t, n) { n && n.parentNode ? e.insertBefore(t, n) : e.appendChild(t) } function h(e) { var t = e.children; if (null != t && 1 === t.length && "<" === t[0].tag) { var n = t[0].children; e.dom.innerHTML !== n && (e.dom.innerHTML = n) } else if (null != e.text || null != t && 0 !== t.length) throw new Error("Child node of a contenteditable must be trusted") } function v(e, t, n, r) { for (var i = t; i < n; i++) { var o = e[i]; null != o && (o.skip ? o.skip = !1 : w(o, r)) } } function w(e, t) { var n, r = 1, i = 0; e.attrs && "function" == typeof e.attrs.onbeforeremove && (null != (n = e.attrs.onbeforeremove.call(e.state, e)) && "function" == typeof n.then && (r++, n.then(o, o))); "string" != typeof e.tag && "function" == typeof e._state.onbeforeremove && (null != (n = e._state.onbeforeremove.call(e.state, e)) && "function" == typeof n.then && (r++, n.then(o, o))); function o() { if (++i === r && (function e(t) { t.attrs && "function" == typeof t.attrs.onremove && t.attrs.onremove.call(t.state, t); if ("string" != typeof t.tag) "function" == typeof t._state.onremove && t._state.onremove.call(t.state, t), null != t.instance && e(t.instance); else { var n = t.children; if (Array.isArray(n)) for (var r = 0; r < n.length; r++) { var i = n[r]; null != i && e(i) } } }(e), e.dom)) { var n = e.domSize || 1; if (n > 1) for (var o = e.dom; --n;) y(o.nextSibling); y(e.dom), null == t || null != e.domSize || function(e) { return null != e && (e.oncreate || e.onupdate || e.onbeforeremove || e.onremove) }(e.attrs) || "string" != typeof e.tag || (t.pool ? t.pool.push(e) : t.pool = [e]) } } o() } function y(e) { var t = e.parentNode; null != t && t.removeChild(e) } function x(e, t, r, i, o) { var a = e.dom; if ("key" !== t && "is" !== t && (r !== i || function(e, t) { return "value" === t || "checked" === t || "selectedIndex" === t || "selected" === t && e.dom === n.activeElement }(e, t) || "object" == typeof i) && void 0 !== i && !N(t)) { var u = t.indexOf(":"); if (u > -1 && "xlink" === t.substr(0, u)) a.setAttributeNS("http://www.w3.org/1999/xlink", t.slice(u + 1), i); else if ("o" === t[0] && "n" === t[1] && "function" == typeof i) D(e, t, i); else if ("style" === t) ! function(e, t, n) { t === n && (e.style.cssText = "", t = null); if (null == n) e.style.cssText = ""; else if ("string" == typeof n) e.style.cssText = n; else { for (var r in "string" == typeof t && (e.style.cssText = ""), n) e.style[r] = n[r]; if (null != t && "string" != typeof t) for (var r in t) r in n || (e.style[r] = "") } }(a, r, i); else if (t in a && ! function(e) { return "href" === e || "list" === e || "form" === e || "width" === e || "height" === e }(t) && void 0 === o && ! function(e) { return e.attrs.is || e.tag.indexOf("-") > -1 }(e)) { if ("value" === t) { var l = "" + i; if (("input" === e.tag || "textarea" === e.tag) && e.dom.value === l && e.dom === n.activeElement) return; if ("select" === e.tag) if (null === i) { if (-1 === e.dom.selectedIndex && e.dom === n.activeElement) return } else if (null !== r && e.dom.value === l && e.dom === n.activeElement) return; if ("option" === e.tag && null != r && e.dom.value === l) return } if ("input" === e.tag && "type" === t) return void a.setAttribute(t, i); a[t] = i } else "boolean" == typeof i ? i ? a.setAttribute(t, "") : a.removeAttribute(t) : a.setAttribute("className" === t ? "class" : t, i) } } function N(e) { return "oninit" === e || "oncreate" === e || "onupdate" === e || "onremove" === e || "onbeforeremove" === e || "onbeforeupdate" === e } function D(e, n, r) { var i = e.dom, o = "function" != typeof t ? r : function(e) { var n = r.call(i, e); return t.call(i, e), n }; if (n in i) i[n] = "function" == typeof r ? o : null; else { var a = n.slice(2); if (void 0 === e.events && (e.events = {}), e.events[n] === o) return; null != e.events[n] && i.removeEventListener(a, e.events[n], !1), "function" == typeof r && (e.events[n] = o, i.addEventListener(a, e.events[n], !1)) } } function b(e, t, n) { "function" == typeof e.oninit && e.oninit.call(t.state, t), "function" == typeof e.oncreate && n.push(e.oncreate.bind(t.state, t)) } function I(e, t, n) { "function" == typeof e.onupdate && n.push(e.onupdate.bind(t.state, t)) } return { render: function(e, t) { if (!e) throw new Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined."); var i = [], o = n.activeElement, a = e.namespaceURI; null == e.vnodes && (e.textContent = ""), Array.isArray(t) || (t = [t]), f(e, e.vnodes, r.normalizeChildren(t), !1, i, null, "http://www.w3.org/1999/xhtml" === a ? void 0 : a), e.vnodes = t, null != o && n.activeElement !== o && o.focus(); for (var u = 0; u < i.length; u++) i[u]() }, setEventCallback: function(e) { return t = e } } }; var M = function(e) { var t = m(e); t.setEventCallback(function(e) { !1 === e.redraw ? e.redraw = void 0 : i() }); var n = []; function r(e) { var t = n.indexOf(e); t > -1 && n.splice(t, 2) } function i() { for (var e = 1; e < n.length; e += 2) n[e]() } return { subscribe: function(e, t) { r(e), n.push(e, function(e) { var t = 0, n = null, r = "function" == typeof requestAnimationFrame ? requestAnimationFrame : setTimeout; return function() { var i = Date.now(); 0 === t || i - t >= 16 ? (t = i, e()) : null === n && (n = r(function() { n = null, e(), t = Date.now() }, 16 - (i - t))) } }(t)) }, unsubscribe: r, redraw: i, render: t.render } }(window); g.setCompletionCallback(M.redraw); c.mount = function(e) { return function(t, n) { if (null === n) return e.render(t, []), void e.unsubscribe(t); if (null == n.view && "function" != typeof n) throw new Error("m.mount(element, component) expects a component, not a vnode"); e.subscribe(t, function() { e.render(t, r(n)) }), e.redraw() } }(M); var p = s, h = function(e) { if ("" === e || null == e) return {}; "?" === e.charAt(0) && (e = e.slice(1)); for (var t = e.split("&"), n = {}, r = {}, i = 0; i < t.length; i++) { var o = t[i].split("="), a = decodeURIComponent(o[0]), u = 2 === o.length ? decodeURIComponent(o[1]) : ""; "true" === u ? u = !0 : "false" === u && (u = !1); var l = a.split(/\]\[?|\[/), c = n; a.indexOf("[") > -1 && l.pop(); for (var s = 0; s < l.length; s++) { var f = l[s], d = l[s + 1], g = "" == d || !isNaN(parseInt(d, 10)), m = s === l.length - 1; if ("" === f) null == r[a = l.slice(0, s).join()] && (r[a] = 0), f = r[a]++; null == c[f] && (c[f] = m ? u : g ? [] : {}), c = c[f] } } return n }, v = function(e) { var n, r = "function" == typeof e.history.pushState, i = "function" == typeof t ? t : setTimeout; function o(t) { var n = e.location[t].replace(/(?:%[a-f89][a-f0-9])+/gim, decodeURIComponent); return "pathname" === t && "/" !== n[0] && (n = "/" + n), n } function a(e, t, n) { var r = e.indexOf("?"), i = e.indexOf("#"), o = r > -1 ? r : i > -1 ? i : e.length; if (r > -1) { var a = i > -1 ? i : e.length, u = h(e.slice(r + 1, a)); for (var l in u) t[l] = u[l] } if (i > -1) { var c = h(e.slice(i + 1)); for (var l in c) n[l] = c[l] } return e.slice(0, o) } var u = { prefix: "#!", getPath: function() { switch (u.prefix.charAt(0)) { case "#": return o("hash").slice(u.prefix.length); case "?": return o("search").slice(u.prefix.length) + o("hash"); default: return o("pathname").slice(u.prefix.length) + o("search") + o("hash") } }, setPath: function(t, n, i) { var o = {}, l = {}; if (t = a(t, o, l), null != n) { for (var c in n) o[c] = n[c]; t = t.replace(/:([^\/]+)/g, function(e, t) { return delete o[t], n[t] }) } var s = f(o); s && (t += "?" + s); var d = f(l); if (d && (t += "#" + d), r) { var g = i ? i.state : null, m = i ? i.title : null; e.onpopstate(), i && i.replace ? e.history.replaceState(g, m, u.prefix + t) : e.history.pushState(g, m, u.prefix + t) } else e.location.href = u.prefix + t } }; return u.defineRoutes = function(t, o, l) { function c() { var n = u.getPath(), r = {}, i = a(n, r, r), c = e.history.state; if (null != c) for (var s in c) r[s] = c[s]; for (var f in t) { var d = new RegExp("^" + f.replace(/:[^\/]+?\.{3}/g, "(.*?)").replace(/:[^\/]+/g, "([^\\/]+)") + "/?$"); if (d.test(i)) return void i.replace(d, function() { for (var e = f.match(/:[^\/]+/g) || [], i = [].slice.call(arguments, 1, -2), a = 0; a < e.length; a++) r[e[a].replace(/:|\./g, "")] = decodeURIComponent(i[a]); o(t[f], r, n, f) }) } l(n, r) } r ? e.onpopstate = function(e) { return function() { null == n && (n = i(function() { n = null, e() })) } }(c) : "#" === u.prefix.charAt(0) && (e.onhashchange = c), c() }, u }; c.route = function(e, t) { var n, i, o, a, u, l = v(e), c = function(e, c, s) { if (null == e) throw new Error("Ensure the DOM element that was passed to `m.route` is not undefined"); var f = function() { null != n && t.render(e, n(r(i, o.key, o))) }, d = function(e) { if (e === c) throw new Error("Could not resolve default route " + c); l.setPath(c, null, { replace: !0 }) }; l.defineRoutes(s, function(e, t, r) { var l = u = function(e, c) { l === u && (i = null == c || "function" != typeof c.view && "function" != typeof c ? "div" : c, o = t, a = r, u = null, n = (e.render || function(e) { return e }).bind(e), f()) }; e.view || "function" == typeof e ? l({}, e) : e.onmatch ? p.resolve(e.onmatch(t, r)).then(function(t) { l(e, t) }, d) : l(e, "div") }, d), t.subscribe(e, f) }; return c.set = function(e, t, n) { null != u && ((n = n || {}).replace = !0), u = null, l.setPath(e, t, n) }, c.get = function() { return a }, c.prefix = function(e) { l.prefix = e }, c.link = function(e) { e.dom.setAttribute("href", l.prefix + e.attrs.href), e.dom.onclick = function(e) { if (!(e.ctrlKey || e.metaKey || e.shiftKey || 2 === e.which)) { e.preventDefault(), e.redraw = !1; var t = this.getAttribute("href"); 0 === t.indexOf(l.prefix) && (t = t.slice(l.prefix.length)), c.set(t, void 0, void 0) } } }, c.param = function(e) { return void 0 !== o && void 0 !== e ? o[e] : o }, c }(window, M), c.withAttr = function(e, t, n) { return function(r) { t.call(n || this, e in r.currentTarget ? r.currentTarget[e] : r.currentTarget.getAttribute(e)) } }; var w = m(window); c.render = w.render, c.redraw = M.redraw, c.request = g.request, c.jsonp = g.jsonp, c.parseQueryString = h, c.buildQueryString = f, c.version = "1.1.6", c.vnode = r, e.exports = c }() }).call(this, n(4).setImmediate, n(1)) }, function(e, t) { var n; n = function() { return this }(); try { n = n || Function("return this")() || (0, eval)("this") } catch (e) { "object" == typeof window && (n = window) } e.exports = n }, function(e, t, n) { "use strict"; Object.defineProperty(t, "__esModule", { value: !0 }); var r = {}; t.default = { update: function(e) { r = Object.assign({}, { ratio: "landscape" }, e) }, data: function() { return r } } }, function(e, t, n) { "use strict"; (function(e) { var t = i(n(7)), r = i(n(2)); function i(e) { return e && e.__esModule ? e : { default: e } } window.MediumWidget = { Init: function(n) { var i = document.body.querySelector("" + (n.renderTo || "#medium-widget")); return r.default.update(n.params), window.MediumWidget.unmount = function() { e.mount(i, null) }, e.mount(i, t.default), e } } }).call(this, n(0)) }, function(e, t, n) { (function(e) { var r = void 0 !== e && e || "undefined" != typeof self && self || window, i = Function.prototype.apply; function o(e, t) { this._id = e, this._clearFn = t } t.setTimeout = function() { return new o(i.call(setTimeout, r, arguments), clearTimeout) }, t.setInterval = function() { return new o(i.call(setInterval, r, arguments), clearInterval) }, t.clearTimeout = t.clearInterval = function(e) { e && e.close() }, o.prototype.unref = o.prototype.ref = function() {}, o.prototype.close = function() { this._clearFn.call(r, this._id) }, t.enroll = function(e, t) { clearTimeout(e._idleTimeoutId), e._idleTimeout = t }, t.unenroll = function(e) { clearTimeout(e._idleTimeoutId), e._idleTimeout = -1 }, t._unrefActive = t.active = function(e) { clearTimeout(e._idleTimeoutId); var t = e._idleTimeout; t >= 0 && (e._idleTimeoutId = setTimeout(function() { e._onTimeout && e._onTimeout() }, t)) }, n(5), t.setImmediate = "undefined" != typeof self && self.setImmediate || void 0 !== e && e.setImmediate || this && this.setImmediate, t.clearImmediate = "undefined" != typeof self && self.clearImmediate || void 0 !== e && e.clearImmediate || this && this.clearImmediate }).call(this, n(1)) }, function(e, t, n) { (function(e, t) { ! function(e, n) { "use strict"; if (!e.setImmediate) { var r, i = 1, o = {}, a = !1, u = e.document, l = Object.getPrototypeOf && Object.getPrototypeOf(e); l = l && l.setTimeout ? l : e, "[object process]" === {}.toString.call(e.process) ? r = function(e) { t.nextTick(function() { s(e) }) } : function() { if (e.postMessage && !e.importScripts) { var t = !0, n = e.onmessage; return e.onmessage = function() { t = !1 }, e.postMessage("", "*"), e.onmessage = n, t } }() ? function() { var t = "setImmediate$" + Math.random() + "$", n = function(n) { n.source === e && "string" == typeof n.data && 0 === n.data.indexOf(t) && s(+n.data.slice(t.length)) }; e.addEventListener ? e.addEventListener("message", n, !1) : e.attachEvent("onmessage", n), r = function(n) { e.postMessage(t + n, "*") } }() : e.MessageChannel ? function() { var e = new MessageChannel; e.port1.onmessage = function(e) { s(e.data) }, r = function(t) { e.port2.postMessage(t) } }() : u && "onreadystatechange" in u.createElement("script") ? function() { var e = u.documentElement; r = function(t) { var n = u.createElement("script"); n.onreadystatechange = function() { s(t), n.onreadystatechange = null, e.removeChild(n), n = null }, e.appendChild(n) } }() : r = function(e) { setTimeout(s, 0, e) }, l.setImmediate = function(e) { "function" != typeof e && (e = new Function("" + e)); for (var t = new Array(arguments.length - 1), n = 0; n < t.length; n++) t[n] = arguments[n + 1]; var a = { callback: e, args: t }; return o[i] = a, r(i), i++ }, l.clearImmediate = c } function c(e) { delete o[e] } function s(e) { if (a) setTimeout(s, 0, e); else { var t = o[e]; if (t) { a = !0; try { ! function(e) { var t = e.callback, r = e.args; switch (r.length) { case 0: t(); break; case 1: t(r[0]); break; case 2: t(r[0], r[1]); break; case 3: t(r[0], r[1], r[2]); break; default: t.apply(n, r) } }(t) } finally { c(e), a = !1 } } } } }("undefined" == typeof self ? void 0 === e ? this : e : self) }).call(this, n(1), n(6)) }, function(e, t) { var n, r, i = e.exports = {}; function o() { throw new Error("setTimeout has not been defined") } function a() { throw new Error("clearTimeout has not been defined") } function u(e) { if (n === setTimeout) return setTimeout(e, 0); if ((n === o || !n) && setTimeout) return n = setTimeout, setTimeout(e, 0); try { return n(e, 0) } catch (t) { try { return n.call(null, e, 0) } catch (t) { return n.call(this, e, 0) } } }! function() { try { n = "function" == typeof setTimeout ? setTimeout : o } catch (e) { n = o } try { r = "function" == typeof clearTimeout ? clearTimeout : a } catch (e) { r = a } }(); var l, c = [], s = !1, f = -1; function d() { s && l && (s = !1, l.length ? c = l.concat(c) : f = -1, c.length && g()) } function g() { if (!s) { var e = u(d); s = !0; for (var t = c.length; t;) { for (l = c, c = []; ++f < t;) l && l[f].run(); f = -1, t = c.length } l = null, s = !1, function(e) { if (r === clearTimeout) return clearTimeout(e); if ((r === a || !r) && clearTimeout) return r = clearTimeout, clearTimeout(e); try { r(e) } catch (t) { try { return r.call(null, e) } catch (t) { return r.call(this, e) } } }(e) } } function m(e, t) { this.fun = e, this.array = t } function M() {} i.nextTick = function(e) { var t = new Array(arguments.length - 1); if (arguments.length > 1) for (var n = 1; n < arguments.length; n++) t[n - 1] = arguments[n]; c.push(new m(e, t)), 1 !== c.length || s || u(g) }, m.prototype.run = function() { this.fun.apply(null, this.array) }, i.title = "browser", i.browser = !0, i.env = {}, i.argv = [], i.version = "", i.versions = {}, i.on = M, i.addListener = M, i.once = M, i.off = M, i.removeListener = M, i.removeAllListeners = M, i.emit = M, i.prependListener = M, i.prependOnceListener = M, i.listeners = function(e) { return [] }, i.binding = function(e) { throw new Error("process.binding is not supported") }, i.cwd = function() { return "/" }, i.chdir = function(e) { throw new Error("process.chdir is not supported") }, i.umask = function() { return 0 } }, function(e, t, n) { "use strict"; (function(e) { Object.defineProperty(t, "__esModule", { value: !0 }), n(8); var r = function(e) { return e && e.__esModule ? e : { default: e } }(n(13)); t.default = function() { return { view: function() { return e("section.medium-widget", [e(".medium-widget__wrapper", [e(r.default)])]) } } } }).call(this, n(0)) }, function(e, t, n) { var r = n(9); "string" == typeof r && (r = [ [e.i, r, ""] ]); var i = { hmr: !0, transform: void 0, insertInto: void 0 }; n(11)(r, i); r.locals && (e.exports = r.locals) }, function(e, t, n) { (e.exports = n(10)(!1)).push([e.i, ".medium-widget {\n font-size: 1rem;\n line-height: 1.5rem;\n /* Article */ }\n .medium-widget__loader {\n margin: 0 auto;\n border: 4px solid #f3f3f3;\n border-top: 4px solid #03a87c;\n border-radius: 50%;\n width: 50px;\n height: 50px;\n -webkit-animation: loader-spin 0.8s linear infinite;\n animation: loader-spin 0.8s linear infinite; }\n .medium-widget-article__item {\n font-size: 14px;\n padding-top: 15px;\n padding-bottom: 15px;\n padding-left: 15px;\n padding-right: 15px; }\n .medium-widget-article__row {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n margin-left: -15px;\n margin-right: -15px; }\n .medium-widget-article__row .medium-widget-article__item {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 1;\n -ms-flex: 1 1;\n flex: 1 1; }\n .medium-widget-article__title {\n display: inline-block;\n font-weight: 700;\n cursor: pointer;\n font-size: 18px;\n color: rgba(0, 0, 0, 0.9);\n border: none;\n text-decoration: none; }\n .medium-widget-article__title:after, .medium-widget-article__title:before {\n display: none; }\n .medium-widget-article__info {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n margin-top: 5px;\n margin-left: -5px;\n margin-right: -5px;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap; }\n .medium-widget-article__info > div {\n padding: 0 5px;\n position: relative;\n height: 30px; }\n .medium-widget-article__column {\n width: 100%; }\n .medium-widget-article__column .medium-widget-article__image img {\n width: 100%;\n margin-bottom: 10px; }\n .medium-widget-article__grid {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n width: 100%; }\n .medium-widget-article__content {\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1; }\n .medium-widget-article__description {\n color: rgba(0, 0, 0, 0.5);\n margin-top: 5px;\n line-height: 1.3em; }\n .medium-widget-article__image {\n -webkit-box-flex: 0;\n -ms-flex: 0;\n flex: 0;\n display: block;\n cursor: pointer;\n border: none;\n text-decoration: none; }\n .medium-widget-article__image:after, .medium-widget-article__image:before {\n display: none; }\n .medium-widget-article__image img {\n width: 150px;\n margin-right: 15px; }\n .medium-widget-article__author-name {\n margin: 0px 0px 0px 10px;\n color: rgba(0, 0, 0, 0.9);\n line-height: 1em; }\n .medium-widget-article__author {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center; }\n .medium-widget-article__avatar-picture {\n max-width: 30px;\n border-radius: 50%; }\n .medium-widget-article__date {\n color: rgba(0, 0, 0, 0.5);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n line-height: 1em; }\n .medium-widget-article__clap {\n color: rgba(0, 0, 0, 0.9);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center; }\n .medium-widget-article__clap:before {\n content: '';\n background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIxNHB4IiBoZWlnaHQ9IjE1cHgiIHZpZXdCb3g9IjAgMCAxNCAxNSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5jbGFwPC90aXRsZT4gICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+ICAgIDxkZWZzPjwvZGVmcz4gICAgPGcgaWQ9IkxhbmRpbmciIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPiAgICAgICAgPGcgaWQ9ImNsYXAiIGZpbGw9IiMwMDAwMDAiPiAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJGaWxsLTEiIHBvaW50cz0iNi4zMTg5IDAgNi43NjI5IDEuNzI5IDcuMjA2OSAwIj48L3BvbHlnb24+ICAgICAgICAgICAgPHBvbHlnb24gaWQ9IkZpbGwtMiIgcG9pbnRzPSI4LjEwMDkgMi4yMDIzIDkuMTczOSAwLjcxMzMgOC4zMzg5IDAuNDQwMyI+PC9wb2x5Z29uPiAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJGaWxsLTMiIHBvaW50cz0iNC4zNDg4IDAuNzEzNyA1LjQyMDggMi4yMDI3IDUuMTgyOCAwLjQzOTciPjwvcG9seWdvbj4gICAgICAgICAgICA8cGF0aCBkPSJNMTIuNTc3NCw3Ljc1ODYgTDEwLjgxNDQsNC42NTY2IEMxMC42NDc0LDQuNDA4NiAxMC40MTM0LDQuMjQ1NiAxMC4xNjA0LDQuMjA0NiBDOS45NzM0LDQuMTcwNiA5Ljc4MDQsNC4yMTc2IDkuNjI4NCw0LjMzMzYgQzkuNDU1NCw0LjQ2ODYgOS4zNTI0LDQuNjMzNiA5LjMxNzQsNC44MjI2IEM5LjMyNzQsNC44MzU2IDkuMzM4NCw0Ljg0NjYgOS4zNDg0LDQuODYwNiBMMTEuMDA1NCw3Ljc3NjYgQzEyLjE0MjQsOS44NTQ2IDExLjc4MDQsMTEuODQxNiA5LjkzMTQsMTMuNjkwNiBDOS44Mjg0LDEzLjc5MjYgOS43MjI0LDEzLjg5MDYgOS42MTA0LDEzLjk4MzYgQzEwLjMxMzQsMTMuODkxNiAxMC45Njg0LDEzLjU1MzYgMTEuNTY0NCwxMi45NTY2IEMxMy40NzA0LDExLjA1MTYgMTMuMzM4NCw5LjAyMTYgMTIuNTc3NCw3Ljc1ODYiIGlkPSJGaWxsLTQiPjwvcGF0aD4gICAgICAgICAgICA8cGF0aCBkPSJNNi44MDk4LDUuNzY0NCBDNi43MTg4LDUuMjgxNCA2Ljg2NTgsNC44NTA0IDcuMjEyOCw0LjUxNjQgTDUuNzU5OCwzLjA2MjQgQzUuNDY4OCwyLjc2ODQgNC45NTY4LDIuNzY4NCA0LjY2NDgsMy4wNjI0IEM0LjU2MDgsMy4xNjc0IDQuNTA1OCwzLjI5NTQgNC40NzI4LDMuNDI5NCBMNi44MDk4LDUuNzY0NCBaIiBpZD0iRmlsbC03Ij48L3BhdGg+ICAgICAgICAgICAgPHBhdGggZD0iTTguNjk0MSw1LjI3MTMgQzguNTY3MSw1LjA4MzMgOC4zODAxLDQuOTUwMyA4LjE4MTEsNC45MTczIEM4LjA0OTEsNC44OTMzIDcuOTEyMSw0LjkyNTMgNy44MDUxLDUuMDA2MyBDNy43MDMxLDUuMDg2MyA3LjM5MDEsNS4zMjkzIDcuNjY2MSw1LjkxOTMgTDguNDk5MSw3LjY4MzMgQzguNjIyMSw3LjgwNjMgOC42MjIxLDguMDA1MyA4LjUwMDEsOC4xMjgzIEM4LjM3NzEsOC4yNTAzIDguMTc4MSw4LjI1MTMgOC4wNTUxLDguMTI4MyBDOC4wMzAxLDguMTAzMyA4LjAwOTEsOC4wNzMzIDcuOTkzMSw4LjA0MTMgTDMuNjczMSwzLjcxODMgQzMuNDQ4MSwzLjQ5NDMgMy4wODQxLDMuNDk0MyAyLjg1OTEsMy43MTgzIEMyLjYzNDEsMy45NDMzIDIuNjM0MSw0LjMwNzMgMi44NTkxLDQuNTMyMyBMNS40MjUxLDcuMDk5MyBDNS41NDgxLDcuMjIyMyA1LjU0ODEsNy40MjEzIDUuNDI1MSw3LjU0MzMgQzUuMzAzMSw3LjY2NzMgNS4xMDQxLDcuNjY3MyA0Ljk4MTEsNy41NDMzIEwyLjQxNzEsNC45NzkzIEwxLjY5MjEsNC4yNTMzIEMxLjQ2NjEsNC4wMzAzIDEuMTAzMSw0LjAzMDMgMC44NzgxLDQuMjUzMyBDMC42NTMxLDQuNDc2MyAwLjY1MTEsNC44MzczIDAuODc0MSw1LjA2MjMgQzAuODc1MSw1LjA2NDMgMC44NzYxLDUuMDY1MyAwLjg3ODEsNS4wNjYzIEwxLjYwMTEsNS43OTAzIEw0LjE2ODEsOC4zNTczIEM0LjI5MDEsOC40NzkzIDQuMjkxMSw4LjY3NzMgNC4xNjkxLDguNzk5MyBDNC4xNjgxLDguODAwMyA0LjE2ODEsOC44MDAzIDQuMTY4MSw4LjgwMDMgQzQuMDQ3MSw4LjkyMzMgMy44NDkxLDguOTI1MyAzLjcyNzEsOC44MDQzIEMzLjcyNTEsOC44MDMzIDMuNzI0MSw4LjgwMjMgMy43MjMxLDguODAwMyBMMS4xNjAxLDYuMjM3MyBDMC45MzQxLDYuMDExMyAwLjU3MDEsNi4wMTAzIDAuMzQ0MSw2LjIzNTMgQzAuMTE5MSw2LjQ1ODMgMC4xMTgxLDYuODIxMyAwLjM0MTEsNy4wNDUzIEwwLjM0NDEsNy4wNDgzIEwxLjQyNTEsOC4xMjkzIEwzLjAzNjEsOS43NDIzIEMzLjE1NTEsOS44NjgzIDMuMTUwMSwxMC4wNjYzIDMuMDI0MSwxMC4xODUzIEMyLjkwMjEsMTAuMjk4MyAyLjcxNDEsMTAuMjk4MyAyLjU5MzEsMTAuMTg1MyBMMC45ODExLDguNTc0MyBDMC43NTgxLDguMzQ5MyAwLjM5NjEsOC4zNDczIDAuMTcyMSw4LjU3MDMgQzAuMTcwMSw4LjU3MTMgMC4xNjkxLDguNTcyMyAwLjE2ODEsOC41NzQzIEMtMC4wNTU5LDguNzk4MyAtMC4wNTU5LDkuMTYyMyAwLjE2ODEsOS4zODYzIEwzLjI3MDEsMTIuNDg5MyBDNS4yMzYxLDE0LjQ1NTMgNy4xNDExLDE1LjM5MTMgOS4zODYxLDEzLjE0NTMgQzEwLjk4NTEsMTEuNTQ0MyAxMS4yOTQxLDkuOTEyMyAxMC4zMzExLDguMTUyMyBMOC42OTQxLDUuMjcxMyBaIiBpZD0iRmlsbC05Ij48L3BhdGg+ICAgICAgICA8L2c+ICAgIDwvZz48L3N2Zz4=);\n display: block;\n width: 14px;\n height: 15px;\n background-repeat: no-repeat;\n background-position: center;\n opacity: 0.3;\n margin-right: 5px;\n margin-top: -3px; }\n .medium-widget-article__like {\n color: rgba(0, 0, 0, 0.9);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center; }\n .medium-widget-article__like:before {\n content: '';\n background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIxMnB4IiBoZWlnaHQ9IjEycHgiIHZpZXdCb3g9IjAgMCAxMiAxMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT51cDwvdGl0bGU+ICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPiAgICA8ZGVmcz48L2RlZnM+ICAgIDxnIGlkPSJMYW5kaW5nIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4gICAgICAgIDxnIGlkPSJ1cCIgZmlsbD0iIzAwMDAwMCI+ICAgICAgICAgICAgPHBhdGggZD0iTTEyLDYuODc1MzEyNTEgQzEyLDYuNTc0Nzk4ODUgMTEuODc0OTgyNiw2LjI5NDc4NjEzIDExLjY1OTk5NDQsNi4wODc3NzY3MiBDMTEuOTA0Mjc1Myw1LjgzMjI2NTEgMTIuMDI4NzY5Nyw1LjQ4OTI0OTUxIDExLjk5NDI0NjEsNS4xMzMyMzMzMyBDMTEuOTMzMDQ1MSw0LjQ5NzcwNDQ0IDExLjMzMzU4OSw0LjAwMDE4MTgzIDEwLjYzMDAzOSw0LjAwMDE4MTgzIEw3LjM5OTQ2MjY5LDQuMDAwMTgxODMgQzcuNTU5MDAzNzgsMy41MzU2NjA3MSA3LjgxNTMxNTY5LDIuNjg0MTIyMDEgNy44MTUzMTU2OSwyLjAwMDA5MDkxIEM3LjgxNTMxNTY5LDAuOTE1NTQxNjE2IDYuODUxMjY5MDQsMCA2LjI0NjA1OTA4LDAgQzUuNzAyNTczMiwwIDUuMzE0NDQzNzMsMC4yOTIwMTMyNzMgNS4yOTc3MDUsMC4zMDQ1MTM4NDIgQzUuMjM1NDU3ODIsMC4zNTIwMTYwMDEgNS4xOTk4ODgsMC40MjQwMTkyNzQgNS4xOTk4ODgsMC41MDAwMjI3MjggTDUuMTk5ODg4LDIuMTk1MDk5NzggTDQuMDIzOTkxNzEsNC42MzAyMTA0NiBDMy45ODc4OTg4MSw0LjcwNTcxMzkgMy45OTI2MDY1OCw0Ljc5MzIxNzg3IDQuMDM3NTkxOTMsNC44NjQyMjExIEM0LjExNDQ4NTUxLDQuOTg1NzI2NjIgNC4xNTM3MTY5Miw1LjExNTczMjUzIDQuMTUzNzE2OTIsNS4yNDk3Mzg2MiBMNC4xNTM3MTY5MiwxMC4yNDk5NjU5IEM0LjE1MzcxNjkyLDEwLjM3MDQ3MTQgNC4xMzkwNzA1MywxMC40OTI5NzcgNC4xMDg3MzE1NywxMC42MjU0ODMgQzQuMDc3ODY5NTIsMTAuNzU5OTg5MSA0LjE2NjI3MDk4LDEwLjg5Mjk5NTEgNC4zMDY0NTc5LDEwLjkyMjk5NjUgQzQuNTM2MDkyNDUsMTAuOTcyNDk4NyA0Ljc2MTAxOTIzLDExIDQuOTM4MzQ1MjMsMTEgTDkuNzM5NzQ3MzksMTEgQzEwLjMwOTM4NzUsMTEgMTAuODA3ODg4MSwxMC42MzI5ODMzIDEwLjkyNDUzNjEsMTAuMTI2NDYwMyBDMTAuOTg0NjkxLDkuODY1OTQ4NDUgMTAuOTQ5MTIxMiw5LjYwMjkzNjUgMTAuODMwMzgwNyw5LjM3NTQyNjE2IEMxMS4yMTY5NDA5LDkuMTg5NDE3NyAxMS40NzY5MTQ1LDguODA4NDAwMzggMTEuNDc2OTE0NSw4LjM3NDg4MDY4IEMxMS40NzY5MTQ1LDguMTk4MzcyNjUgMTEuNDM0NTQ0NSw4LjAyODM2NDkzIDExLjM1Mzk4OTQsNy44NzQ4NTc5NSBDMTEuNzQwMDI2NSw3LjY4OTM0OTUyIDEyLDcuMzA4ODMyMjIgMTIsNi44NzUzMTI1MSBNMS4yNSw1IEMwLjU2MSw1IDAsNS42MDQxNTM4NSAwLDYuMzQ2MTUzODUgTDAsMTAuNjUzODQ2MiBDMCwxMS4zOTU4NDYyIDAuNTYxLDEyIDEuMjUsMTIgTDEuNzUsMTIgQzIuNDM5LDEyIDMsMTEuMzk1ODQ2MiAzLDEwLjY1Mzg0NjIgTDMsNS4yNjkyMzA3NyBDMyw1LjEyMDYxNTM4IDIuODg4LDUgMi43NSw1IEwxLjI1LDUgWiIgaWQ9IkZpbGwtMSI+PC9wYXRoPiAgICAgICAgPC9nPiAgICA8L2c+PC9zdmc+);\n display: block;\n width: 12px;\n height: 12px;\n background-repeat: no-repeat;\n background-position: center;\n opacity: 0.3;\n margin-right: 5px;\n margin-top: -3px; }\n .medium-widget-article__error {\n font-size: 1.2rem;\n color: #fd7272;\n font-weight: bold;\n text-align: center; }\n .medium-widget-article__empty {\n font-size: 1.2rem;\n color: #03a87c;\n font-weight: bold;\n text-align: center; }\n\n@-webkit-keyframes loader-spin {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg); }\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg); } }\n\n@keyframes loader-spin {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg); }\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg); } }\n", ""]) }, function(e, t) { e.exports = function(e) { var t = []; return t.toString = function() { return this.map(function(t) { var n = function(e, t) { var n = e[1] || "", r = e[3]; if (!r) return n; if (t && "function" == typeof btoa) { var i = function(e) { return "/*# sourceMappingURL=data:application/json;charset=utf-8;base64," + btoa(unescape(encodeURIComponent(JSON.stringify(e)))) + " */" }(r), o = r.sources.map(function(e) { return "/*# sourceURL=" + r.sourceRoot + e + " */" }); return [n].concat(o).concat([i]).join("\n") } return [n].join("\n") }(t, e); return t[2] ? "@media " + t[2] + "{" + n + "}" : n }).join("") }, t.i = function(e, n) { "string" == typeof e && (e = [ [null, e, ""] ]); for (var r = {}, i = 0; i < this.length; i++) { var o = this[i][0]; "number" == typeof o && (r[o] = !0) } for (i = 0; i < e.length; i++) { var a = e[i]; "number" == typeof a[0] && r[a[0]] || (n && !a[2] ? a[2] = n : n && (a[2] = "(" + a[2] + ") and (" + n + ")"), t.push(a)) } }, t } }, function(e, t, n) { var r = {}, i = function(e) { var t; return function() { return void 0 === t && (t = e.apply(this, arguments)), t } }(function() { return window && document && document.all && !window.atob }), o = function(e) { var t = {}; return function(e) { if ("function" == typeof e) return e(); if (void 0 === t[e]) { var n = function(e) { return document.querySelector(e) }.call(this, e); if (window.HTMLIFrameElement && n instanceof window.HTMLIFrameElement) try { n = n.contentDocument.head } catch (e) { n = null } t[e] = n } return t[e] } }(), a = null, u = 0, l = [], c = n(12); function s(e, t) { for (var n = 0; n < e.length; n++) { var i = e[n], o = r[i.id]; if (o) { o.refs++; for (var a = 0; a < o.parts.length; a++) o.parts[a](i.parts[a]); for (; a < i.parts.length; a++) o.parts.push(p(i.parts[a], t)) } else { var u = []; for (a = 0; a < i.parts.length; a++) u.push(p(i.parts[a], t)); r[i.id] = { id: i.id, refs: 1, parts: u } } } } function f(e, t) { for (var n = [], r = {}, i = 0; i < e.length; i++) { var o = e[i], a = t.base ? o[0] + t.base : o[0], u = { css: o[1], media: o[2], sourceMap: o[3] }; r[a] ? r[a].parts.push(u) : n.push(r[a] = { id: a, parts: [u] }) } return n } function d(e, t) { var n = o(e.insertInto); if (!n) throw new Error("Couldn't find a style target. This probably means that the value for the 'insertInto' parameter is invalid."); var r = l[l.length - 1]; if ("top" === e.insertAt) r ? r.nextSibling ? n.insertBefore(t, r.nextSibling) : n.appendChild(t) : n.insertBefore(t, n.firstChild), l.push(t); else if ("bottom" === e.insertAt) n.appendChild(t); else { if ("object" != typeof e.insertAt || !e.insertAt.before) throw new Error("[Style Loader]\n\n Invalid value for parameter 'insertAt' ('options.insertAt') found.\n Must be 'top', 'bottom', or Object.\n (https://github.com/webpack-contrib/style-loader#insertat)\n"); var i = o(e.insertInto + " " + e.insertAt.before); n.insertBefore(t, i) } } function g(e) { if (null === e.parentNode) return !1; e.parentNode.removeChild(e); var t = l.indexOf(e); t >= 0 && l.splice(t, 1) } function m(e) { var t = document.createElement("style"); return void 0 === e.attrs.type && (e.attrs.type = "text/css"), M(t, e.attrs), d(e, t), t } function M(e, t) { Object.keys(t).forEach(function(n) { e.setAttribute(n, t[n]) }) } function p(e, t) { var n, r, i, o; if (t.transform && e.css) { if (!(o = t.transform(e.css))) return function() {}; e.css = o } if (t.singleton) { var l = u++; n = a || (a = m(t)), r = v.bind(null, n, l, !1), i = v.bind(null, n, l, !0) } else e.sourceMap && "function" == typeof URL && "function" == typeof URL.createObjectURL && "function" == typeof URL.revokeObjectURL && "function" == typeof Blob && "function" == typeof btoa ? (n = function(e) { var t = document.createElement("link"); return void 0 === e.attrs.type && (e.attrs.type = "text/css"), e.attrs.rel = "stylesheet", M(t, e.attrs), d(e, t), t }(t), r = function(e, t, n) { var r = n.css, i = n.sourceMap, o = void 0 === t.convertToAbsoluteUrls && i; (t.convertToAbsoluteUrls || o) && (r = c(r)); i && (r += "\n/*# sourceMappingURL=data:application/json;base64," + btoa(unescape(encodeURIComponent(JSON.stringify(i)))) + " */"); var a = new Blob([r], { type: "text/css" }), u = e.href; e.href = URL.createObjectURL(a), u && URL.revokeObjectURL(u) }.bind(null, n, t), i = function() { g(n), n.href && URL.revokeObjectURL(n.href) }) : (n = m(t), r = function(e, t) { var n = t.css, r = t.media; r && e.setAttribute("media", r); if (e.styleSheet) e.styleSheet.cssText = n; else { for (; e.firstChild;) e.removeChild(e.firstChild); e.appendChild(document.createTextNode(n)) } }.bind(null, n), i = function() { g(n) }); return r(e), function(t) { if (t) { if (t.css === e.css && t.media === e.media && t.sourceMap === e.sourceMap) return; r(e = t) } else i() } } e.exports = function(e, t) { if ("undefined" != typeof DEBUG && DEBUG && "object" != typeof document) throw new Error("The style-loader cannot be used in a non-browser environment"); (t = t || {}).attrs = "object" == typeof t.attrs ? t.attrs : {}, t.singleton || "boolean" == typeof t.singleton || (t.singleton = i()), t.insertInto || (t.insertInto = "head"), t.insertAt || (t.insertAt = "bottom"); var n = f(e, t); return s(n, t), function(e) { for (var i = [], o = 0; o < n.length; o++) { var a = n[o]; (u = r[a.id]).refs--, i.push(u) } e && s(f(e, t), t); for (o = 0; o < i.length; o++) { var u; if (0 === (u = i[o]).refs) { for (var l = 0; l < u.parts.length; l++) u.parts[l](); delete r[u.id] } } } }; var h = function() { var e = []; return function(t, n) { return e[t] = n, e.filter(Boolean).join("\n") } }(); function v(e, t, n, r) { var i = n ? "" : r.css; if (e.styleSheet) e.styleSheet.cssText = h(t, i); else { var o = document.createTextNode(i), a = e.childNodes; a[t] && e.removeChild(a[t]), a.length ? e.insertBefore(o, a[t]) : e.appendChild(o) } } }, function(e, t) { e.exports = function(e) { var t = "undefined" != typeof window && window.location; if (!t) throw new Error("fixUrls requires window.location"); if (!e || "string" != typeof e) return e; var n = t.protocol + "//" + t.host, r = n + t.pathname.replace(/\/[^\/]*$/, "/"); return e.replace(/url\s*\(((?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)\)/gi, function(e, t) { var i, o = t.trim().replace(/^"(.*)"$/, function(e, t) { return t }).replace(/^'(.*)'$/, function(e, t) { return t }); return /^(#|data:|http:\/\/|https:\/\/|file:\/\/\/|\s*$)/i.test(o) ? e : (i = 0 === o.indexOf("//") ? o : 0 === o.indexOf("/") ? n + o : r + o.replace(/^\.\//, ""), "url(" + JSON.stringify(i) + ")") }) } }, function(e, t, n) { "use strict"; (function(e) { Object.defineProperty(t, "__esModule", { value: !0 }); var r = a(n(14)), i = a(n(2)), o = n(18); function a(e) { return e && e.__esModule ? e : { default: e } } t.default = function() { return { data: { config: i.default.data(), articles: [] }, postsPerLine: function() { return parseInt(this.data.config.postsPerLine) || 1 }, requestQuery: function() { var e = this.data.config, t = e.fields || []; return -1 !== t.indexOf("author") && t.push("avatar"), { fields: t, resource: e.resource, limit: e.limit, picture: e.picture } }, loadArticles: function() { var t = this; this.isLoading = !0; var n = new Event("medium-widget:loading"), r = new Event("medium-widget:loaded"), i = new Event("medium-widget:failed"); document.dispatchEvent(n), e.request({ method: "GET", url: "https://medium-widget-api.pixelpoint.io/api/v1/articles", extract: function(e) { return { xhr: e } }, data: this.requestQuery() }).then(function(e) { try { t.data.articles = JSON.parse(e.xhr.responseText) } catch (e) { console.error("Invalid server response.") }!1 === Array.isArray(t.data.articles) && (console.error("Invalid server response."), t.data.articles = []), 0 === t.data.articles.length && console.error("There is no data available for this resource."), t.isLoading = !1, document.dispatchEvent(r) }, function(e) { e.xhr.status >= 400 ? console.error("Error #" + e.xhr.status + " " + e.xhr.statusText) : console.error(e.message), t.isLoading = !1, document.dispatchEvent(i) }) }, oninit: function() { this.isLoading = !1, this.loadArticles() }, view: function() { var t = this.data.config, n = this.data.articles.slice(); return (0, o.chunk)(n, this.postsPerLine()).map(function(n) { return e(".medium-widget-article__row", n.map(function(n) { return e(r.default, { article: n, config: t }) })) }) } } } }).call(this, n(0)) }, function(e, t, n) { "use strict"; (function(e) { Object.defineProperty(t, "__esModule", { value: !0 }); var r = n(15), i = n(16), o = function(e) { return e && e.__esModule ? e : { default: e } }(n(17)); t.default = function() { return { date: function(e) { if (e) return (0, r.fancyDate)(e) }, like: function(e) { if (e) return (0, i.fancyNumber)(e) }, clap: function(e) { if (e) return (0, i.fancyNumber)(e) }, rwc: function(e, t) { if (-1 !== this.config.fields.indexOf(e)) return t }, ri: function(e) { var t = this.config.fields; if (["likes", "claps", "author", "publishAt"].some(function(e) { return -1 !== t.indexOf(e) })) return e }, view: function(t) { var n = t.attrs, r = n.article, i = n.config; this.config = i; var a = ".medium-widget-article__grid"; return "big" == i.picture && (a = ".medium-widget-article__column"), e(".medium-widget-article__item", [e(a, [e(o.default, { pictureId: r.pictureId, config: i, url: r.url }), e(".medium-widget-article__content", [e("a.medium-widget-article__title", { href: r.url, target: "_blank" }, r.title), this.rwc("description", e(".medium-widget-article__description", r.description)), this.ri(e(".medium-widget-article__info", [this.rwc("author", e(".medium-widget-article__author", [e("img.medium-widget-article__avatar-picture", { src: r.avatar }), e(".medium-widget-article__author-name", r.author)])), this.rwc("likes", e(".medium-widget-article__like", this.like(r.likes))), this.rwc("claps", e(".medium-widget-article__clap", this.clap(r.claps))), this.rwc("publishAt", e(".medium-widget-article__date", this.date(r.publishAt)))]))])])]) } } } }).call(this, n(0)) }, function(e, t, n) { "use strict"; Object.defineProperty(t, "__esModule", { value: !0 }), t.fancyDate = function(e) { var t = new Date(e); return ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"][t.getMonth()] + " " + t.getDate() + ", " + t.getFullYear() } }, function(e, t, n) { "use strict"; Object.defineProperty(t, "__esModule", { value: !0 }), t.fancyNumber = function(e) { var t = "" + e; if (t.length > 3) { var n = t.slice(0, -3), r = t.split("").slice(-3)[0]; return "0" == r ? n + "K" : n + "." + r + "K" } return e } }, function(e, t, n) { "use strict"; (function(e) { Object.defineProperty(t, "__esModule", { value: !0 }), t.default = function() { return { data: { rendered: !1 }, oninit: function(e) { this.picture = e.attrs.config.picture, this.pictureId = e.attrs.pictureId, this.ratio = e.attrs.config.ratio }, oncreate: function(t) { this.data.rendered = !0, e.redraw() }, calculateWidthSize: function() { var e = void 0; e = "small" == this.picture ? 150 : document.getElementsByClassName("medium-widget-article__column")[0].clientWidth; var t = window.devicePixelRatio || 1; return parseInt(t * e) }, getPictureUrl: function() { var e = void 0, t = void 0; switch (this.ratio) { case "original": t = "https://cdn-images-1.medium.com/max/" + (e = this.calculateWidthSize()); break; case "landscape": t = "https://cdn-images-1.medium.com/fit/" + (e = this.calculateWidthSize()) + "/" + parseInt(9 * e / 16); break; case "square": t = "https://cdn-images-1.medium.com/fit/" + (e = this.calculateWidthSize()) + "/" + e } return t + "/" + this.pictureId }, view: function(t) { if (this.pictureId && "none" !== this.picture && this.data.rendered) return e("a.medium-widget-article__image", { href: t.attrs.url, target: "_blank" }, e("img", { src: this.getPictureUrl() })) } } } }).call(this, n(0)) }, function(e, t, n) { "use strict"; Object.defineProperty(t, "__esModule", { value: !0 }), t.chunk = function(e, t) { var n, r = [], i = 0; for (n = e.length / t; i < n;) r[i] = e.splice(0, t), i++; return r } }]); //# sourceMappingURL=widget.js.map