Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
“)
}).then(function() {
t.close(), a.resolve(c)
})
}), c.src = [“javascript:”, ‘document.write(“”);’, “try { window.parent.document; }”, ‘catch (e) { document.domain=”‘ + r.domain + ‘”; }’, “window.parent.” + g.fullPath([“sandbox”, u]) + “();”].join(“”), c.addEventListener(“error”, a.reject, !1), o.write(function() {
i.parentNode.replaceChild(c, i)
}), a.promise
}
t.exports = a.couple(n(58), function(t) {
t.overrideProperty(“id”, {
get: function() {
return this.sandboxEl && this.sandboxEl.id
}
}), t.overrideProperty(“initialized”, {
get: function() {
return !!this.win
}
}), t.overrideProperty(“width”, {
get: function() {
return this._width
}
}), t.overrideProperty(“height”, {
get: function() {
return this._height
}
}), t.overrideProperty(“sandboxEl”, {
get: function() {
return this.iframeEl
}
}), t.defineProperty(“iframeEl”, {
get: function() {
return this._iframe
}
}), t.defineProperty(“rootEl”, {
get: function() {
return this.doc && this.doc.documentElement
}
}), t.defineProperty(“widgetEl”, {
get: function() {
return this.doc && this.doc.body.firstElementChild
}
}), t.defineProperty(“win”, {
get: function() {
return this.iframeEl && this.iframeEl.contentWindow
}
}), t.defineProperty(“doc”, {
get: function() {
return this.win && this.win.document
}
}), t.define(“_updateCachedDimensions”, function() {
var t = this;
return o.read(function() {
var e, n = h(t.sandboxEl);
“visible” == t.sandboxEl.style.visibility ? t._width = n.width : (e = h(t.sandboxEl.parentElement).width, t._width = Math.min(n.width, e)), t._height = n.height
})
}), t.define(“_setTargetToBlank”, function() {
var t = this.createElement(“base”);
t.target = “_blank”, this.doc.head.appendChild(t)
}), t.define(“_didResize”, function() {
var t = this,
e = this._resizeHandlers.slice(0);
return this._updateCachedDimensions().then(function() {
e.forEach(function(e) {
e(t)
})
})
}), t.define(“setTitle”, function(t) {
this.iframeEl.title = t
}), t.override(“createElement”, function(t) {
return this.doc.createElement(t)
}), t.override(“createFragment”, function() {
return this.doc.createDocumentFragment()
}), t.override(“htmlToElement”, function(t) {
var e;
return (e = this.createElement(“div”)).innerHTML = t, e.firstElementChild
}), t.override(“hasSelectedText”, function() {
return !!s.getSelectedText(this.win)
}), t.override(“addRootClass”, function(t) {
var e = this.rootEl;
return t = Array.isArray(t) ? t : [t], this.initialized ? o.write(function() {
t.forEach(function(t) {
i.add(e, t)
})
}) : m.reject(new Error(“sandbox not initialized”))
}), t.override(“removeRootClass”, function(t) {
var e = this.rootEl;
return t = Array.isArray(t) ? t : [t], this.initialized ? o.write(function() {
t.forEach(function(t) {
i.remove(e, t)
})
}) : m.reject(new Error(“sandbox not initialized”))
}), t.override(“hasRootClass”, function(t) {
return i.present(this.rootEl, t)
}), t.define(“addStyleSheet”, function(t, e) {
var n, r = new p;
return this.initialized ? ((n = this.createElement(“link”)).type = “text/css”, n.rel = “stylesheet”, n.href = t, n.addEventListener(“load”, r.resolve, !1), n.addEventListener(“error”, r.reject, !1), o.write(y(e, null, n)).then(function() {
return u(t).then(r.resolve, r.reject), r.promise
})) : m.reject(new Error(“sandbox not initialized”))
}), t.override(“prependStyleSheet”, function(t) {
var e = this.doc;
return this.addStyleSheet(t, function(t) {
var n = e.head.firstElementChild;
return n ? e.head.insertBefore(t, n) : e.head.appendChild(t)
})
}), t.override(“appendStyleSheet”, function(t) {
var e = this.doc;
return this.addStyleSheet(t, function(t) {
return e.head.appendChild(t)
})
}), t.define(“addCss”, function(t, e) {
var n;
return c.inlineStyle() ? ((n = this.createElement(“style”)).type = “text/css”, n.appendChild(this.doc.createTextNode(t)), o.write(y(e, null, n))) : (f.devError(“CSP enabled; cannot embed inline styles”), m.resolve())
}), t.override(“prependCss”, function(t) {
var e = this.doc;
return this.addCss(t, function(t) {
var n = e.head.firstElementChild;
return n ? e.head.insertBefore(t, n) : e.head.appendChild(t)
})
}), t.override(“appendCss”, function(t) {
var e = this.doc;
return this.addCss(t, function(t) {
return e.head.appendChild(t)
})
}), t.override(“makeVisible”, function() {
var t = this;
return this.styleSelf(E).then(function() {
t._updateCachedDimensions()
})
}), t.override(“injectWidgetEl”, function(t) {
var e = this;
return this.initialized ? this.widgetEl ? m.reject(new Error(“widget already injected”)) : o.write(function() {
e.doc.body.appendChild(t)
}) : m.reject(new Error(“sandbox not initialized”))
}), t.override(“matchHeightToContent”, function() {
var t, e = this;
return o.read(function() {
t = e.widgetEl ? h(e.widgetEl).height : 0
}), o.write(function() {
e.sandboxEl.style.height = t + “px”
}).then(function() {
return e._updateCachedDimensions()
})
}), t.override(“matchWidthToContent”, function() {
var t, e = this;
return o.read(function() {
t = e.widgetEl ? h(e.widgetEl).width : 0
}), o.write(function() {
e.sandboxEl.style.width = t + “px”
}).then(function() {
return e._updateCachedDimensions()
})
}), t.after(“initialize”, function() {
this._iframe = null, this._width = this._height = 0, this._resizeHandlers = []
}), t.override(“insert”, function(t, e, n, r) {
var i = this,
s = new p,
a = this.targetGlobal.document,
u = S(t, e, n, a);
return o.write(y(r, null, u)), u.addEventListener(“load”, function() {
(function(t) {
try {
t.contentWindow.document
} catch (t) {
return m.reject(t)
}
return m.resolve(t)
})(u).then(null, y(R, null, t, e, n, u, a)).then(s.resolve, s.reject)
}, !1), u.addEventListener(“error”, s.reject, !1), s.promise.then(function(t) {
var e = d(i._didResize, A, i);
return i._iframe = t, i.win.addEventListener(“resize”, e, !1), m.all([i._setTargetToBlank(), i.addRootClass(x), i.prependCss(T)])
})
}), t.override(“onResize”, function(t) {
this._resizeHandlers.push(t)
}), t.after(“styleSelf”, function() {
return this._updateCachedDimensions()
})
})
}, function(t, e) {
t.exports = function() {
throw new Error(“unimplemented method”)
}
}, function(t, e, n) {
var r = n(2),
i = n(7),
o = 100,
s = 3e3;
function a(t, e) {
this._inputsQueue = [], this._task = t, this._isPaused = !1, this._flushDelay = e && e.flushDelay || o, this._pauseLength = e && e.pauseLength || s, this._flushTimeout = void 0
}
a.prototype.add = function(t) {
var e = new r;
return this._inputsQueue.push({
input: t,
taskDoneDeferred: e
}), this._scheduleFlush(), e.promise
}, a.prototype._scheduleFlush = function() {
this._isPaused || (clearTimeout(this._flushTimeout), this._flushTimeout = setTimeout(i(this._flush, this), this._flushDelay))
}, a.prototype._flush = function() {
try {
this._task.call(null, this._inputsQueue)
} catch (t) {
this._inputsQueue.forEach(function(e) {
e.taskDoneDeferred.reject(t)
})
}
this._inputsQueue = [], this._flushTimeout = void 0
}, a.prototype.pause = function(t) {
clearTimeout(this._flushTimeout), this._isPaused = !0, !t && this._pauseLength && setTimeout(i(this.resume, this), this._pauseLength)
}, a.prototype.resume = function() {
this._isPaused = !1, this._scheduleFlush()
}, t.exports = a
}, function(t, e, n) {
var r = n(72),
i = n(31),
o = n(2),
s = n(4),
a = n(20),
u = n(21),
c = n(25),
d = n(9),
l = n(12),
f = n(112),
h = n(60),
p = n(8),
m = n(11),
v = n(3),
g = n(0),
w = n(1),
y = h(function() {
return new o
}),
b = {
shouldObtainCookieConsent: !1,
features: {}
};
t.exports = {
load: function() {
var t, e, n, o;
if (u.ie9() || u.ie10() || “http:” !== d.protocol && “https:” !== d.protocol) return l.devError(“Using default settings due to unsupported browser or protocol.”), void y().resolve();
t = {
origin: d.origin
}, a.settings().indexOf(“localhost”) > -1 && (t.localSettings = !0), e = m.url(r.resourceBaseUrl + r.widgetIframeHtmlPath, t), n = function(t) {
var n, r, i, o;
if (r = v.isTwitterURL(t.origin), i = e.substr(0, t.origin.length) === t.origin, o = v.isTwimgURL(t.origin), i && r || o) try {
(n = “string” == typeof t.data ? c.parse(t.data) : t.data).namespace === f.settings && (b = g.aug(b, {
features: n.settings.features,
sessionId: n.sessionId
}), y().resolve())
} catch (t) {
l.devError(t)
}
}, w.addEventListener(“message”, n), o = i({
src: e,
title: “Twitter settings iframe”
}, {
display: “none”
}), s.body.appendChild(o)
},
settingsLoaded: function() {
var t, e;
return t = p.get(“experimentOverride”), y().promise.then(function() {
return t && t.name && t.assignment && ((e = {})[t.name] = {
bucket: t.assignment
}, b.features = g.aug(b.features, e)), b
})
}
}
}, function(t, e) {
t.exports = {
settings: “twttr.settings”
}
}, function(t, e, n) {
t.exports = [n(114), n(120), n(128), n(130), n(132), n(148), n(150)]
}, function(t, e, n) {
var r = n(11),
i = n(5),
o = n(0),
s = n(13),
a = n(14)(),
u = n(61),
c = “a.twitter-dm-button”;
t.exports = function(t) {
return a(t, c).map(function(t) {
return u(function(t) {
var e = t.getAttribute(“data-show-screen-name”),
n = s(t),
a = t.getAttribute(“href”),
u = t.getAttribute(“data-screen-name”),
c = e ? i.asBoolean(e) : null,
d = t.getAttribute(“data-size”),
l = r.decodeURL(a),
f = l.recipient_id,
h = t.getAttribute(“data-text”) || l.text,
p = t.getAttribute(“data-welcome-message-id”) || l.welcomeMessageId;
return o.aug(n, {
screenName: u,
showScreenName: c,
size: d,
text: h,
userId: f,
welcomeMessageId: p
})
}(t), t.parentNode, t)
})
}
}, function(t, e, n) {
var r = n(0);
t.exports = function t(e) {
var n;
if (e) return n = e.lang || e.getAttribute(“data-lang”), r.isType(“string”, n) ? n : t(e.parentElement)
}
}, function(t, e, n) {
var r = n(2);
t.exports = function(t, e) {
var i = new r;
return n.e(2).then(function(r) {
var o;
try {
o = n(83), i.resolve(new o(t, e))
} catch (t) {
i.reject(t)
}
}.bind(null, n)).catch(function(t) {
i.reject(t)
}), i.promise
}
}, function(t, e, n) {
var r = n(62),
i = n(26);
t.exports = r.isSupported() ? r : i
}, function(t, e, n) {
var r = n(119),
i = n(1),
o = n(10),
s = n(35),
a = n(18),
u = n(56),
c = n(27),
d = n(57),
l = n(43),
f = n(47),
h = n(7),
p = n(44),
m = n(6),
v = n(0),
g = 50,
w = {
position: “absolute”,
visibility: “hidden”,
display: “block”,
transform: “rotate(0deg)”
},
y = {
position: “static”,
visibility: “visible”
},
b = “twitter-widget”,
_ = “open”,
E = “SandboxRoot”,
x = “.SandboxRoot { display: none; max-height: 10000px; }”;
t.exports = c.couple(n(58), function(t) {
t.defineStatic(“isSupported”, function() {
return !!i.HTMLElement.prototype.attachShadow && l.inlineStyle()
}), t.overrideProperty(“id”, {
get: function() {
return this.sandboxEl && this.sandboxEl.id
}
}), t.overrideProperty(“initialized”, {
get: function() {
return !!this._shadowHost
}
}), t.overrideProperty(“width”, {
get: function() {
return this._width
}
}), t.overrideProperty(“height”, {
get: function() {
return this._height
}
}), t.overrideProperty(“sandboxEl”, {
get: function() {
return this._shadowHost
}
}), t.define(“_updateCachedDimensions”, function() {
var t = this;
return a.read(function() {
var e, n = f(t.sandboxEl);
“visible” == t.sandboxEl.style.visibility ? t._width = n.width : (e = f(t.sandboxEl.parentElement).width, t._width = Math.min(n.width, e)), t._height = n.height
})
}), t.define(“_didResize”, function() {
var t = this,
e = this._resizeHandlers.slice(0);
return this._updateCachedDimensions().then(function() {
e.forEach(function(e) {
e(t)
})
})
}), t.override(“createElement”, function(t) {
return this.targetGlobal.document.createElement(t)
}), t.override(“createFragment”, function() {
return this.targetGlobal.document.createDocumentFragment()
}), t.override(“htmlToElement”, function(t) {
var e;
return (e = this.createElement(“div”)).innerHTML = t, e.firstElementChild
}), t.override(“hasSelectedText”, function() {
return !!u.getSelectedText(this.targetGlobal)
}), t.override(“addRootClass”, function(t) {
var e = this._shadowRootBody;
return t = Array.isArray(t) ? t : [t], this.initialized ? a.write(function() {
t.forEach(function(t) {
o.add(e, t)
})
}) : m.reject(new Error(“sandbox not initialized”))
}), t.override(“removeRootClass”, function(t) {
var e = this._shadowRootBody;
return t = Array.isArray(t) ? t : [t], this.initialized ? a.write(function() {
t.forEach(function(t) {
o.remove(e, t)
})
}) : m.reject(new Error(“sandbox not initialized”))
}), t.override(“hasRootClass”, function(t) {
return o.present(this._shadowRootBody, t)
}), t.override(“addStyleSheet”, function(t, e) {
return this.addCss(‘@import url(“‘ + t + ‘”);’, e).then(function() {
return d(t)
})
}), t.override(“prependStyleSheet”, function(t) {
var e = this._shadowRoot;
return this.addStyleSheet(t, function(t) {
var n = e.firstElementChild;
return n ? e.insertBefore(t, n) : e.appendChild(t)
})
}), t.override(“appendStyleSheet”, function(t) {
var e = this._shadowRoot;
return this.addStyleSheet(t, function(t) {
return e.appendChild(t)
})
}), t.override(“addCss”, function(t, e) {
var n;
return this.initialized ? l.inlineStyle() ? ((n = this.createElement(“style”)).type = “text/css”, n.appendChild(this.targetGlobal.document.createTextNode(t)), a.write(h(e, null, n))) : m.resolve() : m.reject(new Error(“sandbox not initialized”))
}), t.override(“prependCss”, function(t) {
var e = this._shadowRoot;
return this.addCss(t, function(t) {
var n = e.firstElementChild;
return n ? e.insertBefore(t, n) : e.appendChild(t)
})
}), t.override(“appendCss”, function(t) {
var e = this._shadowRoot;
return this.addCss(t, function(t) {
return e.appendChild(t)
})
}), t.override(“makeVisible”, function() {
return this.styleSelf(y)
}), t.override(“injectWidgetEl”, function(t) {
var e = this;
return this.initialized ? this._shadowRootBody.firstElementChild ? m.reject(new Error(“widget already injected”)) : a.write(function() {
e._shadowRootBody.appendChild(t)
}).then(function() {
return e._updateCachedDimensions()
}).then(function() {
var t = p(e._didResize, g, e);
new r(e._shadowRootBody, t)
}) : m.reject(new Error(“sandbox not initialized”))
}), t.override(“matchHeightToContent”, function() {
return m.resolve()
}), t.override(“matchWidthToContent”, function() {
return m.resolve()
}), t.override(“insert”, function(t, e, n, r) {
var i = this.targetGlobal.document,
o = this._shadowHost = i.createElement(b),
u = this._shadowRoot = o.attachShadow({
mode: _
}),
c = this._shadowRootBody = i.createElement(“div”);
return v.forIn(e || {}, function(t, e) {
o.setAttribute(t, e)
}), o.id = t, u.appendChild(c), s.delegate(c, “click”, “A”, function(t, e) {
e.hasAttribute(“target”) || e.setAttribute(“target”, “_blank”)
}), m.all([this.styleSelf(w), this.addRootClass(E), this.prependCss(x), a.write(r.bind(null, o))])
}), t.override(“onResize”, function(t) {
this._resizeHandlers.push(t)
}), t.after(“initialize”, function() {
this._shadowHost = this._shadowRoot = this._shadowRootBody = null, this._width = this._height = 0, this._resizeHandlers = []
}), t.after(“styleSelf”, function() {
return this._updateCachedDimensions()
})
})
}, function(t, e) {
var n;
(n = function(t, e) {
function r(t, e) {
if (t.resizedAttached) {
if (t.resizedAttached) return void t.resizedAttached.add(e)
} else t.resizedAttached = new function() {
var t, e;
this.q = [], this.add = function(t) {
this.q.push(t)
}, this.call = function() {
for (t = 0, e = this.q.length; t
‘, t.appendChild(t.resizeSensor), {
fixed: 1,
absolute: 1
} [function(t, e) {
return t.currentStyle ? t.currentStyle[e] : window.getComputedStyle ? window.getComputedStyle(t, null).getPropertyValue(e) : t.style[e]
}(t, “position”)] || (t.style.position = “relative”);
var i, o, s = t.resizeSensor.childNodes[0],
a = s.childNodes[0],
u = t.resizeSensor.childNodes[1],
c = (u.childNodes[0], function() {
a.style.width = s.offsetWidth + 10 + “px”, a.style.height = s.offsetHeight + 10 + “px”, s.scrollLeft = s.scrollWidth, s.scrollTop = s.scrollHeight, u.scrollLeft = u.scrollWidth, u.scrollTop = u.scrollHeight, i = t.offsetWidth, o = t.offsetHeight
});
c();
var d = function(t, e, n) {
t.attachEvent ? t.attachEvent(“on” + e, n) : t.addEventListener(e, n)
},
l = function() {
t.offsetWidth == i && t.offsetHeight == o || t.resizedAttached && t.resizedAttached.call(), c()
};
d(s, “scroll”, l), d(u, “scroll”, l)
}
var i = Object.prototype.toString.call(t),
o = “[object Array]” === i || “[object NodeList]” === i || “[object HTMLCollection]” === i || “undefined” != typeof jQuery && t instanceof jQuery || “undefined” != typeof Elements && t instanceof Elements;
if (o)
for (var s = 0, a = t.length; s 0;
return this.updateCachedDimensions().then(function() {
e && t._resizeHandlers.forEach(function(e) {
e(t)
})
})
}), t.define(“loadDocument”, function(t) {
var e = new a;
return this.initialized ? this.iframeEl.src ? u.reject(new Error(“widget already loaded”)) : (this.iframeEl.addEventListener(“load”, e.resolve, !1), this.iframeEl.addEventListener(“error”, e.reject, !1), this.iframeEl.src = t, e.promise) : u.reject(new Error(“sandbox not initialized”))
}), t.after(“initialize”, function() {
var t = new a,
e = new a;
this._iframe = null, this._iframeVersion = null, this._width = this._height = 0, this._resizeHandlers = [], this._rendered = t, this._results = e, this._waitToSwapUntilRendered = !1
}), t.override(“insert”, function(t, e, n, i) {
var a = this;
return e = d.aug({
id: t
}, l, e), n = d.aug({}, f, n), this._iframe = s(e, n), p[t] = this, a._waitToSwapUntilRendered || this.onResize(o(function() {
a.makeVisible()
})), r.write(c(i, null, this._iframe))
}), t.override(“onResize”, function(t) {
this._resizeHandlers.push(t)
}), t.after(“styleSelf”, function() {
return this.updateCachedDimensions()
})
}
}, function(t, e, n) {
var r = n(1),
i = n(124),
o = n(126),
s = n(23),
a = n(5),
u = n(127);
t.exports = function(t, e, n, c, d) {
function l(t) {
var e = u(this);
s.trigger(t.type, {
target: e,
region: t.region,
type: t.type,
data: t.data || {}
})
}
function f(e) {
var n = u(this),
r = n && n.id,
i = a.asInt(e.width),
o = a.asInt(e.height);
r && void 0 !== i && void 0 !== o && t(r, i, o)
}(new i).attachReceiver(new o.Receiver(r, “twttr.button”)).bind(“twttr.private.trigger”, l).bind(“twttr.private.resizeButton”, f), (new i).attachReceiver(new o.Receiver(r, “twttr.embed”)).bind(“twttr.private.initialized”, function(t) {
var e = u(this),
n = e && e.id,
r = t.iframe_version;
n && r && c && c(n, r)
}).bind(“twttr.private.trigger”, l).bind(“twttr.private.results”, function() {
var t = u(this),
n = t && t.id;
n && e && e(n)
}).bind(“twttr.private.rendered”, function() {
var t = u(this),
e = t && t.id;
e && n && n(e)
}).bind(“twttr.private.no_results”, function() {
var t = u(this),
e = t && t.id;
e && d && d(e)
}).bind(“twttr.private.resize”, f)
}
}, function(t, e, n) {
var r = n(25),
i = n(125),
o = n(0),
s = n(6),
a = n(24),
u = “2.0”;
function c(t) {
this.registry = t || {}
}
function d(t) {
var e, n;
return e = o.isType(“string”, t), n = o.isType(“number”, t), e || n || null === t
}
function l(t, e) {
return {
jsonrpc: u,
id: d(t) ? t : null,
error: e
}
}
c.prototype._invoke = function(t, e) {
var n, r, i;
n = this.registry[t.method], r = t.params || [], r = o.isType(“array”, r) ? r : [r];
try {
i = n.apply(e.source || null, r)
} catch (t) {
i = s.reject(t.message)
}
return a.isPromise(i) ? i : s.resolve(i)
}, c.prototype._processRequest = function(t, e) {
var n, r;
return function(t) {
var e, n, r;
return !!o.isObject(t) && (e = t.jsonrpc === u, n = o.isType(“string”, t.method), r = !(“id” in t) || d(t.id), e && n && r)
}(t) ? (n = “params” in t && (r = t.params, !o.isObject(r) || o.isType(“function”, r)) ? s.resolve(l(t.id, i.INVALID_PARAMS)) : this.registry[t.method] ? this._invoke(t, {
source: e
}).then(function(e) {
return n = t.id, {
jsonrpc: u,
id: n,
result: e
};
var n
}, function() {
return l(t.id, i.INTERNAL_ERROR)
}) : s.resolve(l(t.id, i.METHOD_NOT_FOUND)), null != t.id ? n : s.resolve()) : s.resolve(l(t.id, i.INVALID_REQUEST))
}, c.prototype.attachReceiver = function(t) {
return t.attachTo(this), this
}, c.prototype.bind = function(t, e) {
return this.registry[t] = e, this
}, c.prototype.receive = function(t, e) {
var n, a, u, c = this;
try {
u = t, t = o.isType(“string”, u) ? r.parse(u) : u
} catch (t) {
return s.resolve(l(null, i.PARSE_ERROR))
}
return e = e || null, a = ((n = o.isType(“array”, t)) ? t : [t]).map(function(t) {
return c._processRequest(t, e)
}), n ? function(t) {
return s.all(t).then(function(t) {
return (t = t.filter(function(t) {
return void 0 !== t
})).length ? t : void 0
})
}(a) : a[0]
}, t.exports = c
}, function(t) {
t.exports = {
PARSE_ERROR: {
code: -32700,
message: “Parse error”
},
INVALID_REQUEST: {
code: -32600,
message: “Invalid Request”
},
INVALID_PARAMS: {
code: -32602,
message: “Invalid params”
},
METHOD_NOT_FOUND: {
code: -32601,
message: “Method not found”
},
INTERNAL_ERROR: {
code: -32603,
message: “Internal error”
}
}
}, function(t, e, n) {
var r = n(9),
i = n(1),
o = n(25),
s = n(2),
a = n(21),
u = n(0),
c = n(3),
d = n(7),
l = a.ie9();
function f(t, e, n) {
var r;
t && t.postMessage && (l ? r = (n || “”) + o.stringify(e) : n ? (r = {})[n] = e : r = e, t.postMessage(r, “*”))
}
function h(t) {
return u.isType(“string”, t) ? t : “JSONRPC”
}
function p(t, e) {
return e ? u.isType(“string”, t) && 0 === t.indexOf(e) ? t.substring(e.length) : t && t[e] ? t[e] : void 0 : t
}
function m(t, e) {
var n = t.document;
this.filter = h(e), this.server = null, this.isTwitterFrame = c.isTwitterURL(n.location.href), t.addEventListener(“message”, d(this._onMessage, this), !1)
}
function v(t, e) {
this.pending = {}, this.target = t, this.isTwitterHost = c.isTwitterURL(r.href), this.filter = h(e), i.addEventListener(“message”, d(this._onMessage, this), !1)
}
u.aug(m.prototype, {
_onMessage: function(t) {
var e, n = this;
this.server && (this.isTwitterFrame && !c.isTwitterURL(t.origin) || (e = p(t.data, this.filter)) && this.server.receive(e, t.source).then(function(e) {
e && f(t.source, e, n.filter)
}))
},
attachTo: function(t) {
this.server = t
},
detach: function() {
this.server = null
}
}), u.aug(v.prototype, {
_processResponse: function(t) {
var e = this.pending[t.id];
e && (e.resolve(t), delete this.pending[t.id])
},
_onMessage: function(t) {
var e;
if ((!this.isTwitterHost || c.isTwitterURL(t.origin)) && (e = p(t.data, this.filter))) {
if (u.isType(“string”, e)) try {
e = o.parse(e)
} catch (t) {
return
}(e = u.isType(“array”, e) ? e : [e]).forEach(d(this._processResponse, this))
}
},
send: function(t) {
var e = new s;
return t.id ? this.pending[t.id] = e : e.resolve(), f(this.target, t, this.filter), e.promise
}
}), t.exports = {
Receiver: m,
Dispatcher: v,
_stringifyPayload: function(t) {
return arguments.length > 0 && (l = !!t), l
}
}
}, function(t, e, n) {
var r = n(4);
t.exports = function(t) {
for (var e, n = r.getElementsByTagName(“iframe”), i = 0; n[i]; i++)
if ((e = n[i]).contentWindow === t) return e
}
}, function(t, e, n) {
var r = n(5),
i = n(0),
o = n(3),
s = n(13),
a = n(14)(),
u = n(64),
c = “a.twitter-moment”;
t.exports = function(t) {
return a(t, c).map(function(t) {
return u(function(t) {
var e = s(t),
n = {
momentId: o.momentId(t.href),
chrome: t.getAttribute(“data-chrome”),
limit: t.getAttribute(“data-limit”)
};
return i.forIn(n, function(t, n) {
var i = e[t];
e[t] = r.hasValue(i) ? i : n
}), e
}(t), t.parentNode, t)
})
}
}, function(t, e, n) {
var r = n(2);
t.exports = function(t, e) {
var i = new r;
return Promise.all([n.e(0), n.e(4)]).then(function(r) {
var o;
try {
o = n(85), i.resolve(new o(t, e))
} catch (t) {
i.reject(t)
}
}.bind(null, n)).catch(function(t) {
i.reject(t)
}), i.promise
}
}, function(t, e, n) {
var r = n(0),
i = n(13),
o = n(14)(),
s = n(65),
a = “a.periscope-on-air”,
u = /^https?:\/\/(?:www\.)?(?:periscope|pscp)\.tv\/@?([a-zA-Z0-9_]+)\/?$/i;
t.exports = function(t) {
return o(t, a).map(function(t) {
return s(function(t) {
var e = i(t),
n = t.getAttribute(“href”),
o = t.getAttribute(“data-size”),
s = u.exec(n)[1];
return r.aug(e, {
username: s,
size: o
})
}(t), t.parentNode, t)
})
}
}, function(t, e, n) {
var r = n(2);
t.exports = function(t, e) {
var i = new r;
return n.e(5).then(function(r) {
var o;
try {
o = n(86), i.resolve(new o(t, e))
} catch (t) {
i.reject(t)
}
}.bind(null, n)).catch(function(t) {
i.reject(t)
}), i.promise
}
}, function(t, e, n) {
var r = n(5),
i = n(0),
o = n(66),
s = n(13),
a = n(14)(),
u = n(67),
c = n(3),
d = n(12),
l = “a.twitter-timeline,div.twitter-timeline,a.twitter-grid”,
f = “Embedded Search timelines have been deprecated. See https://twittercommunity.com/t/deprecating-widget-settings/102295.”,
h = “You may have been affected by an update to settings in embedded timelines. See https://twittercommunity.com/t/deprecating-widget-settings/102295.”,
p = “Embedded grids have been deprecated and will now render as timelines. Please update your embed code to use the twitter-timeline class. More info: https://twittercommunity.com/t/update-on-the-embedded-grid-display-type/119564.”;
t.exports = function(t, e) {
return a(t, l).map(function(t) {
return u(function(t) {
var e = s(t),
n = t.getAttribute(“data-show-replies”),
a = {
isPreconfigured: !!t.getAttribute(“data-widget-id”),
chrome: t.getAttribute(“data-chrome”),
tweetLimit: t.getAttribute(“data-tweet-limit”) || t.getAttribute(“data-limit”),
ariaLive: t.getAttribute(“data-aria-polite”),
theme: t.getAttribute(“data-theme”),
borderColor: t.getAttribute(“data-border-color”),
showReplies: n ? r.asBoolean(n) : null,
profileScreenName: t.getAttribute(“data-screen-name”),
profileUserId: t.getAttribute(“data-user-id”),
favoritesScreenName: t.getAttribute(“data-favorites-screen-name”),
favoritesUserId: t.getAttribute(“data-favorites-user-id”),
likesScreenName: t.getAttribute(“data-likes-screen-name”),
likesUserId: t.getAttribute(“data-likes-user-id”),
listOwnerScreenName: t.getAttribute(“data-list-owner-screen-name”),
listOwnerUserId: t.getAttribute(“data-list-owner-id”),
listId: t.getAttribute(“data-list-id”),
listSlug: t.getAttribute(“data-list-slug”),
customTimelineId: t.getAttribute(“data-custom-timeline-id”),
staticContent: t.getAttribute(“data-static-content”),
url: t.href
};
return a.isPreconfigured && (c.isSearchUrl(a.url) ? d.publicError(f, t) : d.publicLog(h, t)), “twitter-grid” === t.className && d.publicLog(p, t), (a = i.aug(a, e)).dataSource = o(a), a.id = a.dataSource && a.dataSource.id, a
}(t), t.parentNode, t, e)
})
}
}, function(t, e, n) {
var r = n(28);
t.exports = r.build([n(29), n(136)])
}, function(t, e, n) {
var r = n(0),
i = n(135);
t.exports = function(t) {
return “en” === t || r.contains(i, t)
}
}, function(t, e) {
t.exports = [“hi”, “zh-cn”, “fr”, “zh-tw”, “msa”, “fil”, “fi”, “sv”, “pl”, “ja”, “ko”, “de”, “it”, “pt”, “es”, “ru”, “id”, “tr”, “da”, “no”, “nl”, “hu”, “fa”, “ar”, “ur”, “he”, “th”, “cs”, “uk”, “vi”, “ro”, “bn”, “el”, “en-gb”, “gu”, “kn”, “mr”, “ta”, “bg”, “ca”, “hr”, “sr”, “sk”]
}, function(t, e, n) {
var r = n(3),
i = n(0),
o = n(20),
s = n(48),
a = “collection:”;
function u(t, e) {
return r.collectionId(t) || e
}
t.exports = function(t) {
t.params({
id: {},
url: {}
}), t.overrideProperty(“id”, {
get: function() {
var t = u(this.params.url, this.params.id);
return a + t
}
}), t.overrideProperty(“endpoint”, {
get: function() {
return o.timeline([“collection”])
}
}), t.around(“queryParams”, function(t) {
return i.aug(t(), {
collection_id: u(this.params.url, this.params.id)
})
}), t.before(“initialize”, function() {
if (!u(this.params.url, this.params.id)) throw new Error(“one of url or id is required”);
s()
})
}
}, function(t, e, n) {
var r = n(28);
t.exports = r.build([n(29), n(138)])
}, function(t, e, n) {
var r = n(3),
i = n(0),
o = n(20),
s = “event:”;
function a(t, e) {
return r.eventId(t) || e
}
t.exports = function(t) {
t.params({
id: {},
url: {}
}), t.overrideProperty(“id”, {
get: function() {
var t = a(this.params.url, this.params.id);
return s + t
}
}), t.overrideProperty(“endpoint”, {
get: function() {
return o.timeline([“event”])
}
}), t.around(“queryParams”, function(t) {
return i.aug(t(), {
event_id: a(this.params.url, this.params.id)
})
}), t.before(“initialize”, function() {
if (!a(this.params.url, this.params.id)) throw new Error(“one of url or id is required”)
})
}
}, function(t, e, n) {
var r = n(28);
t.exports = r.build([n(29), n(140)])
}, function(t, e, n) {
var r = n(3),
i = n(0),
o = n(20),
s = n(48),
a = “likes:”;
function u(t) {
return r.likesScreenName(t.url) || t.screenName
}
t.exports = function(t) {
t.params({
screenName: {},
userId: {},
url: {}
}), t.overrideProperty(“id”, {
get: function() {
var t = u(this.params) || this.params.userId;
return a + t
}
}), t.overrideProperty(“endpoint”, {
get: function() {
return o.timeline([“likes”])
}
}), t.define(“_getLikesQueryParam”, function() {
var t = u(this.params);
return t ? {
screen_name: t
} : {
user_id: this.params.userId
}
}), t.around(“queryParams”, function(t) {
return i.aug(t(), this._getLikesQueryParam())
}), t.before(“initialize”, function() {
if (!u(this.params) && !this.params.userId) throw new Error(“screen name or user id is required”);
s()
})
}
}, function(t, e, n) {
var r = n(28);
t.exports = r.build([n(29), n(142)])
}, function(t, e, n) {
var r = n(3),
i = n(0),
o = n(20),
s = “list:”;
function a(t) {
var e = r.listScreenNameAndSlug(t.url) || t;
return i.compact({
screen_name: e.ownerScreenName,
user_id: e.ownerUserId,
list_slug: e.slug
})
}
t.exports = function(t) {
t.params({
id: {},
ownerScreenName: {},
ownerUserId: {},
slug: {},
url: {}
}), t.overrideProperty(“id”, {
get: function() {
var t, e, n;
return this.params.id ? s + this.params.id : (e = (t = a(this.params)) && t.list_slug.replace(/-/g, “_”), n = t && (t.screen_name || t.user_id), s + (n + “:”) + e)
}
}), t.overrideProperty(“endpoint”, {
get: function() {
return o.timeline([“list”])
}
}), t.define(“_getListQueryParam”, function() {
return this.params.id ? {
list_id: this.params.id
} : a(this.params)
}), t.around(“queryParams”, function(t) {
return i.aug(t(), this._getListQueryParam())
}), t.defineProperty(“horizonEndpoint”, {
get: function() {
var t, e = [“timeline-list”];
return this.params.id ? e.push(“list-id”, this.params.id) : (t = a(this.params), e.push(“screen-name”, t.screen_name, “slug”, t.list_slug)), o.embedService(e)
}
}), t.before(“initialize”, function() {
var t = a(this.params);
if (i.isEmptyObject(t) && !this.params.id) throw new Error(“qualified slug or list id required”)
})
}
}, function(t, e, n) {
var r = n(28);
t.exports = r.build([n(29), n(144)])
}, function(t, e, n) {
var r = n(3),
i = n(5),
o = n(0),
s = n(20),
a = “profile:”;
function u(t, e) {
return r.screenName(t) || e
}
t.exports = function(t) {
t.params({
showReplies: {
fallback: !1,
transform: i.asBoolean
},
screenName: {},
userId: {},
url: {}
}), t.overrideProperty(“id”, {
get: function() {
var t = u(this.params.url, this.params.screenName);
return a + (t || this.params.userId)
}
}), t.overrideProperty(“endpoint”, {
get: function() {
return s.timeline([“profile”])
}
}), t.define(“_getProfileQueryParam”, function() {
var t = u(this.params.url, this.params.screenName),
e = t ? {
screen_name: t
} : {
user_id: this.params.userId
};
return o.aug(e, {
with_replies: this.params.showReplies ? “true” : “false”
})
}), t.around(“queryParams”, function(t) {
return o.aug(t(), this._getProfileQueryParam())
}), t.defineProperty(“horizonEndpoint”, {
get: function() {
var t = [“timeline-profile”],
e = u(this.params.url, this.params.screenName);
return e ? t.push(“screen-name”, e) : t.push(“user-id”, this.params.userId), s.embedService(t)
}
}), t.around(“horizonQueryParams”, function(t) {
return o.aug(t(), {
showReplies: this.params.showReplies ? “true” : “false”
})
}), t.before(“initialize”, function() {
if (!u(this.params.url, this.params.screenName) && !this.params.userId) throw new Error(“screen name or user id is required”)
})
}
}, function(t, e) {
var n = {
collection: “collection”,
moment: “moment”,
event: “event”,
likes: “likes”,
list: “list”,
profile: “profile”
};
t.exports = {
get: function(t) {
var e;
return !!t && (e = t.slice(0, t.indexOf(“:”)), -1 !== Object.keys(n).indexOf(e) && e)
},
DATASOURCE_MAP: n
}
}, function(t, e, n) {
var r = n(2);
t.exports = function(t, e) {
var i = new r;
return n.e(6).then(function(r) {
var o;
try {
o = n(87), i.resolve(new o(t, e))
} catch (t) {
i.reject(t)
}
}.bind(null, n)).catch(function(t) {
i.reject(t)
}), i.promise
}
}, function(t, e, n) {
var r = n(2);
t.exports = function(t, e) {
var i = new r;
return Promise.all([n.e(0), n.e(7)]).then(function(r) {
var o;
try {
o = n(88), i.resolve(new o(t, e))
} catch (t) {
i.reject(t)
}
}.bind(null, n)).catch(function(t) {
i.reject(t)
}), i.promise
}
}, function(t, e, n) {
var r = n(10),
i = n(3),
o = n(0),
s = n(13),
a = n(14)(),
u = n(68),
c = “blockquote.twitter-tweet, blockquote.twitter-video”,
d = /\btw-align-(left|right|center)\b/;
t.exports = function(t, e) {
return a(t, c).map(function(t) {
return u(function(t) {
var e = s(t),
n = t.getElementsByTagName(“A”),
a = n && n[n.length – 1],
u = a && i.status(a.href),
c = t.getAttribute(“data-conversation”),
l = “none” == c || “hidden” == c || r.present(t, “tw-hide-thread”),
f = t.getAttribute(“data-cards”),
h = “none” == f || “hidden” == f || r.present(t, “tw-hide-media”),
p = t.getAttribute(“data-align”) || t.getAttribute(“align”),
m = t.getAttribute(“data-theme”);
return !p && d.test(t.className) && (p = RegExp.$1), o.aug(e, {
tweetId: u,
hideThread: l,
hideCard: h,
align: p,
theme: m,
id: u
})
}(t), t.parentNode, t, e)
})
}
}, function(t, e, n) {
var r = n(2);
t.exports = function(t, e) {
var i = new r;
return n.e(8).then(function(r) {
var o;
try {
o = n(89), i.resolve(new o(t, e))
} catch (t) {
i.reject(t)
}
}.bind(null, n)).catch(function(t) {
i.reject(t)
}), i.promise
}
}, function(t, e, n) {
var r = n(10),
i = n(0),
o = n(13),
s = n(14)(),
a = n(69),
u = n(5),
c = “a.twitter-share-button, a.twitter-mention-button, a.twitter-hashtag-button”,
d = “twitter-hashtag-button”,
l = “twitter-mention-button”;
t.exports = function(t) {
return s(t, c).map(function(t) {
return a(function(t) {
var e = o(t),
n = {
screenName: t.getAttribute(“data-button-screen-name”),
text: t.getAttribute(“data-text”),
type: t.getAttribute(“data-type”),
size: t.getAttribute(“data-size”),
url: t.getAttribute(“data-url”),
hashtags: t.getAttribute(“data-hashtags”),
via: t.getAttribute(“data-via”),
buttonHashtag: t.getAttribute(“data-button-hashtag”)
};
return i.forIn(n, function(t, n) {
var r = e[t];
e[t] = u.hasValue(r) ? r : n
}), e.screenName = e.screenName || e.screen_name, e.buttonHashtag = e.buttonHashtag || e.button_hashtag || e.hashtag, r.present(t, d) && (e.type = “hashtag”), r.present(t, l) && (e.type = “mention”), e
}(t), t.parentNode, t)
})
}
}, function(t, e, n) {
var r = n(2);
t.exports = function(t, e) {
var i = new r;
return n.e(3).then(function(r) {
var o;
try {
o = n(90), i.resolve(new o(t, e))
} catch (t) {
i.reject(t)
}
}.bind(null, n)).catch(function(t) {
i.reject(t)
}), i.promise
}
}, function(t, e, n) {
var r = n(0);
t.exports = r.aug({}, n(153), n(154), n(155), n(156), n(157), n(158), n(159))
}, function(t, e, n) {
var r = n(61),
i = n(17)([“userId”], {}, r);
t.exports = {
createDMButton: i
}
}, function(t, e, n) {
var r = n(63),
i = n(17)([“screenName”], {}, r);
t.exports = {
createFollowButton: i
}
}, function(t, e, n) {
var r = n(64),
i = n(17)([“momentId”], {}, r);
t.exports = {
createMoment: i
}
}, function(t, e, n) {
var r = n(65),
i = n(17)([“username”], {}, r);
t.exports = {
createPeriscopeOnAirButton: i
}
}, function(t, e, n) {
var r = n(9),
i = n(12),
o = n(3),
s = n(0),
a = n(5),
u = n(66),
c = n(67),
d = n(17)([], {}, c),
l = n(6),
f = “Embedded grids have been deprecated. Please use twttr.widgets.createTimeline instead. More info: https://twittercommunity.com/t/update-on-the-embedded-grid-display-type/119564.”,
h = {
createTimeline: p,
createGridFromCollection: function(t) {
var e = s.toRealArray(arguments).slice(1),
n = {
sourceType: “collection”,
id: t
};
return e.unshift(n), i.publicLog(f), p.apply(this, e)
}
};
function p(t) {
var e, n = s.toRealArray(arguments).slice(1);
return a.isString(t) || a.isNumber(t) ? l.reject(“Embedded timelines with widget settings have been deprecated. See https://twittercommunity.com/t/deprecating-widget-settings/102295.”) : s.isObject(t) ? (t = t || {}, n.forEach(function(t) {
s.isType(“object”, t) && function(t) {
t.ariaLive = t.ariaPolite
}(e = t)
}), e || (e = {}, n.push(e)), t.lang = e.lang, t.tweetLimit = e.tweetLimit, t.showReplies = e.showReplies, e.dataSource = u(t), d.apply(this, n)) : l.reject(“data source must be an object.”)
}
o.isTwitterURL(r.href) && (h.createTimelinePreview = function(t, e, n) {
var r = {
previewParams: t,
useLegacyDefaults: !0,
isPreviewTimeline: !0
};
return r.dataSource = u(r), d(e, r, n)
}), t.exports = h
}, function(t, e, n) {
var r, i = n(0),
o = n(68),
s = n(17),
a = (r = s([“tweetId”], {}, o), function() {
return i.toRealArray(arguments).slice(1).forEach(function(t) {
i.isType(“object”, t) && (t.hideCard = “none” == t.cards || “hidden” == t.cards, t.hideThread = “none” == t.conversation || “hidden” == t.conversation)
}), r.apply(this, arguments)
});
t.exports = {
createTweet: a,
createTweetEmbed: a,
createVideo: a
}
}, function(t, e, n) {
var r = n(0),
i = n(69),
o = n(17),
s = o([“url”], {
type: “share”
}, i),
a = o([“buttonHashtag”], {
type: “hashtag”
}, i),
u = o([“screenName”], {
type: “mention”
}, i);
function c(t) {
return function() {
return r.toRealArray(arguments).slice(1).forEach(function(t) {
r.isType(“object”, t) && (t.screenName = t.screenName || t.screen_name, t.buttonHashtag = t.buttonHashtag || t.button_hashtag || t.hashtag)
}), t.apply(this, arguments)
}
}
t.exports = {
createShareButton: c(s),
createHashtagButton: c(a),
createMentionButton: c(u)
}
}, function(t, e, n) {
var r, i, o, s = n(4),
a = n(1),
u = 0,
c = [],
d = s.createElement(“a”);
function l() {
var t, e;
for (u = 1, t = 0, e = c.length; t