haikuwebkit/PerformanceTests/JSBench/twitter-chrome/urem.js

25406 lines
2.2 MiB
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* Replayable replacements for global functions */
/***************************************************************
* BEGIN STABLE.JS
**************************************************************/
//! stable.js 0.1.3, https://github.com/Two-Screen/stable
//! © 2012 Stéphan Kochen, Angry Bytes. MIT licensed.
(function() {
// A stable array sort, because `Array#sort()` is not guaranteed stable.
// This is an implementation of merge sort, without recursion.
var stable = function(arr, comp) {
if (typeof(comp) !== 'function') {
comp = function(a, b) {
a = String(a);
b = String(b);
if (a < b) return -1;
if (a > b) return 1;
return 0;
};
}
var len = arr.length;
if (len <= 1) return arr;
// Rather than dividing input, simply iterate chunks of 1, 2, 4, 8, etc.
// Chunks are the size of the left or right hand in merge sort.
// Stop when the left-hand covers all of the array.
var oarr = arr;
for (var chk = 1; chk < len; chk *= 2) {
arr = pass(arr, comp, chk);
}
for (var i = 0; i < len; i++) {
oarr[i] = arr[i];
}
return oarr;
};
// Run a single pass with the given chunk size. Returns a new array.
var pass = function(arr, comp, chk) {
var len = arr.length;
// Output, and position.
var result = new Array(len);
var i = 0;
// Step size / double chunk size.
var dbl = chk * 2;
// Bounds of the left and right chunks.
var l, r, e;
// Iterators over the left and right chunk.
var li, ri;
// Iterate over pairs of chunks.
for (l = 0; l < len; l += dbl) {
r = l + chk;
e = r + chk;
if (r > len) r = len;
if (e > len) e = len;
// Iterate both chunks in parallel.
li = l;
ri = r;
while (true) {
// Compare the chunks.
if (li < r && ri < e) {
// This works for a regular `sort()` compatible comparator,
// but also for a simple comparator like: `a > b`
if (comp(arr[li], arr[ri]) <= 0) {
result[i++] = arr[li++];
}
else {
result[i++] = arr[ri++];
}
}
// Nothing to compare, just flush what's left.
else if (li < r) {
result[i++] = arr[li++];
}
else if (ri < e) {
result[i++] = arr[ri++];
}
// Both iterators are at the chunk ends.
else {
break;
}
}
}
return result;
};
var arrsort = function(comp) {
return stable(this, comp);
};
if (Object.defineProperty) {
Object.defineProperty(Array.prototype, "sort", {
configurable: true, writable: true, enumerable: false,
value: arrsort
});
} else {
Array.prototype.sort = arrsort;
}
})();
/***************************************************************
* END STABLE.JS
**************************************************************/
/*
* In a generated replay, this file is partially common, boilerplate code
* included in every replay, and partially generated replay code. The following
* header applies to the boilerplate code. A comment indicating "Auto-generated
* below this comment" marks the separation between these two parts.
*
* Copyright (C) 2011, 2012 Purdue University
* Written by Gregor Richards
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
(function() {
// global eval alias
var geval = eval;
// detect if we're in a browser or not
var inbrowser = false;
var inharness = false;
var finished = false;
if (typeof window !== "undefined" && "document" in window) {
inbrowser = true;
if (window.parent && "JSBNG_handleResult" in window.parent) {
inharness = true;
}
} else if (typeof global !== "undefined") {
window = global;
window.top = window;
} else {
window = (function() { return this; })();
window.top = window;
}
if ("console" in window) {
window.JSBNG_Console = window.console;
}
var callpath = [];
// Workaround for bound functions as events
delete Function.prototype.bind;
// global state
var JSBNG_Replay = window.top.JSBNG_Replay = {
push: function(arr, fun) {
arr.push(fun);
return fun;
},
path: function(str) {
verifyPath(str);
},
forInKeys: function(of) {
var keys = [];
for (var k in of)
keys.push(k);
return keys.sort();
}
};
var currentTimeInMS;
if (inharness) {
currentTimeInMS = window.parent.currentTimeInMS;
} else {
if (window.performance && window.performance.now)
currentTimeInMS = function() { return window.performance.now() };
else if (typeof preciseTime !== 'undefined')
currentTimeInMS = function() { return preciseTime() * 1000; };
else
currentTimeInMS = function() { return Date.now(); };
}
// the actual replay runner
function onload() {
try {
delete window.onload;
} catch (ex) {}
var jr = JSBNG_Replay$;
var cb = function() {
var end = currentTimeInMS();
finished = true;
var msg = "Time: " + (end - st) + "ms";
if (inharness) {
window.parent.JSBNG_handleResult({error:false, time:(end - st)});
} else if (inbrowser) {
var res = document.createElement("div");
res.style.position = "fixed";
res.style.left = "1em";
res.style.top = "1em";
res.style.width = "35em";
res.style.height = "5em";
res.style.padding = "1em";
res.style.backgroundColor = "white";
res.style.color = "black";
res.appendChild(document.createTextNode(msg));
document.body.appendChild(res);
} else if (typeof console !== "undefined") {
console.log(msg);
} else if (typeof print !== "undefined") {
// hopefully not the browser print() function :)
print(msg);
}
};
// force it to JIT
jr(false);
// then time it
var st = currentTimeInMS();
while (jr !== null) {
jr = jr(true, cb);
}
}
// add a frame at replay time
function iframe(pageid) {
var iw;
if (inbrowser) {
// represent the iframe as an iframe (of course)
var iframe = document.createElement("iframe");
iframe.style.display = "none";
document.body.appendChild(iframe);
iw = iframe.contentWindow;
iw.document.write("<script type=\"text/javascript\">var JSBNG_Replay_geval = eval;</script>");
iw.document.close();
} else {
// no general way, just lie and do horrible things
var topwin = window;
(function() {
var window = {};
window.window = window;
window.top = topwin;
window.JSBNG_Replay_geval = function(str) {
eval(str);
}
iw = window;
})();
}
return iw;
}
// called at the end of the replay stuff
function finalize() {
if (inbrowser) {
setTimeout(onload, 0);
} else {
onload();
}
}
// verify this recorded value and this replayed value are close enough
function verify(rep, rec) {
if (rec !== rep &&
(rep === rep || rec === rec) /* NaN test */) {
// FIXME?
if (typeof rec === "function" && typeof rep === "function") {
return true;
}
if (typeof rec !== "object" || rec === null ||
!(("__JSBNG_unknown_" + typeof(rep)) in rec)) {
return false;
}
}
return true;
}
// general message
var firstMessage = true;
function replayMessage(msg) {
if (inbrowser) {
if (firstMessage)
document.open();
firstMessage = false;
document.write(msg);
} else {
console.log(msg);
}
}
// complain when there's an error
function verificationError(msg) {
if (finished) return;
if (inharness) {
window.parent.JSBNG_handleResult({error:true, msg: msg});
} else replayMessage(msg);
throw new Error();
}
// to verify a set
function verifySet(objstr, obj, prop, gvalstr, gval) {
if (/^on/.test(prop)) {
// these aren't instrumented compatibly
return;
}
if (!verify(obj[prop], gval)) {
var bval = obj[prop];
var msg = "Verification failure! " + objstr + "." + prop + " is not " + gvalstr + ", it's " + bval + "!";
verificationError(msg);
}
}
// to verify a call or new
function verifyCall(iscall, func, cthis, cargs) {
var ok = true;
var callArgs = func.callArgs[func.inst];
iscall = iscall ? 1 : 0;
if (cargs.length !== callArgs.length - 1) {
ok = false;
} else {
if (iscall && !verify(cthis, callArgs[0])) ok = false;
for (var i = 0; i < cargs.length; i++) {
if (!verify(cargs[i], callArgs[i+1])) ok = false;
}
}
if (!ok) {
var msg = "Call verification failure!";
verificationError(msg);
}
return func.returns[func.inst++];
}
// to verify the callpath
function verifyPath(func) {
var real = callpath.shift();
if (real !== func) {
var msg = "Call path verification failure! Expected " + real + ", found " + func;
verificationError(msg);
}
}
// figure out how to define getters
var defineGetter;
if (Object.defineProperty) {
var odp = Object.defineProperty;
defineGetter = function(obj, prop, getter, setter) {
if (typeof setter === "undefined") setter = function(){};
odp(obj, prop, {"enumerable": true, "configurable": true, "get": getter, "set": setter});
};
} else if (Object.prototype.__defineGetter__) {
var opdg = Object.prototype.__defineGetter__;
var opds = Object.prototype.__defineSetter__;
defineGetter = function(obj, prop, getter, setter) {
if (typeof setter === "undefined") setter = function(){};
opdg.call(obj, prop, getter);
opds.call(obj, prop, setter);
};
} else {
defineGetter = function() {
verificationError("This replay requires getters for correct behavior, and your JS engine appears to be incapable of defining getters. Sorry!");
};
}
var defineRegetter = function(obj, prop, getter, setter) {
defineGetter(obj, prop, function() {
return getter.call(this, prop);
}, function(val) {
// once it's set by the client, it's claimed
setter.call(this, prop, val);
Object.defineProperty(obj, prop, {
"enumerable": true, "configurable": true, "writable": true,
"value": val
});
});
}
// for calling events
var fpc = Function.prototype.call;
// resist the urge, don't put a })(); here!
/******************************************************************************
* Auto-generated below this comment
*****************************************************************************/
var ow637880758 = window;
var f637880758_0;
var o0;
var o1;
var o2;
var f637880758_4;
var f637880758_7;
var f637880758_12;
var o3;
var o4;
var o5;
var f637880758_49;
var f637880758_51;
var o6;
var f637880758_53;
var f637880758_54;
var f637880758_57;
var o7;
var f637880758_59;
var f637880758_60;
var f637880758_61;
var f637880758_62;
var f637880758_70;
var f637880758_157;
var f637880758_420;
var f637880758_470;
var f637880758_472;
var f637880758_473;
var f637880758_474;
var o8;
var f637880758_476;
var f637880758_477;
var o9;
var o10;
var o11;
var f637880758_482;
var o12;
var o13;
var o14;
var f637880758_492;
var f637880758_496;
var f637880758_501;
var f637880758_502;
var f637880758_504;
var f637880758_512;
var f637880758_517;
var f637880758_519;
var f637880758_522;
var f637880758_526;
var f637880758_527;
var f637880758_528;
var f637880758_529;
var f637880758_531;
var f637880758_541;
var f637880758_544;
var f637880758_546;
var f637880758_547;
var f637880758_548;
var f637880758_550;
var f637880758_562;
var f637880758_579;
var f637880758_746;
var f637880758_747;
var fo637880758_1_jQuery18309834662606008351;
var f637880758_2577;
var fo637880758_2581_jQuery18309834662606008351;
var fo637880758_2583_jQuery18309834662606008351;
var fo637880758_2595_offsetWidth;
var o15;
var o16;
var f637880758_2695;
JSBNG_Replay.s19277ddcd28db6dd01a1d67d562dfbbffa3c6a17_4 = [];
// 1
// record generated by JSBench at 2013-07-10T18:58:52.559Z
// 2
// 3
f637880758_0 = function() { return f637880758_0.returns[f637880758_0.inst++]; };
f637880758_0.returns = [];
f637880758_0.inst = 0;
// 4
ow637880758.JSBNG__Date = f637880758_0;
// 5
o0 = {};
// 6
ow637880758.JSBNG__document = o0;
// 7
o1 = {};
// 8
ow637880758.JSBNG__sessionStorage = o1;
// 9
o2 = {};
// 10
ow637880758.JSBNG__localStorage = o2;
// 11
f637880758_4 = function() { return f637880758_4.returns[f637880758_4.inst++]; };
f637880758_4.returns = [];
f637880758_4.inst = 0;
// 12
ow637880758.JSBNG__getComputedStyle = f637880758_4;
// 17
f637880758_7 = function() { return f637880758_7.returns[f637880758_7.inst++]; };
f637880758_7.returns = [];
f637880758_7.inst = 0;
// 18
ow637880758.JSBNG__addEventListener = f637880758_7;
// 19
ow637880758.JSBNG__top = ow637880758;
// 24
ow637880758.JSBNG__scrollX = 0;
// 25
ow637880758.JSBNG__scrollY = 0;
// 30
f637880758_12 = function() { return f637880758_12.returns[f637880758_12.inst++]; };
f637880758_12.returns = [];
f637880758_12.inst = 0;
// 31
ow637880758.JSBNG__setTimeout = f637880758_12;
// 42
ow637880758.JSBNG__frames = ow637880758;
// 45
ow637880758.JSBNG__self = ow637880758;
// 46
o3 = {};
// 47
ow637880758.JSBNG__navigator = o3;
// 50
o4 = {};
// 51
ow637880758.JSBNG__history = o4;
// 62
ow637880758.JSBNG__closed = false;
// 65
ow637880758.JSBNG__opener = null;
// 66
ow637880758.JSBNG__defaultStatus = "";
// 67
o5 = {};
// 68
ow637880758.JSBNG__location = o5;
// 69
ow637880758.JSBNG__innerWidth = 1050;
// 70
ow637880758.JSBNG__innerHeight = 588;
// 71
ow637880758.JSBNG__outerWidth = 1050;
// 72
ow637880758.JSBNG__outerHeight = 660;
// 73
ow637880758.JSBNG__screenX = 12;
// 74
ow637880758.JSBNG__screenY = 27;
// 75
ow637880758.JSBNG__pageXOffset = 0;
// 76
ow637880758.JSBNG__pageYOffset = 0;
// 101
ow637880758.JSBNG__frameElement = null;
// 118
f637880758_49 = function() { return f637880758_49.returns[f637880758_49.inst++]; };
f637880758_49.returns = [];
f637880758_49.inst = 0;
// 119
ow637880758.JSBNG__webkitIDBTransaction = f637880758_49;
// 122
f637880758_51 = function() { return f637880758_51.returns[f637880758_51.inst++]; };
f637880758_51.returns = [];
f637880758_51.inst = 0;
// 123
ow637880758.JSBNG__webkitIDBIndex = f637880758_51;
// 124
o6 = {};
// 125
ow637880758.JSBNG__webkitIndexedDB = o6;
// 126
ow637880758.JSBNG__screenLeft = 12;
// 127
f637880758_53 = function() { return f637880758_53.returns[f637880758_53.inst++]; };
f637880758_53.returns = [];
f637880758_53.inst = 0;
// 128
ow637880758.JSBNG__webkitIDBFactory = f637880758_53;
// 129
ow637880758.JSBNG__clientInformation = o3;
// 130
f637880758_54 = function() { return f637880758_54.returns[f637880758_54.inst++]; };
f637880758_54.returns = [];
f637880758_54.inst = 0;
// 131
ow637880758.JSBNG__webkitIDBCursor = f637880758_54;
// 132
ow637880758.JSBNG__defaultstatus = "";
// 137
f637880758_57 = function() { return f637880758_57.returns[f637880758_57.inst++]; };
f637880758_57.returns = [];
f637880758_57.inst = 0;
// 138
ow637880758.JSBNG__webkitIDBDatabase = f637880758_57;
// 139
o7 = {};
// 140
ow637880758.JSBNG__console = o7;
// 141
f637880758_59 = function() { return f637880758_59.returns[f637880758_59.inst++]; };
f637880758_59.returns = [];
f637880758_59.inst = 0;
// 142
ow637880758.JSBNG__webkitIDBRequest = f637880758_59;
// 143
f637880758_60 = function() { return f637880758_60.returns[f637880758_60.inst++]; };
f637880758_60.returns = [];
f637880758_60.inst = 0;
// 144
ow637880758.JSBNG__webkitIDBObjectStore = f637880758_60;
// 145
ow637880758.JSBNG__devicePixelRatio = 1;
// 146
f637880758_61 = function() { return f637880758_61.returns[f637880758_61.inst++]; };
f637880758_61.returns = [];
f637880758_61.inst = 0;
// 147
ow637880758.JSBNG__webkitURL = f637880758_61;
// 148
f637880758_62 = function() { return f637880758_62.returns[f637880758_62.inst++]; };
f637880758_62.returns = [];
f637880758_62.inst = 0;
// 149
ow637880758.JSBNG__webkitIDBKeyRange = f637880758_62;
// 150
ow637880758.JSBNG__offscreenBuffering = true;
// 151
ow637880758.JSBNG__screenTop = 27;
// 166
f637880758_70 = function() { return f637880758_70.returns[f637880758_70.inst++]; };
f637880758_70.returns = [];
f637880758_70.inst = 0;
// 167
ow637880758.JSBNG__XMLHttpRequest = f637880758_70;
// 170
ow637880758.JSBNG__URL = f637880758_61;
// 171
ow637880758.JSBNG__name = "";
// 178
ow637880758.JSBNG__status = "";
// 343
f637880758_157 = function() { return f637880758_157.returns[f637880758_157.inst++]; };
f637880758_157.returns = [];
f637880758_157.inst = 0;
// 344
ow637880758.JSBNG__Document = f637880758_157;
// 619
ow637880758.JSBNG__XMLDocument = f637880758_157;
// 840
ow637880758.JSBNG__TEMPORARY = 0;
// 841
ow637880758.JSBNG__PERSISTENT = 1;
// 872
f637880758_420 = function() { return f637880758_420.returns[f637880758_420.inst++]; };
f637880758_420.returns = [];
f637880758_420.inst = 0;
// 873
ow637880758.JSBNG__WebKitMutationObserver = f637880758_420;
// 892
ow637880758.JSBNG__indexedDB = o6;
// undefined
o6 = null;
// 893
o6 = {};
// 894
ow637880758.JSBNG__Intl = o6;
// 895
ow637880758.JSBNG__v8Intl = o6;
// undefined
o6 = null;
// 946
ow637880758.JSBNG__IDBTransaction = f637880758_49;
// 947
ow637880758.JSBNG__IDBRequest = f637880758_59;
// 950
ow637880758.JSBNG__IDBObjectStore = f637880758_60;
// 951
ow637880758.JSBNG__IDBKeyRange = f637880758_62;
// 952
ow637880758.JSBNG__IDBIndex = f637880758_51;
// 953
ow637880758.JSBNG__IDBFactory = f637880758_53;
// 954
ow637880758.JSBNG__IDBDatabase = f637880758_57;
// 957
ow637880758.JSBNG__IDBCursor = f637880758_54;
// 958
ow637880758.JSBNG__MutationObserver = f637880758_420;
// 983
ow637880758.JSBNG__onerror = null;
// 984
f637880758_470 = function() { return f637880758_470.returns[f637880758_470.inst++]; };
f637880758_470.returns = [];
f637880758_470.inst = 0;
// 985
ow637880758.Math.JSBNG__random = f637880758_470;
// 986
// 988
o6 = {};
// 989
o0.documentElement = o6;
// 991
o6.className = "";
// 993
f637880758_472 = function() { return f637880758_472.returns[f637880758_472.inst++]; };
f637880758_472.returns = [];
f637880758_472.inst = 0;
// 994
o6.getAttribute = f637880758_472;
// 995
f637880758_472.returns.push("swift-loading");
// 996
// 998
// 999
// 1000
// 1001
// 1002
f637880758_12.returns.push(1);
// 1004
f637880758_473 = function() { return f637880758_473.returns[f637880758_473.inst++]; };
f637880758_473.returns = [];
f637880758_473.inst = 0;
// 1005
o0.JSBNG__addEventListener = f637880758_473;
// 1007
f637880758_473.returns.push(undefined);
// 1009
f637880758_473.returns.push(undefined);
// 1011
// 1012
o0.nodeType = 9;
// 1013
f637880758_474 = function() { return f637880758_474.returns[f637880758_474.inst++]; };
f637880758_474.returns = [];
f637880758_474.inst = 0;
// 1014
o0.createElement = f637880758_474;
// 1015
o8 = {};
// 1016
f637880758_474.returns.push(o8);
// 1017
f637880758_476 = function() { return f637880758_476.returns[f637880758_476.inst++]; };
f637880758_476.returns = [];
f637880758_476.inst = 0;
// 1018
o8.setAttribute = f637880758_476;
// 1019
f637880758_476.returns.push(undefined);
// 1020
// 1021
f637880758_477 = function() { return f637880758_477.returns[f637880758_477.inst++]; };
f637880758_477.returns = [];
f637880758_477.inst = 0;
// 1022
o8.getElementsByTagName = f637880758_477;
// 1023
o9 = {};
// 1024
f637880758_477.returns.push(o9);
// 1026
o10 = {};
// 1027
f637880758_477.returns.push(o10);
// 1028
o11 = {};
// 1029
o10["0"] = o11;
// undefined
o10 = null;
// 1030
o9.length = 4;
// undefined
o9 = null;
// 1032
o9 = {};
// 1033
f637880758_474.returns.push(o9);
// 1034
f637880758_482 = function() { return f637880758_482.returns[f637880758_482.inst++]; };
f637880758_482.returns = [];
f637880758_482.inst = 0;
// 1035
o9.appendChild = f637880758_482;
// 1037
o10 = {};
// 1038
f637880758_474.returns.push(o10);
// 1039
f637880758_482.returns.push(o10);
// 1041
o12 = {};
// 1042
f637880758_477.returns.push(o12);
// 1043
o13 = {};
// 1044
o12["0"] = o13;
// undefined
o12 = null;
// 1045
o12 = {};
// 1046
o11.style = o12;
// 1047
// 1048
o14 = {};
// 1049
o8.firstChild = o14;
// 1050
o14.nodeType = 3;
// undefined
o14 = null;
// 1052
o14 = {};
// 1053
f637880758_477.returns.push(o14);
// 1054
o14.length = 0;
// undefined
o14 = null;
// 1056
o14 = {};
// 1057
f637880758_477.returns.push(o14);
// 1058
o14.length = 1;
// undefined
o14 = null;
// 1059
o11.getAttribute = f637880758_472;
// undefined
o11 = null;
// 1060
f637880758_472.returns.push("top: 1px; float: left; opacity: 0.5;");
// 1062
f637880758_472.returns.push("/a");
// 1064
o12.opacity = "0.5";
// 1066
o12.cssFloat = "left";
// undefined
o12 = null;
// 1067
o13.value = "on";
// 1068
o10.selected = true;
// 1069
o8.className = "";
// 1071
o11 = {};
// 1072
f637880758_474.returns.push(o11);
// 1073
o11.enctype = "application/x-www-form-urlencoded";
// undefined
o11 = null;
// 1075
o11 = {};
// 1076
f637880758_474.returns.push(o11);
// 1077
f637880758_492 = function() { return f637880758_492.returns[f637880758_492.inst++]; };
f637880758_492.returns = [];
f637880758_492.inst = 0;
// 1078
o11.cloneNode = f637880758_492;
// undefined
o11 = null;
// 1079
o11 = {};
// 1080
f637880758_492.returns.push(o11);
// 1081
o11.outerHTML = "<nav></nav>";
// undefined
o11 = null;
// 1082
o0.compatMode = "CSS1Compat";
// 1083
// 1084
o13.cloneNode = f637880758_492;
// undefined
o13 = null;
// 1085
o11 = {};
// 1086
f637880758_492.returns.push(o11);
// 1087
o11.checked = true;
// undefined
o11 = null;
// 1088
// undefined
o9 = null;
// 1089
o10.disabled = false;
// undefined
o10 = null;
// 1090
// 1091
o8.JSBNG__addEventListener = f637880758_473;
// 1093
o9 = {};
// 1094
f637880758_474.returns.push(o9);
// 1095
// 1096
o9.setAttribute = f637880758_476;
// 1097
f637880758_476.returns.push(undefined);
// 1099
f637880758_476.returns.push(undefined);
// 1101
f637880758_476.returns.push(undefined);
// 1102
o8.appendChild = f637880758_482;
// 1103
f637880758_482.returns.push(o9);
// 1104
f637880758_496 = function() { return f637880758_496.returns[f637880758_496.inst++]; };
f637880758_496.returns = [];
f637880758_496.inst = 0;
// 1105
o0.createDocumentFragment = f637880758_496;
// 1106
o10 = {};
// 1107
f637880758_496.returns.push(o10);
// 1108
o10.appendChild = f637880758_482;
// 1109
o8.lastChild = o9;
// 1110
f637880758_482.returns.push(o9);
// 1111
o10.cloneNode = f637880758_492;
// 1112
o11 = {};
// 1113
f637880758_492.returns.push(o11);
// 1114
o11.cloneNode = f637880758_492;
// undefined
o11 = null;
// 1115
o11 = {};
// 1116
f637880758_492.returns.push(o11);
// 1117
o12 = {};
// 1118
o11.lastChild = o12;
// undefined
o11 = null;
// 1119
o12.checked = true;
// undefined
o12 = null;
// 1120
o9.checked = true;
// 1121
f637880758_501 = function() { return f637880758_501.returns[f637880758_501.inst++]; };
f637880758_501.returns = [];
f637880758_501.inst = 0;
// 1122
o10.removeChild = f637880758_501;
// undefined
o10 = null;
// 1123
f637880758_501.returns.push(o9);
// undefined
o9 = null;
// 1125
f637880758_482.returns.push(o8);
// 1126
o8.JSBNG__attachEvent = void 0;
// 1127
o0.readyState = "interactive";
// 1130
f637880758_473.returns.push(undefined);
// 1131
f637880758_7.returns.push(undefined);
// 1133
f637880758_501.returns.push(o8);
// undefined
o8 = null;
// 1134
f637880758_470.returns.push(0.9834662606008351);
// 1135
f637880758_502 = function() { return f637880758_502.returns[f637880758_502.inst++]; };
f637880758_502.returns = [];
f637880758_502.inst = 0;
// 1136
o0.JSBNG__removeEventListener = f637880758_502;
// 1137
f637880758_470.returns.push(0.6948561759199947);
// 1140
o8 = {};
// 1141
f637880758_474.returns.push(o8);
// 1142
o8.appendChild = f637880758_482;
// 1143
f637880758_504 = function() { return f637880758_504.returns[f637880758_504.inst++]; };
f637880758_504.returns = [];
f637880758_504.inst = 0;
// 1144
o0.createComment = f637880758_504;
// 1145
o9 = {};
// 1146
f637880758_504.returns.push(o9);
// 1147
f637880758_482.returns.push(o9);
// undefined
o9 = null;
// 1148
o8.getElementsByTagName = f637880758_477;
// undefined
o8 = null;
// 1149
o8 = {};
// 1150
f637880758_477.returns.push(o8);
// 1151
o8.length = 0;
// undefined
o8 = null;
// 1153
o8 = {};
// 1154
f637880758_474.returns.push(o8);
// 1155
// 1156
o9 = {};
// 1157
o8.firstChild = o9;
// undefined
o8 = null;
// 1159
o9.getAttribute = f637880758_472;
// undefined
o9 = null;
// 1162
f637880758_472.returns.push("#");
// 1164
o8 = {};
// 1165
f637880758_474.returns.push(o8);
// 1166
// 1167
o9 = {};
// 1168
o8.lastChild = o9;
// undefined
o8 = null;
// 1169
o9.getAttribute = f637880758_472;
// undefined
o9 = null;
// 1170
f637880758_472.returns.push(null);
// 1172
o8 = {};
// 1173
f637880758_474.returns.push(o8);
// 1174
// 1175
f637880758_512 = function() { return f637880758_512.returns[f637880758_512.inst++]; };
f637880758_512.returns = [];
f637880758_512.inst = 0;
// 1176
o8.getElementsByClassName = f637880758_512;
// 1178
o9 = {};
// 1179
f637880758_512.returns.push(o9);
// 1180
o9.length = 1;
// undefined
o9 = null;
// 1181
o9 = {};
// 1182
o8.lastChild = o9;
// undefined
o8 = null;
// 1183
// undefined
o9 = null;
// 1185
o8 = {};
// 1186
f637880758_512.returns.push(o8);
// 1187
o8.length = 2;
// undefined
o8 = null;
// 1189
o8 = {};
// 1190
f637880758_474.returns.push(o8);
// 1191
// 1192
// 1193
f637880758_517 = function() { return f637880758_517.returns[f637880758_517.inst++]; };
f637880758_517.returns = [];
f637880758_517.inst = 0;
// 1194
o6.insertBefore = f637880758_517;
// 1195
o9 = {};
// 1196
o6.firstChild = o9;
// 1197
f637880758_517.returns.push(o8);
// 1198
f637880758_519 = function() { return f637880758_519.returns[f637880758_519.inst++]; };
f637880758_519.returns = [];
f637880758_519.inst = 0;
// 1199
o0.getElementsByName = f637880758_519;
// 1201
o10 = {};
// 1202
f637880758_519.returns.push(o10);
// 1203
o10.length = 2;
// undefined
o10 = null;
// 1205
o10 = {};
// 1206
f637880758_519.returns.push(o10);
// 1207
o10.length = 0;
// undefined
o10 = null;
// 1208
f637880758_522 = function() { return f637880758_522.returns[f637880758_522.inst++]; };
f637880758_522.returns = [];
f637880758_522.inst = 0;
// 1209
o0.getElementById = f637880758_522;
// 1210
f637880758_522.returns.push(null);
// 1211
o6.removeChild = f637880758_501;
// 1212
f637880758_501.returns.push(o8);
// undefined
o8 = null;
// 1213
o8 = {};
// 1214
o6.childNodes = o8;
// 1215
o8.length = 3;
// 1216
o8["0"] = o9;
// 1217
o10 = {};
// 1218
o8["1"] = o10;
// undefined
o10 = null;
// 1219
o10 = {};
// 1220
o8["2"] = o10;
// undefined
o8 = null;
// 1221
f637880758_526 = function() { return f637880758_526.returns[f637880758_526.inst++]; };
f637880758_526.returns = [];
f637880758_526.inst = 0;
// 1222
o6.contains = f637880758_526;
// 1223
f637880758_527 = function() { return f637880758_527.returns[f637880758_527.inst++]; };
f637880758_527.returns = [];
f637880758_527.inst = 0;
// 1224
o6.compareDocumentPosition = f637880758_527;
// 1225
f637880758_528 = function() { return f637880758_528.returns[f637880758_528.inst++]; };
f637880758_528.returns = [];
f637880758_528.inst = 0;
// 1226
o0.querySelectorAll = f637880758_528;
// 1227
o6.matchesSelector = void 0;
// 1228
o6.mozMatchesSelector = void 0;
// 1229
f637880758_529 = function() { return f637880758_529.returns[f637880758_529.inst++]; };
f637880758_529.returns = [];
f637880758_529.inst = 0;
// 1230
o6.webkitMatchesSelector = f637880758_529;
// 1232
o8 = {};
// 1233
f637880758_474.returns.push(o8);
// 1234
// 1235
f637880758_531 = function() { return f637880758_531.returns[f637880758_531.inst++]; };
f637880758_531.returns = [];
f637880758_531.inst = 0;
// 1236
o8.querySelectorAll = f637880758_531;
// undefined
o8 = null;
// 1237
o8 = {};
// 1238
f637880758_531.returns.push(o8);
// 1239
o8.length = 1;
// undefined
o8 = null;
// 1241
o8 = {};
// 1242
f637880758_531.returns.push(o8);
// 1243
o8.length = 1;
// undefined
o8 = null;
// 1245
o8 = {};
// 1246
f637880758_474.returns.push(o8);
// 1247
// 1248
o8.querySelectorAll = f637880758_531;
// 1249
o11 = {};
// 1250
f637880758_531.returns.push(o11);
// 1251
o11.length = 0;
// undefined
o11 = null;
// 1252
// undefined
o8 = null;
// 1254
o8 = {};
// 1255
f637880758_531.returns.push(o8);
// 1256
o8.length = 1;
// undefined
o8 = null;
// 1258
o8 = {};
// 1259
f637880758_474.returns.push(o8);
// undefined
o8 = null;
// 1260
f637880758_529.returns.push(true);
// 1262
o8 = {};
// 1263
f637880758_496.returns.push(o8);
// 1264
o8.createElement = void 0;
// 1265
o8.appendChild = f637880758_482;
// undefined
o8 = null;
// 1267
o8 = {};
// 1268
f637880758_474.returns.push(o8);
// 1269
f637880758_482.returns.push(o8);
// undefined
o8 = null;
// 1270
o3.userAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36";
// 1271
o5.href = "https://twitter.com/search?q=%23javascript";
// 1272
o8 = {};
// 1273
f637880758_0.returns.push(o8);
// 1274
f637880758_541 = function() { return f637880758_541.returns[f637880758_541.inst++]; };
f637880758_541.returns = [];
f637880758_541.inst = 0;
// 1275
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1276
f637880758_541.returns.push(1373482781376);
// 1277
o8 = {};
// 1278
f637880758_70.returns.push(o8);
// undefined
o8 = null;
// 1279
o8 = {};
// 1280
f637880758_0.prototype = o8;
// 1281
f637880758_544 = function() { return f637880758_544.returns[f637880758_544.inst++]; };
f637880758_544.returns = [];
f637880758_544.inst = 0;
// 1282
o8.toISOString = f637880758_544;
// 1283
o11 = {};
// 1284
f637880758_0.returns.push(o11);
// 1285
o11.toISOString = f637880758_544;
// undefined
o11 = null;
// 1286
f637880758_544.returns.push("-000001-01-01T00:00:00.000Z");
// 1287
f637880758_546 = function() { return f637880758_546.returns[f637880758_546.inst++]; };
f637880758_546.returns = [];
f637880758_546.inst = 0;
// 1288
f637880758_0.now = f637880758_546;
// 1290
f637880758_547 = function() { return f637880758_547.returns[f637880758_547.inst++]; };
f637880758_547.returns = [];
f637880758_547.inst = 0;
// 1291
o8.toJSON = f637880758_547;
// undefined
o8 = null;
// 1292
f637880758_548 = function() { return f637880758_548.returns[f637880758_548.inst++]; };
f637880758_548.returns = [];
f637880758_548.inst = 0;
// 1293
f637880758_0.parse = f637880758_548;
// 1295
f637880758_548.returns.push(8640000000000000);
// 1297
o8 = {};
// 1298
f637880758_474.returns.push(o8);
// undefined
o8 = null;
// 1299
ow637880758.JSBNG__attachEvent = undefined;
// 1300
f637880758_550 = function() { return f637880758_550.returns[f637880758_550.inst++]; };
f637880758_550.returns = [];
f637880758_550.inst = 0;
// 1301
o0.getElementsByTagName = f637880758_550;
// 1302
o8 = {};
// 1303
f637880758_550.returns.push(o8);
// 1305
o11 = {};
// 1306
f637880758_474.returns.push(o11);
// 1307
o12 = {};
// 1308
o8["0"] = o12;
// 1309
o12.src = "http://jsbngssl.twitter.com/JSBENCH_NG_RECORD_OBJECTS.js";
// 1310
o13 = {};
// 1311
o8["1"] = o13;
// 1312
o13.src = "http://jsbngssl.twitter.com/JSBENCH_NG_RECORD.js";
// undefined
o13 = null;
// 1313
o13 = {};
// 1314
o8["2"] = o13;
// 1315
o13.src = "";
// undefined
o13 = null;
// 1316
o13 = {};
// 1317
o8["3"] = o13;
// 1318
o13.src = "";
// undefined
o13 = null;
// 1319
o13 = {};
// 1320
o8["4"] = o13;
// 1321
o13.src = "";
// undefined
o13 = null;
// 1322
o13 = {};
// 1323
o8["5"] = o13;
// 1324
o13.src = "";
// undefined
o13 = null;
// 1325
o13 = {};
// 1326
o8["6"] = o13;
// 1327
o13.src = "http://jsbngssl.abs.twimg.com/c/swift/en/init.fc6418142bd015a47a0c8c1f3f5b7acd225021e8.js";
// undefined
o13 = null;
// 1328
o8["7"] = void 0;
// undefined
o8 = null;
// 1330
o8 = {};
// 1331
f637880758_522.returns.push(o8);
// 1332
o8.parentNode = o10;
// 1333
o8.id = "swift-module-path";
// 1334
o8.type = "hidden";
// 1335
o8.nodeName = "INPUT";
// 1336
o8.value = "http://jsbngssl.abs.twimg.com/c/swift/en";
// undefined
o8 = null;
// 1338
o0.ownerDocument = null;
// 1340
o6.nodeName = "HTML";
// 1344
o8 = {};
// 1345
f637880758_528.returns.push(o8);
// 1346
o8["0"] = void 0;
// undefined
o8 = null;
// 1351
f637880758_562 = function() { return f637880758_562.returns[f637880758_562.inst++]; };
f637880758_562.returns = [];
f637880758_562.inst = 0;
// 1352
o0.getElementsByClassName = f637880758_562;
// 1354
o8 = {};
// 1355
f637880758_562.returns.push(o8);
// 1356
o8["0"] = void 0;
// undefined
o8 = null;
// 1357
o8 = {};
// 1358
f637880758_0.returns.push(o8);
// 1359
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1360
f637880758_541.returns.push(1373482781400);
// 1361
o8 = {};
// 1362
f637880758_0.returns.push(o8);
// 1363
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1364
f637880758_541.returns.push(1373482781400);
// 1365
o8 = {};
// 1366
f637880758_0.returns.push(o8);
// 1367
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1368
f637880758_541.returns.push(1373482781401);
// 1369
o8 = {};
// 1370
f637880758_0.returns.push(o8);
// 1371
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1372
f637880758_541.returns.push(1373482781401);
// 1373
o8 = {};
// 1374
f637880758_0.returns.push(o8);
// 1375
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1376
f637880758_541.returns.push(1373482781401);
// 1377
o8 = {};
// 1378
f637880758_0.returns.push(o8);
// 1379
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1380
f637880758_541.returns.push(1373482781402);
// 1381
o8 = {};
// 1382
f637880758_0.returns.push(o8);
// 1383
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1384
f637880758_541.returns.push(1373482781402);
// 1385
o8 = {};
// 1386
f637880758_0.returns.push(o8);
// 1387
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1388
f637880758_541.returns.push(1373482781402);
// 1389
o8 = {};
// 1390
f637880758_0.returns.push(o8);
// 1391
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1392
f637880758_541.returns.push(1373482781402);
// 1393
o8 = {};
// 1394
f637880758_0.returns.push(o8);
// 1395
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1396
f637880758_541.returns.push(1373482781403);
// 1397
o8 = {};
// 1398
f637880758_0.returns.push(o8);
// 1399
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1400
f637880758_541.returns.push(1373482781403);
// 1401
o8 = {};
// 1402
f637880758_0.returns.push(o8);
// 1403
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1404
f637880758_541.returns.push(1373482781404);
// 1405
o8 = {};
// 1406
f637880758_0.returns.push(o8);
// 1407
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1408
f637880758_541.returns.push(1373482781404);
// 1409
o8 = {};
// 1410
f637880758_0.returns.push(o8);
// 1411
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1412
f637880758_541.returns.push(1373482781405);
// 1413
o8 = {};
// 1414
f637880758_0.returns.push(o8);
// 1415
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1416
f637880758_541.returns.push(1373482781405);
// 1417
f637880758_579 = function() { return f637880758_579.returns[f637880758_579.inst++]; };
f637880758_579.returns = [];
f637880758_579.inst = 0;
// 1418
o2.getItem = f637880758_579;
// 1419
f637880758_579.returns.push(null);
// 1421
f637880758_579.returns.push(null);
// 1422
o8 = {};
// 1423
f637880758_0.returns.push(o8);
// 1424
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1425
f637880758_541.returns.push(1373482781406);
// 1426
o8 = {};
// 1427
f637880758_0.returns.push(o8);
// 1428
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1429
f637880758_541.returns.push(1373482781406);
// 1430
o8 = {};
// 1431
f637880758_0.returns.push(o8);
// 1432
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1433
f637880758_541.returns.push(1373482781406);
// 1434
o8 = {};
// 1435
f637880758_0.returns.push(o8);
// 1436
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1437
f637880758_541.returns.push(1373482781407);
// 1438
o8 = {};
// 1439
f637880758_0.returns.push(o8);
// 1440
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1441
f637880758_541.returns.push(1373482781407);
// 1442
o8 = {};
// 1443
f637880758_0.returns.push(o8);
// 1444
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1445
f637880758_541.returns.push(1373482781407);
// 1451
o8 = {};
// 1452
f637880758_550.returns.push(o8);
// 1453
o8["0"] = o6;
// 1454
o8["1"] = void 0;
// undefined
o8 = null;
// 1455
o6.nodeType = 1;
// 1463
o8 = {};
// 1464
f637880758_528.returns.push(o8);
// 1465
o13 = {};
// 1466
o8["0"] = o13;
// 1467
o8["1"] = void 0;
// undefined
o8 = null;
// 1468
o13.nodeType = 1;
// 1469
o13.type = "hidden";
// 1470
o13.nodeName = "INPUT";
// 1471
o13.value = "app/pages/search/search";
// undefined
o13 = null;
// 1472
o8 = {};
// 1473
f637880758_0.returns.push(o8);
// 1474
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1475
f637880758_541.returns.push(1373482781413);
// 1476
o8 = {};
// 1477
f637880758_0.returns.push(o8);
// 1478
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1479
f637880758_541.returns.push(1373482781429);
// 1480
o11.cloneNode = f637880758_492;
// undefined
o11 = null;
// 1481
o8 = {};
// 1482
f637880758_492.returns.push(o8);
// 1483
// 1484
// 1485
// 1486
// 1487
// 1488
// 1489
// 1491
o12.parentNode = o9;
// undefined
o12 = null;
// 1492
o9.insertBefore = f637880758_517;
// undefined
o9 = null;
// 1494
f637880758_517.returns.push(o8);
// 1496
o9 = {};
// 1497
ow637880758.JSBNG__event = o9;
// 1498
o9.type = "load";
// undefined
o9 = null;
// 1499
// undefined
o8 = null;
// 1500
o8 = {};
// 1501
f637880758_0.returns.push(o8);
// 1502
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1503
f637880758_541.returns.push(1373482791039);
// 1504
o8 = {};
// 1505
f637880758_0.returns.push(o8);
// 1506
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1507
f637880758_541.returns.push(1373482791041);
// 1508
o8 = {};
// 1509
f637880758_0.returns.push(o8);
// 1510
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1511
f637880758_541.returns.push(1373482791075);
// 1512
o8 = {};
// 1513
f637880758_0.returns.push(o8);
// 1514
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1515
f637880758_541.returns.push(1373482791076);
// 1516
o8 = {};
// 1517
f637880758_0.returns.push(o8);
// 1518
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1519
f637880758_541.returns.push(1373482791077);
// 1520
o8 = {};
// 1521
f637880758_0.returns.push(o8);
// 1522
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 1523
f637880758_541.returns.push(1373482791084);
// 1525
o8 = {};
// 1526
f637880758_492.returns.push(o8);
// 1527
// 1528
// 1529
// 1530
// 1531
// 1532
// 1533
// 1538
f637880758_517.returns.push(o8);
// 1539
o9 = {};
// 1540
f637880758_0.returns.push(o9);
// 1541
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1542
f637880758_541.returns.push(1373482791085);
// 1543
o9 = {};
// 1544
f637880758_0.returns.push(o9);
// 1545
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1546
f637880758_541.returns.push(1373482791086);
// 1547
o9 = {};
// 1548
f637880758_0.returns.push(o9);
// 1549
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1550
f637880758_541.returns.push(1373482791086);
// 1551
o9 = {};
// 1552
f637880758_0.returns.push(o9);
// 1553
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1554
f637880758_541.returns.push(1373482791087);
// 1555
o9 = {};
// 1556
f637880758_0.returns.push(o9);
// 1557
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1558
f637880758_541.returns.push(1373482791087);
// 1559
o9 = {};
// 1560
f637880758_0.returns.push(o9);
// 1561
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1562
f637880758_541.returns.push(1373482791088);
// 1563
o9 = {};
// 1564
f637880758_0.returns.push(o9);
// 1565
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1566
f637880758_541.returns.push(1373482791088);
// 1567
o9 = {};
// 1568
f637880758_0.returns.push(o9);
// 1569
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1570
f637880758_541.returns.push(1373482791089);
// 1571
o9 = {};
// 1572
f637880758_0.returns.push(o9);
// 1573
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1574
f637880758_541.returns.push(1373482791089);
// 1575
o9 = {};
// 1576
f637880758_0.returns.push(o9);
// 1577
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1578
f637880758_541.returns.push(1373482791090);
// 1579
o9 = {};
// 1580
f637880758_0.returns.push(o9);
// 1581
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1582
f637880758_541.returns.push(1373482791090);
// 1583
o9 = {};
// 1584
f637880758_0.returns.push(o9);
// 1585
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1586
f637880758_541.returns.push(1373482791090);
// 1587
o9 = {};
// 1588
f637880758_0.returns.push(o9);
// 1589
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1590
f637880758_541.returns.push(1373482791091);
// 1591
o9 = {};
// 1592
f637880758_0.returns.push(o9);
// 1593
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1594
f637880758_541.returns.push(1373482791091);
// 1595
o9 = {};
// 1596
f637880758_0.returns.push(o9);
// 1597
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1598
f637880758_541.returns.push(1373482791091);
// 1599
o9 = {};
// 1600
f637880758_0.returns.push(o9);
// 1601
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1602
f637880758_541.returns.push(1373482791092);
// 1603
o9 = {};
// 1604
f637880758_0.returns.push(o9);
// 1605
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1606
f637880758_541.returns.push(1373482791099);
// 1607
o9 = {};
// 1608
f637880758_0.returns.push(o9);
// 1609
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1610
f637880758_541.returns.push(1373482791100);
// 1611
o9 = {};
// 1612
f637880758_0.returns.push(o9);
// 1613
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1614
f637880758_541.returns.push(1373482791100);
// 1615
o9 = {};
// 1616
f637880758_0.returns.push(o9);
// 1617
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1618
f637880758_541.returns.push(1373482791101);
// 1619
o9 = {};
// 1620
f637880758_0.returns.push(o9);
// 1621
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1622
f637880758_541.returns.push(1373482791101);
// 1623
o9 = {};
// 1624
f637880758_0.returns.push(o9);
// 1625
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1626
f637880758_541.returns.push(1373482791101);
// 1627
o9 = {};
// 1628
f637880758_0.returns.push(o9);
// 1629
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1630
f637880758_541.returns.push(1373482791101);
// 1631
o9 = {};
// 1632
f637880758_0.returns.push(o9);
// 1633
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1634
f637880758_541.returns.push(1373482791102);
// 1635
o9 = {};
// 1636
f637880758_0.returns.push(o9);
// 1637
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1638
f637880758_541.returns.push(1373482791102);
// 1639
o9 = {};
// 1640
f637880758_0.returns.push(o9);
// 1641
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1642
f637880758_541.returns.push(1373482791102);
// 1643
o9 = {};
// 1644
f637880758_0.returns.push(o9);
// 1645
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1646
f637880758_541.returns.push(1373482791102);
// 1647
o9 = {};
// 1648
f637880758_0.returns.push(o9);
// 1649
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1650
f637880758_541.returns.push(1373482791102);
// 1651
o9 = {};
// 1652
f637880758_0.returns.push(o9);
// 1653
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1654
f637880758_541.returns.push(1373482791102);
// 1655
o9 = {};
// 1656
f637880758_0.returns.push(o9);
// 1657
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1658
f637880758_541.returns.push(1373482791103);
// 1659
o9 = {};
// 1660
f637880758_0.returns.push(o9);
// 1661
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1662
f637880758_541.returns.push(1373482791103);
// 1663
o9 = {};
// 1664
f637880758_0.returns.push(o9);
// 1665
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1666
f637880758_541.returns.push(1373482791103);
// 1667
o9 = {};
// 1668
f637880758_0.returns.push(o9);
// 1669
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1670
f637880758_541.returns.push(1373482791103);
// 1671
o9 = {};
// 1672
f637880758_0.returns.push(o9);
// 1673
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1674
f637880758_541.returns.push(1373482791105);
// 1675
o9 = {};
// 1676
f637880758_0.returns.push(o9);
// 1677
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1678
f637880758_541.returns.push(1373482791105);
// 1679
o9 = {};
// 1680
f637880758_0.returns.push(o9);
// 1681
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1682
f637880758_541.returns.push(1373482791105);
// 1683
o9 = {};
// 1684
f637880758_0.returns.push(o9);
// 1685
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1686
f637880758_541.returns.push(1373482791105);
// 1687
o9 = {};
// 1688
f637880758_0.returns.push(o9);
// 1689
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1690
f637880758_541.returns.push(1373482791105);
// 1691
o9 = {};
// 1692
f637880758_0.returns.push(o9);
// 1693
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1694
f637880758_541.returns.push(1373482791105);
// 1695
o9 = {};
// 1696
f637880758_0.returns.push(o9);
// 1697
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1698
f637880758_541.returns.push(1373482791106);
// 1699
o9 = {};
// 1700
f637880758_0.returns.push(o9);
// 1701
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1702
f637880758_541.returns.push(1373482791106);
// 1703
o9 = {};
// 1704
f637880758_0.returns.push(o9);
// 1705
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1706
f637880758_541.returns.push(1373482791106);
// 1707
o9 = {};
// 1708
f637880758_0.returns.push(o9);
// 1709
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1710
f637880758_541.returns.push(1373482791106);
// 1711
o9 = {};
// 1712
f637880758_0.returns.push(o9);
// 1713
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1714
f637880758_541.returns.push(1373482791110);
// 1715
o9 = {};
// 1716
f637880758_0.returns.push(o9);
// 1717
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1718
f637880758_541.returns.push(1373482791110);
// 1719
o9 = {};
// 1720
f637880758_0.returns.push(o9);
// 1721
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1722
f637880758_541.returns.push(1373482791111);
// 1723
o9 = {};
// 1724
f637880758_0.returns.push(o9);
// 1725
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1726
f637880758_541.returns.push(1373482791111);
// 1727
o9 = {};
// 1728
f637880758_0.returns.push(o9);
// 1729
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1730
f637880758_541.returns.push(1373482791111);
// 1731
o9 = {};
// 1732
f637880758_0.returns.push(o9);
// 1733
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1734
f637880758_541.returns.push(1373482791111);
// 1735
o9 = {};
// 1736
f637880758_0.returns.push(o9);
// 1737
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1738
f637880758_541.returns.push(1373482791112);
// 1739
o9 = {};
// 1740
f637880758_0.returns.push(o9);
// 1741
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1742
f637880758_541.returns.push(1373482791112);
// 1743
o9 = {};
// 1744
f637880758_0.returns.push(o9);
// 1745
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1746
f637880758_541.returns.push(1373482791112);
// 1747
o9 = {};
// 1748
f637880758_0.returns.push(o9);
// 1749
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1750
f637880758_541.returns.push(1373482791113);
// 1751
o9 = {};
// 1752
f637880758_0.returns.push(o9);
// 1753
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1754
f637880758_541.returns.push(1373482791118);
// 1755
o9 = {};
// 1756
f637880758_0.returns.push(o9);
// 1757
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1758
f637880758_541.returns.push(1373482791118);
// 1759
o9 = {};
// 1760
f637880758_0.returns.push(o9);
// 1761
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1762
f637880758_541.returns.push(1373482791120);
// 1763
o9 = {};
// 1764
f637880758_0.returns.push(o9);
// 1765
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1766
f637880758_541.returns.push(1373482791121);
// 1767
o9 = {};
// 1768
f637880758_0.returns.push(o9);
// 1769
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1770
f637880758_541.returns.push(1373482791121);
// 1771
o9 = {};
// 1772
f637880758_0.returns.push(o9);
// 1773
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1774
f637880758_541.returns.push(1373482791128);
// 1775
o9 = {};
// 1776
f637880758_0.returns.push(o9);
// 1777
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1778
f637880758_541.returns.push(1373482791128);
// 1779
o9 = {};
// 1780
f637880758_0.returns.push(o9);
// 1781
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1782
f637880758_541.returns.push(1373482791129);
// 1783
o9 = {};
// 1784
f637880758_0.returns.push(o9);
// 1785
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1786
f637880758_541.returns.push(1373482791129);
// 1787
o9 = {};
// 1788
f637880758_0.returns.push(o9);
// 1789
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1790
f637880758_541.returns.push(1373482791129);
// 1791
o9 = {};
// 1792
f637880758_0.returns.push(o9);
// 1793
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1794
f637880758_541.returns.push(1373482791129);
// 1795
o9 = {};
// 1796
f637880758_0.returns.push(o9);
// 1797
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1798
f637880758_541.returns.push(1373482791131);
// 1799
o9 = {};
// 1800
f637880758_0.returns.push(o9);
// 1801
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1802
f637880758_541.returns.push(1373482791131);
// 1803
o9 = {};
// 1804
f637880758_0.returns.push(o9);
// 1805
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1806
f637880758_541.returns.push(1373482791131);
// 1807
o9 = {};
// 1808
f637880758_0.returns.push(o9);
// 1809
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1810
f637880758_541.returns.push(1373482791131);
// 1811
o9 = {};
// 1812
f637880758_0.returns.push(o9);
// 1813
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1814
f637880758_541.returns.push(1373482791131);
// 1815
o9 = {};
// 1816
f637880758_0.returns.push(o9);
// 1817
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1818
f637880758_541.returns.push(1373482791131);
// 1819
o9 = {};
// 1820
f637880758_0.returns.push(o9);
// 1821
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1822
f637880758_541.returns.push(1373482791135);
// 1823
o9 = {};
// 1824
f637880758_0.returns.push(o9);
// 1825
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1826
f637880758_541.returns.push(1373482791135);
// 1827
o9 = {};
// 1828
f637880758_0.returns.push(o9);
// 1829
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1830
f637880758_541.returns.push(1373482791135);
// 1831
o9 = {};
// 1832
f637880758_0.returns.push(o9);
// 1833
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1834
f637880758_541.returns.push(1373482791136);
// 1835
o9 = {};
// 1836
f637880758_0.returns.push(o9);
// 1837
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1838
f637880758_541.returns.push(1373482791136);
// 1839
o9 = {};
// 1840
f637880758_0.returns.push(o9);
// 1841
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1842
f637880758_541.returns.push(1373482791136);
// 1843
o9 = {};
// 1844
f637880758_0.returns.push(o9);
// 1845
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1846
f637880758_541.returns.push(1373482791136);
// 1847
o9 = {};
// 1848
f637880758_0.returns.push(o9);
// 1849
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1850
f637880758_541.returns.push(1373482791136);
// 1851
o9 = {};
// 1852
f637880758_0.returns.push(o9);
// 1853
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1854
f637880758_541.returns.push(1373482791137);
// 1855
o9 = {};
// 1856
f637880758_0.returns.push(o9);
// 1857
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1858
f637880758_541.returns.push(1373482791137);
// 1859
o9 = {};
// 1860
f637880758_0.returns.push(o9);
// 1861
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1862
f637880758_541.returns.push(1373482791139);
// 1863
o9 = {};
// 1864
f637880758_0.returns.push(o9);
// 1865
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1866
f637880758_541.returns.push(1373482791140);
// 1867
o9 = {};
// 1868
f637880758_0.returns.push(o9);
// 1869
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1870
f637880758_541.returns.push(1373482791140);
// 1871
o9 = {};
// 1872
f637880758_0.returns.push(o9);
// 1873
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1874
f637880758_541.returns.push(1373482791141);
// 1875
o9 = {};
// 1876
f637880758_0.returns.push(o9);
// 1877
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1878
f637880758_541.returns.push(1373482791141);
// 1879
o9 = {};
// 1880
f637880758_0.returns.push(o9);
// 1881
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1882
f637880758_541.returns.push(1373482791142);
// 1883
o9 = {};
// 1884
f637880758_0.returns.push(o9);
// 1885
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1886
f637880758_541.returns.push(1373482791142);
// 1887
o9 = {};
// 1888
f637880758_0.returns.push(o9);
// 1889
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1890
f637880758_541.returns.push(1373482791142);
// 1891
o9 = {};
// 1892
f637880758_0.returns.push(o9);
// 1893
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1894
f637880758_541.returns.push(1373482791142);
// 1895
o9 = {};
// 1896
f637880758_0.returns.push(o9);
// 1897
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1898
f637880758_541.returns.push(1373482791144);
// 1899
o9 = {};
// 1900
f637880758_0.returns.push(o9);
// 1901
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1902
f637880758_541.returns.push(1373482791144);
// 1903
o9 = {};
// 1904
f637880758_0.returns.push(o9);
// 1905
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1906
f637880758_541.returns.push(1373482791144);
// 1907
o9 = {};
// 1908
f637880758_0.returns.push(o9);
// 1909
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1910
f637880758_541.returns.push(1373482791145);
// 1911
o9 = {};
// 1912
f637880758_0.returns.push(o9);
// 1913
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1914
f637880758_541.returns.push(1373482791145);
// 1915
o9 = {};
// 1916
f637880758_0.returns.push(o9);
// 1917
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1918
f637880758_541.returns.push(1373482791145);
// 1919
o9 = {};
// 1920
f637880758_0.returns.push(o9);
// 1921
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1922
f637880758_541.returns.push(1373482791147);
// 1923
o9 = {};
// 1924
f637880758_0.returns.push(o9);
// 1925
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1926
f637880758_541.returns.push(1373482791147);
// 1927
o9 = {};
// 1928
f637880758_0.returns.push(o9);
// 1929
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1930
f637880758_541.returns.push(1373482791151);
// 1931
o9 = {};
// 1932
f637880758_0.returns.push(o9);
// 1933
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1934
f637880758_541.returns.push(1373482791151);
// 1935
o9 = {};
// 1936
f637880758_0.returns.push(o9);
// 1937
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1938
f637880758_541.returns.push(1373482791151);
// 1939
o9 = {};
// 1940
f637880758_0.returns.push(o9);
// 1941
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1942
f637880758_541.returns.push(1373482791152);
// 1943
o9 = {};
// 1944
f637880758_0.returns.push(o9);
// 1945
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1946
f637880758_541.returns.push(1373482791153);
// 1947
o9 = {};
// 1948
f637880758_0.returns.push(o9);
// 1949
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1950
f637880758_541.returns.push(1373482791153);
// 1951
o9 = {};
// 1952
f637880758_0.returns.push(o9);
// 1953
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1954
f637880758_541.returns.push(1373482791153);
// 1955
o9 = {};
// 1956
f637880758_0.returns.push(o9);
// 1957
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1958
f637880758_541.returns.push(1373482791154);
// 1959
o9 = {};
// 1960
f637880758_0.returns.push(o9);
// 1961
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1962
f637880758_541.returns.push(1373482791154);
// 1963
o9 = {};
// 1964
f637880758_0.returns.push(o9);
// 1965
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1966
f637880758_541.returns.push(1373482791155);
// 1967
o9 = {};
// 1968
f637880758_0.returns.push(o9);
// 1969
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1970
f637880758_541.returns.push(1373482791155);
// 1971
o9 = {};
// 1972
f637880758_0.returns.push(o9);
// 1973
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1974
f637880758_541.returns.push(1373482791156);
// 1975
o9 = {};
// 1976
f637880758_0.returns.push(o9);
// 1977
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1978
f637880758_541.returns.push(1373482791156);
// 1979
o9 = {};
// 1980
f637880758_0.returns.push(o9);
// 1981
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1982
f637880758_541.returns.push(1373482791157);
// 1983
o9 = {};
// 1984
f637880758_0.returns.push(o9);
// 1985
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1986
f637880758_541.returns.push(1373482791157);
// 1987
o9 = {};
// 1988
f637880758_0.returns.push(o9);
// 1989
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1990
f637880758_541.returns.push(1373482791157);
// 1991
o9 = {};
// 1992
f637880758_0.returns.push(o9);
// 1993
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1994
f637880758_541.returns.push(1373482791158);
// 1995
o9 = {};
// 1996
f637880758_0.returns.push(o9);
// 1997
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 1998
f637880758_541.returns.push(1373482791158);
// 1999
o9 = {};
// 2000
f637880758_0.returns.push(o9);
// 2001
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2002
f637880758_541.returns.push(1373482791158);
// 2003
o9 = {};
// 2004
f637880758_0.returns.push(o9);
// 2005
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2006
f637880758_541.returns.push(1373482791158);
// 2007
o9 = {};
// 2008
f637880758_0.returns.push(o9);
// 2009
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2010
f637880758_541.returns.push(1373482791158);
// 2011
o9 = {};
// 2012
f637880758_0.returns.push(o9);
// 2013
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2014
f637880758_541.returns.push(1373482791159);
// 2015
o9 = {};
// 2016
f637880758_0.returns.push(o9);
// 2017
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2018
f637880758_541.returns.push(1373482791159);
// 2019
o9 = {};
// 2020
f637880758_0.returns.push(o9);
// 2021
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2022
f637880758_541.returns.push(1373482791159);
// 2023
o9 = {};
// 2024
f637880758_0.returns.push(o9);
// 2025
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2026
f637880758_541.returns.push(1373482791159);
// 2027
o9 = {};
// 2028
f637880758_0.returns.push(o9);
// 2029
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2030
f637880758_541.returns.push(1373482791160);
// 2031
o9 = {};
// 2032
f637880758_0.returns.push(o9);
// 2033
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2034
f637880758_541.returns.push(1373482791160);
// 2035
o9 = {};
// 2036
f637880758_0.returns.push(o9);
// 2037
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2038
f637880758_541.returns.push(1373482791164);
// 2039
o9 = {};
// 2040
f637880758_0.returns.push(o9);
// 2041
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2042
f637880758_541.returns.push(1373482791166);
// 2043
o9 = {};
// 2044
f637880758_0.returns.push(o9);
// 2045
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2046
f637880758_541.returns.push(1373482791167);
// 2047
o9 = {};
// 2048
f637880758_0.returns.push(o9);
// 2049
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2050
f637880758_541.returns.push(1373482791167);
// 2051
o9 = {};
// 2052
f637880758_0.returns.push(o9);
// 2053
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2054
f637880758_541.returns.push(1373482791167);
// 2055
o9 = {};
// 2056
f637880758_0.returns.push(o9);
// 2057
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2058
f637880758_541.returns.push(1373482791168);
// 2059
o9 = {};
// 2060
f637880758_0.returns.push(o9);
// 2061
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2062
f637880758_541.returns.push(1373482791168);
// 2063
o9 = {};
// 2064
f637880758_0.returns.push(o9);
// 2065
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2066
f637880758_541.returns.push(1373482791168);
// 2067
o9 = {};
// 2068
f637880758_0.returns.push(o9);
// 2069
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2070
f637880758_541.returns.push(1373482791168);
// 2071
o9 = {};
// 2072
f637880758_0.returns.push(o9);
// 2073
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2074
f637880758_541.returns.push(1373482791168);
// 2075
o9 = {};
// 2076
f637880758_0.returns.push(o9);
// 2077
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2078
f637880758_541.returns.push(1373482791169);
// 2079
o9 = {};
// 2080
f637880758_0.returns.push(o9);
// 2081
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2082
f637880758_541.returns.push(1373482791169);
// 2083
o9 = {};
// 2084
f637880758_0.returns.push(o9);
// 2085
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2086
f637880758_541.returns.push(1373482791169);
// 2087
o9 = {};
// 2088
f637880758_0.returns.push(o9);
// 2089
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2090
f637880758_541.returns.push(1373482791169);
// 2091
o9 = {};
// 2092
f637880758_0.returns.push(o9);
// 2093
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2094
f637880758_541.returns.push(1373482791169);
// 2095
o9 = {};
// 2096
f637880758_0.returns.push(o9);
// 2097
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2098
f637880758_541.returns.push(1373482791169);
// 2099
o9 = {};
// 2100
f637880758_0.returns.push(o9);
// 2101
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2102
f637880758_541.returns.push(1373482791170);
// 2103
o9 = {};
// 2104
f637880758_0.returns.push(o9);
// 2105
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2106
f637880758_541.returns.push(1373482791170);
// 2107
o9 = {};
// 2108
f637880758_0.returns.push(o9);
// 2109
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2110
f637880758_541.returns.push(1373482791171);
// 2111
o9 = {};
// 2112
f637880758_0.returns.push(o9);
// 2113
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2114
f637880758_541.returns.push(1373482791171);
// 2115
o9 = {};
// 2116
f637880758_0.returns.push(o9);
// 2117
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2118
f637880758_541.returns.push(1373482791171);
// 2119
o9 = {};
// 2120
f637880758_0.returns.push(o9);
// 2121
o9.getTime = f637880758_541;
// undefined
o9 = null;
// 2122
f637880758_541.returns.push(1373482791171);
// 2123
f637880758_746 = function() { return f637880758_746.returns[f637880758_746.inst++]; };
f637880758_746.returns = [];
f637880758_746.inst = 0;
// 2124
o2.setItem = f637880758_746;
// 2125
f637880758_746.returns.push(undefined);
// 2126
f637880758_747 = function() { return f637880758_747.returns[f637880758_747.inst++]; };
f637880758_747.returns = [];
f637880758_747.inst = 0;
// 2127
o2.removeItem = f637880758_747;
// undefined
o2 = null;
// 2128
f637880758_747.returns.push(undefined);
// 2129
o2 = {};
// 2130
f637880758_0.returns.push(o2);
// 2131
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2132
f637880758_541.returns.push(1373482791175);
// 2133
o2 = {};
// 2134
f637880758_0.returns.push(o2);
// 2135
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2136
f637880758_541.returns.push(1373482791176);
// 2137
o2 = {};
// 2138
f637880758_0.returns.push(o2);
// 2139
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2140
f637880758_541.returns.push(1373482791176);
// 2141
o2 = {};
// 2142
f637880758_0.returns.push(o2);
// 2143
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2144
f637880758_541.returns.push(1373482791180);
// 2145
o2 = {};
// 2146
f637880758_0.returns.push(o2);
// 2147
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2148
f637880758_541.returns.push(1373482791181);
// 2149
o2 = {};
// 2150
f637880758_0.returns.push(o2);
// 2151
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2152
f637880758_541.returns.push(1373482791181);
// 2153
o2 = {};
// 2154
f637880758_0.returns.push(o2);
// 2155
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2156
f637880758_541.returns.push(1373482791181);
// 2157
o2 = {};
// 2158
f637880758_0.returns.push(o2);
// 2159
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2160
f637880758_541.returns.push(1373482791191);
// 2161
o2 = {};
// 2162
f637880758_0.returns.push(o2);
// 2163
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2164
f637880758_541.returns.push(1373482791191);
// 2165
o2 = {};
// 2166
f637880758_0.returns.push(o2);
// 2167
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2168
f637880758_541.returns.push(1373482791191);
// 2169
o2 = {};
// 2170
f637880758_0.returns.push(o2);
// 2171
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2172
f637880758_541.returns.push(1373482791191);
// 2173
o2 = {};
// 2174
f637880758_0.returns.push(o2);
// 2175
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2176
f637880758_541.returns.push(1373482791191);
// 2177
o2 = {};
// 2178
f637880758_0.returns.push(o2);
// 2179
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2180
f637880758_541.returns.push(1373482791192);
// 2181
o2 = {};
// 2182
f637880758_0.returns.push(o2);
// 2183
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2184
f637880758_541.returns.push(1373482791192);
// 2185
o2 = {};
// 2186
f637880758_0.returns.push(o2);
// 2187
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2188
f637880758_541.returns.push(1373482791192);
// 2189
o2 = {};
// 2190
f637880758_0.returns.push(o2);
// 2191
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2192
f637880758_541.returns.push(1373482791192);
// 2193
o2 = {};
// 2194
f637880758_0.returns.push(o2);
// 2195
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2196
f637880758_541.returns.push(1373482791193);
// 2197
o2 = {};
// 2198
f637880758_0.returns.push(o2);
// 2199
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2200
f637880758_541.returns.push(1373482791193);
// 2201
o2 = {};
// 2202
f637880758_0.returns.push(o2);
// 2203
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2204
f637880758_541.returns.push(1373482791194);
// 2205
o2 = {};
// 2206
f637880758_0.returns.push(o2);
// 2207
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2208
f637880758_541.returns.push(1373482791194);
// 2209
o2 = {};
// 2210
f637880758_0.returns.push(o2);
// 2211
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2212
f637880758_541.returns.push(1373482791194);
// 2213
o2 = {};
// 2214
f637880758_0.returns.push(o2);
// 2215
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2216
f637880758_541.returns.push(1373482791195);
// 2217
o2 = {};
// 2218
f637880758_0.returns.push(o2);
// 2219
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2220
f637880758_541.returns.push(1373482791195);
// 2221
o2 = {};
// 2222
f637880758_0.returns.push(o2);
// 2223
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2224
f637880758_541.returns.push(1373482791195);
// 2225
o2 = {};
// 2226
f637880758_0.returns.push(o2);
// 2227
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2228
f637880758_541.returns.push(1373482791195);
// 2229
o2 = {};
// 2230
f637880758_0.returns.push(o2);
// 2231
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2232
f637880758_541.returns.push(1373482791196);
// 2233
o2 = {};
// 2234
f637880758_0.returns.push(o2);
// 2235
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2236
f637880758_541.returns.push(1373482791196);
// 2237
o2 = {};
// 2238
f637880758_0.returns.push(o2);
// 2239
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2240
f637880758_541.returns.push(1373482791196);
// 2241
o2 = {};
// 2242
f637880758_0.returns.push(o2);
// 2243
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2244
f637880758_541.returns.push(1373482791197);
// 2245
o2 = {};
// 2246
f637880758_0.returns.push(o2);
// 2247
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2248
f637880758_541.returns.push(1373482791197);
// 2249
o2 = {};
// 2250
f637880758_0.returns.push(o2);
// 2251
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2252
f637880758_541.returns.push(1373482791201);
// 2253
o2 = {};
// 2254
f637880758_0.returns.push(o2);
// 2255
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2256
f637880758_541.returns.push(1373482791201);
// 2257
o2 = {};
// 2258
f637880758_0.returns.push(o2);
// 2259
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2260
f637880758_541.returns.push(1373482791201);
// 2261
o2 = {};
// 2262
f637880758_0.returns.push(o2);
// 2263
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2264
f637880758_541.returns.push(1373482791202);
// 2265
o2 = {};
// 2266
f637880758_0.returns.push(o2);
// 2267
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2268
f637880758_541.returns.push(1373482791202);
// 2269
o2 = {};
// 2270
f637880758_0.returns.push(o2);
// 2271
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2272
f637880758_541.returns.push(1373482791202);
// 2273
o2 = {};
// 2274
f637880758_0.returns.push(o2);
// 2275
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2276
f637880758_541.returns.push(1373482791202);
// 2277
o2 = {};
// 2278
f637880758_0.returns.push(o2);
// 2279
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2280
f637880758_541.returns.push(1373482791203);
// 2281
o2 = {};
// 2282
f637880758_0.returns.push(o2);
// 2283
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2284
f637880758_541.returns.push(1373482791204);
// 2285
o2 = {};
// 2286
f637880758_0.returns.push(o2);
// 2287
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2288
f637880758_541.returns.push(1373482791204);
// 2289
o2 = {};
// 2290
f637880758_0.returns.push(o2);
// 2291
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2292
f637880758_541.returns.push(1373482791204);
// 2293
o2 = {};
// 2294
f637880758_0.returns.push(o2);
// 2295
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2296
f637880758_541.returns.push(1373482791205);
// 2297
o2 = {};
// 2298
f637880758_0.returns.push(o2);
// 2299
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2300
f637880758_541.returns.push(1373482791205);
// 2301
o2 = {};
// 2302
f637880758_0.returns.push(o2);
// 2303
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2304
f637880758_541.returns.push(1373482791205);
// 2305
o2 = {};
// 2306
f637880758_0.returns.push(o2);
// 2307
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2308
f637880758_541.returns.push(1373482791206);
// 2309
o2 = {};
// 2310
f637880758_0.returns.push(o2);
// 2311
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2312
f637880758_541.returns.push(1373482791206);
// 2313
o2 = {};
// 2314
f637880758_0.returns.push(o2);
// 2315
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2316
f637880758_541.returns.push(1373482791206);
// 2317
o2 = {};
// 2318
f637880758_0.returns.push(o2);
// 2319
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2320
f637880758_541.returns.push(1373482791208);
// 2321
o2 = {};
// 2322
f637880758_0.returns.push(o2);
// 2323
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2324
f637880758_541.returns.push(1373482791208);
// 2325
o2 = {};
// 2326
f637880758_0.returns.push(o2);
// 2327
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2328
f637880758_541.returns.push(1373482791208);
// 2329
o2 = {};
// 2330
f637880758_0.returns.push(o2);
// 2331
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2332
f637880758_541.returns.push(1373482791208);
// 2333
o2 = {};
// 2334
f637880758_0.returns.push(o2);
// 2335
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2336
f637880758_541.returns.push(1373482791208);
// 2337
o2 = {};
// 2338
f637880758_0.returns.push(o2);
// 2339
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2340
f637880758_541.returns.push(1373482791208);
// 2341
o2 = {};
// 2342
f637880758_0.returns.push(o2);
// 2343
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2344
f637880758_541.returns.push(1373482791209);
// 2345
o2 = {};
// 2346
f637880758_0.returns.push(o2);
// 2347
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2348
f637880758_541.returns.push(1373482791209);
// 2349
o2 = {};
// 2350
f637880758_0.returns.push(o2);
// 2351
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2352
f637880758_541.returns.push(1373482791209);
// 2353
o2 = {};
// 2354
f637880758_0.returns.push(o2);
// 2355
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2356
f637880758_541.returns.push(1373482791211);
// 2357
o2 = {};
// 2358
f637880758_0.returns.push(o2);
// 2359
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2360
f637880758_541.returns.push(1373482791220);
// 2361
o2 = {};
// 2362
f637880758_0.returns.push(o2);
// 2363
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2364
f637880758_541.returns.push(1373482791220);
// 2365
o2 = {};
// 2366
f637880758_0.returns.push(o2);
// 2367
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2368
f637880758_541.returns.push(1373482791220);
// 2369
o2 = {};
// 2370
f637880758_0.returns.push(o2);
// 2371
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2372
f637880758_541.returns.push(1373482791221);
// 2373
o2 = {};
// 2374
f637880758_0.returns.push(o2);
// 2375
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2376
f637880758_541.returns.push(1373482791221);
// 2377
o2 = {};
// 2378
f637880758_0.returns.push(o2);
// 2379
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2380
f637880758_541.returns.push(1373482791221);
// 2381
o2 = {};
// 2382
f637880758_0.returns.push(o2);
// 2383
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2384
f637880758_541.returns.push(1373482791225);
// 2385
o2 = {};
// 2386
f637880758_0.returns.push(o2);
// 2387
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2388
f637880758_541.returns.push(1373482791225);
// 2389
o2 = {};
// 2390
f637880758_0.returns.push(o2);
// 2391
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2392
f637880758_541.returns.push(1373482791225);
// 2393
o2 = {};
// 2394
f637880758_0.returns.push(o2);
// 2395
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2396
f637880758_541.returns.push(1373482791225);
// 2397
o2 = {};
// 2398
f637880758_0.returns.push(o2);
// 2399
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2400
f637880758_541.returns.push(1373482791226);
// 2401
o2 = {};
// 2402
f637880758_0.returns.push(o2);
// 2403
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2404
f637880758_541.returns.push(1373482791226);
// 2405
o2 = {};
// 2406
f637880758_0.returns.push(o2);
// 2407
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2408
f637880758_541.returns.push(1373482791226);
// 2409
o2 = {};
// 2410
f637880758_0.returns.push(o2);
// 2411
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2412
f637880758_541.returns.push(1373482791226);
// 2413
o2 = {};
// 2414
f637880758_0.returns.push(o2);
// 2415
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2416
f637880758_541.returns.push(1373482791227);
// 2417
o2 = {};
// 2418
f637880758_0.returns.push(o2);
// 2419
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2420
f637880758_541.returns.push(1373482791228);
// 2421
o2 = {};
// 2422
f637880758_0.returns.push(o2);
// 2423
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2424
f637880758_541.returns.push(1373482791228);
// 2425
o2 = {};
// 2426
f637880758_0.returns.push(o2);
// 2427
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2428
f637880758_541.returns.push(1373482791228);
// 2429
o2 = {};
// 2430
f637880758_0.returns.push(o2);
// 2431
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2432
f637880758_541.returns.push(1373482791228);
// 2433
o2 = {};
// 2434
f637880758_0.returns.push(o2);
// 2435
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2436
f637880758_541.returns.push(1373482791229);
// 2437
o2 = {};
// 2438
f637880758_0.returns.push(o2);
// 2439
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2440
f637880758_541.returns.push(1373482791229);
// 2441
o2 = {};
// 2442
f637880758_0.returns.push(o2);
// 2443
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2444
f637880758_541.returns.push(1373482791229);
// 2445
o2 = {};
// 2446
f637880758_0.returns.push(o2);
// 2447
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2448
f637880758_541.returns.push(1373482791230);
// 2449
o2 = {};
// 2450
f637880758_0.returns.push(o2);
// 2451
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2452
f637880758_541.returns.push(1373482791230);
// 2453
o2 = {};
// 2454
f637880758_0.returns.push(o2);
// 2455
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2456
f637880758_541.returns.push(1373482791231);
// 2457
o2 = {};
// 2458
f637880758_0.returns.push(o2);
// 2459
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2460
f637880758_541.returns.push(1373482791231);
// 2461
o2 = {};
// 2462
f637880758_0.returns.push(o2);
// 2463
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2464
f637880758_541.returns.push(1373482791231);
// 2465
o2 = {};
// 2466
f637880758_0.returns.push(o2);
// 2467
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2468
f637880758_541.returns.push(1373482791235);
// 2469
o2 = {};
// 2470
f637880758_0.returns.push(o2);
// 2471
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2472
f637880758_541.returns.push(1373482791238);
// 2473
o2 = {};
// 2474
f637880758_0.returns.push(o2);
// 2475
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2476
f637880758_541.returns.push(1373482791238);
// 2477
o2 = {};
// 2478
f637880758_0.returns.push(o2);
// 2479
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2480
f637880758_541.returns.push(1373482791238);
// 2481
o2 = {};
// 2482
f637880758_0.returns.push(o2);
// 2483
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2484
f637880758_541.returns.push(1373482791241);
// 2485
o2 = {};
// 2486
f637880758_0.returns.push(o2);
// 2487
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2488
f637880758_541.returns.push(1373482791241);
// 2489
o2 = {};
// 2490
f637880758_0.returns.push(o2);
// 2491
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2492
f637880758_541.returns.push(1373482791242);
// 2493
o2 = {};
// 2494
f637880758_0.returns.push(o2);
// 2495
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2496
f637880758_541.returns.push(1373482791242);
// 2497
o2 = {};
// 2498
f637880758_0.returns.push(o2);
// 2499
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2500
f637880758_541.returns.push(1373482791242);
// 2501
o2 = {};
// 2502
f637880758_0.returns.push(o2);
// 2503
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2504
f637880758_541.returns.push(1373482791242);
// 2505
o2 = {};
// 2506
f637880758_0.returns.push(o2);
// 2507
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2508
f637880758_541.returns.push(1373482791244);
// 2509
o2 = {};
// 2510
f637880758_0.returns.push(o2);
// 2511
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2512
f637880758_541.returns.push(1373482791244);
// 2513
o2 = {};
// 2514
f637880758_0.returns.push(o2);
// 2515
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2516
f637880758_541.returns.push(1373482791244);
// 2517
o2 = {};
// 2518
f637880758_0.returns.push(o2);
// 2519
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2520
f637880758_541.returns.push(1373482791244);
// 2521
o2 = {};
// 2522
f637880758_0.returns.push(o2);
// 2523
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2524
f637880758_541.returns.push(1373482791245);
// 2525
o2 = {};
// 2526
f637880758_0.returns.push(o2);
// 2527
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2528
f637880758_541.returns.push(1373482791245);
// 2529
o2 = {};
// 2530
f637880758_0.returns.push(o2);
// 2531
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2532
f637880758_541.returns.push(1373482791245);
// 2533
o2 = {};
// 2534
f637880758_0.returns.push(o2);
// 2535
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2536
f637880758_541.returns.push(1373482791246);
// 2537
o2 = {};
// 2538
f637880758_0.returns.push(o2);
// 2539
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2540
f637880758_541.returns.push(1373482791246);
// 2541
o2 = {};
// 2542
f637880758_0.returns.push(o2);
// 2543
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2544
f637880758_541.returns.push(1373482791246);
// 2545
o2 = {};
// 2546
f637880758_0.returns.push(o2);
// 2547
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2548
f637880758_541.returns.push(1373482791246);
// 2549
o2 = {};
// 2550
f637880758_0.returns.push(o2);
// 2551
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2552
f637880758_541.returns.push(1373482791247);
// 2553
o2 = {};
// 2554
f637880758_0.returns.push(o2);
// 2555
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2556
f637880758_541.returns.push(1373482791247);
// 2557
o2 = {};
// 2558
f637880758_0.returns.push(o2);
// 2559
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2560
f637880758_541.returns.push(1373482791247);
// 2561
o2 = {};
// 2562
f637880758_0.returns.push(o2);
// 2563
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2564
f637880758_541.returns.push(1373482791248);
// 2565
o2 = {};
// 2566
f637880758_0.returns.push(o2);
// 2567
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2568
f637880758_541.returns.push(1373482791248);
// 2569
o2 = {};
// 2570
f637880758_0.returns.push(o2);
// 2571
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2572
f637880758_541.returns.push(1373482791248);
// 2573
o2 = {};
// 2574
f637880758_0.returns.push(o2);
// 2575
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2576
f637880758_541.returns.push(1373482791252);
// 2577
o2 = {};
// 2578
f637880758_0.returns.push(o2);
// 2579
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2580
f637880758_541.returns.push(1373482791252);
// 2581
o2 = {};
// 2582
f637880758_0.returns.push(o2);
// 2583
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2584
f637880758_541.returns.push(1373482791252);
// 2585
o2 = {};
// 2586
f637880758_0.returns.push(o2);
// 2587
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2588
f637880758_541.returns.push(1373482791253);
// 2589
o2 = {};
// 2590
f637880758_0.returns.push(o2);
// 2591
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2592
f637880758_541.returns.push(1373482791253);
// 2593
o2 = {};
// 2594
f637880758_0.returns.push(o2);
// 2595
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2596
f637880758_541.returns.push(1373482791253);
// 2597
o2 = {};
// 2598
f637880758_0.returns.push(o2);
// 2599
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2600
f637880758_541.returns.push(1373482791256);
// 2601
o2 = {};
// 2602
f637880758_0.returns.push(o2);
// 2603
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2604
f637880758_541.returns.push(1373482791257);
// 2605
o2 = {};
// 2606
f637880758_0.returns.push(o2);
// 2607
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2608
f637880758_541.returns.push(1373482791257);
// 2609
o2 = {};
// 2610
f637880758_0.returns.push(o2);
// 2611
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2612
f637880758_541.returns.push(1373482791258);
// 2613
o2 = {};
// 2614
f637880758_0.returns.push(o2);
// 2615
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2616
f637880758_541.returns.push(1373482791258);
// 2617
o2 = {};
// 2618
f637880758_0.returns.push(o2);
// 2619
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2620
f637880758_541.returns.push(1373482791258);
// 2621
o2 = {};
// 2622
f637880758_0.returns.push(o2);
// 2623
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2624
f637880758_541.returns.push(1373482791258);
// 2625
o2 = {};
// 2626
f637880758_0.returns.push(o2);
// 2627
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2628
f637880758_541.returns.push(1373482791260);
// 2629
o2 = {};
// 2630
f637880758_0.returns.push(o2);
// 2631
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2632
f637880758_541.returns.push(1373482791260);
// 2633
o2 = {};
// 2634
f637880758_0.returns.push(o2);
// 2635
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2636
f637880758_541.returns.push(1373482791260);
// 2637
o2 = {};
// 2638
f637880758_0.returns.push(o2);
// 2639
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2640
f637880758_541.returns.push(1373482791262);
// 2641
o2 = {};
// 2642
f637880758_0.returns.push(o2);
// 2643
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2644
f637880758_541.returns.push(1373482791262);
// 2645
o2 = {};
// 2646
f637880758_0.returns.push(o2);
// 2647
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2648
f637880758_541.returns.push(1373482791262);
// 2649
o2 = {};
// 2650
f637880758_0.returns.push(o2);
// 2651
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2652
f637880758_541.returns.push(1373482791265);
// 2653
o2 = {};
// 2654
f637880758_0.returns.push(o2);
// 2655
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2656
f637880758_541.returns.push(1373482791265);
// 2657
o2 = {};
// 2658
f637880758_0.returns.push(o2);
// 2659
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2660
f637880758_541.returns.push(1373482791265);
// 2661
o2 = {};
// 2662
f637880758_0.returns.push(o2);
// 2663
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2664
f637880758_541.returns.push(1373482791265);
// 2665
o2 = {};
// 2666
f637880758_0.returns.push(o2);
// 2667
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2668
f637880758_541.returns.push(1373482791266);
// 2669
o2 = {};
// 2670
f637880758_0.returns.push(o2);
// 2671
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2672
f637880758_541.returns.push(1373482791277);
// 2673
o2 = {};
// 2674
f637880758_0.returns.push(o2);
// 2675
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2676
f637880758_541.returns.push(1373482791277);
// 2677
o2 = {};
// 2678
f637880758_0.returns.push(o2);
// 2679
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2680
f637880758_541.returns.push(1373482791278);
// 2681
o2 = {};
// 2682
f637880758_0.returns.push(o2);
// 2683
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2684
f637880758_541.returns.push(1373482791287);
// 2685
o2 = {};
// 2686
f637880758_0.returns.push(o2);
// 2687
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2688
f637880758_541.returns.push(1373482791288);
// 2689
o2 = {};
// 2690
f637880758_0.returns.push(o2);
// 2691
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2692
f637880758_541.returns.push(1373482791288);
// 2693
o2 = {};
// 2694
f637880758_0.returns.push(o2);
// 2695
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2696
f637880758_541.returns.push(1373482791289);
// 2697
o2 = {};
// 2698
f637880758_0.returns.push(o2);
// 2699
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2700
f637880758_541.returns.push(1373482791289);
// 2701
o2 = {};
// 2702
f637880758_0.returns.push(o2);
// 2703
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2704
f637880758_541.returns.push(1373482791289);
// 2705
o2 = {};
// 2706
f637880758_0.returns.push(o2);
// 2707
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2708
f637880758_541.returns.push(1373482791290);
// 2709
o2 = {};
// 2710
f637880758_0.returns.push(o2);
// 2711
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2712
f637880758_541.returns.push(1373482791290);
// 2713
o2 = {};
// 2714
f637880758_0.returns.push(o2);
// 2715
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2716
f637880758_541.returns.push(1373482791290);
// 2717
o2 = {};
// 2718
f637880758_0.returns.push(o2);
// 2719
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2720
f637880758_541.returns.push(1373482791291);
// 2721
o2 = {};
// 2722
f637880758_0.returns.push(o2);
// 2723
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2724
f637880758_541.returns.push(1373482791291);
// 2725
o2 = {};
// 2726
f637880758_0.returns.push(o2);
// 2727
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2728
f637880758_541.returns.push(1373482791292);
// 2729
o2 = {};
// 2730
f637880758_0.returns.push(o2);
// 2731
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2732
f637880758_541.returns.push(1373482791292);
// 2733
o2 = {};
// 2734
f637880758_0.returns.push(o2);
// 2735
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2736
f637880758_541.returns.push(1373482791292);
// 2737
o2 = {};
// 2738
f637880758_0.returns.push(o2);
// 2739
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2740
f637880758_541.returns.push(1373482791293);
// 2741
o2 = {};
// 2742
f637880758_0.returns.push(o2);
// 2743
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2744
f637880758_541.returns.push(1373482791293);
// 2745
o2 = {};
// 2746
f637880758_0.returns.push(o2);
// 2747
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2748
f637880758_541.returns.push(1373482791293);
// 2749
o2 = {};
// 2750
f637880758_0.returns.push(o2);
// 2751
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2752
f637880758_541.returns.push(1373482791293);
// 2753
o2 = {};
// 2754
f637880758_0.returns.push(o2);
// 2755
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2756
f637880758_541.returns.push(1373482791293);
// 2757
o2 = {};
// 2758
f637880758_0.returns.push(o2);
// 2759
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2760
f637880758_541.returns.push(1373482791295);
// 2761
o2 = {};
// 2762
f637880758_0.returns.push(o2);
// 2763
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2764
f637880758_541.returns.push(1373482791295);
// 2765
o2 = {};
// 2766
f637880758_0.returns.push(o2);
// 2767
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2768
f637880758_541.returns.push(1373482791295);
// 2769
o2 = {};
// 2770
f637880758_0.returns.push(o2);
// 2771
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2772
f637880758_541.returns.push(1373482791295);
// 2773
o2 = {};
// 2774
f637880758_0.returns.push(o2);
// 2775
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2776
f637880758_541.returns.push(1373482791296);
// 2777
o2 = {};
// 2778
f637880758_0.returns.push(o2);
// 2779
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2780
f637880758_541.returns.push(1373482791296);
// 2781
o2 = {};
// 2782
f637880758_0.returns.push(o2);
// 2783
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2784
f637880758_541.returns.push(1373482791296);
// 2785
o2 = {};
// 2786
f637880758_0.returns.push(o2);
// 2787
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2788
f637880758_541.returns.push(1373482791296);
// 2789
o2 = {};
// 2790
f637880758_0.returns.push(o2);
// 2791
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2792
f637880758_541.returns.push(1373482791300);
// 2793
o2 = {};
// 2794
f637880758_0.returns.push(o2);
// 2795
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2796
f637880758_541.returns.push(1373482791300);
// 2797
o2 = {};
// 2798
f637880758_0.returns.push(o2);
// 2799
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2800
f637880758_541.returns.push(1373482791300);
// 2801
o2 = {};
// 2802
f637880758_0.returns.push(o2);
// 2803
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2804
f637880758_541.returns.push(1373482791302);
// 2805
o2 = {};
// 2806
f637880758_0.returns.push(o2);
// 2807
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2808
f637880758_541.returns.push(1373482791302);
// 2809
o2 = {};
// 2810
f637880758_0.returns.push(o2);
// 2811
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2812
f637880758_541.returns.push(1373482791302);
// 2813
o2 = {};
// 2814
f637880758_0.returns.push(o2);
// 2815
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2816
f637880758_541.returns.push(1373482791302);
// 2817
o2 = {};
// 2818
f637880758_0.returns.push(o2);
// 2819
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2820
f637880758_541.returns.push(1373482791303);
// 2821
o2 = {};
// 2822
f637880758_0.returns.push(o2);
// 2823
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2824
f637880758_541.returns.push(1373482791303);
// 2825
o2 = {};
// 2826
f637880758_0.returns.push(o2);
// 2827
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2828
f637880758_541.returns.push(1373482791303);
// 2829
o2 = {};
// 2830
f637880758_0.returns.push(o2);
// 2831
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2832
f637880758_541.returns.push(1373482791303);
// 2833
o2 = {};
// 2834
f637880758_0.returns.push(o2);
// 2835
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2836
f637880758_541.returns.push(1373482791303);
// 2837
o2 = {};
// 2838
f637880758_0.returns.push(o2);
// 2839
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2840
f637880758_541.returns.push(1373482791306);
// 2841
o2 = {};
// 2842
f637880758_0.returns.push(o2);
// 2843
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2844
f637880758_541.returns.push(1373482791306);
// 2845
o2 = {};
// 2846
f637880758_0.returns.push(o2);
// 2847
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2848
f637880758_541.returns.push(1373482791306);
// 2849
o2 = {};
// 2850
f637880758_0.returns.push(o2);
// 2851
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2852
f637880758_541.returns.push(1373482791306);
// 2853
o2 = {};
// 2854
f637880758_0.returns.push(o2);
// 2855
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2856
f637880758_541.returns.push(1373482791307);
// 2857
o2 = {};
// 2858
f637880758_0.returns.push(o2);
// 2859
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2860
f637880758_541.returns.push(1373482791307);
// 2861
o2 = {};
// 2862
f637880758_0.returns.push(o2);
// 2863
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2864
f637880758_541.returns.push(1373482791307);
// 2865
o2 = {};
// 2866
f637880758_0.returns.push(o2);
// 2867
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2868
f637880758_541.returns.push(1373482791307);
// 2869
o2 = {};
// 2870
f637880758_0.returns.push(o2);
// 2871
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2872
f637880758_541.returns.push(1373482791307);
// 2873
o2 = {};
// 2874
f637880758_0.returns.push(o2);
// 2875
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2876
f637880758_541.returns.push(1373482791311);
// 2877
o2 = {};
// 2878
f637880758_0.returns.push(o2);
// 2879
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2880
f637880758_541.returns.push(1373482791311);
// 2881
o2 = {};
// 2882
f637880758_0.returns.push(o2);
// 2883
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2884
f637880758_541.returns.push(1373482791311);
// 2885
o2 = {};
// 2886
f637880758_0.returns.push(o2);
// 2887
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2888
f637880758_541.returns.push(1373482791312);
// 2889
o2 = {};
// 2890
f637880758_0.returns.push(o2);
// 2891
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2892
f637880758_541.returns.push(1373482791313);
// 2893
o2 = {};
// 2894
f637880758_0.returns.push(o2);
// 2895
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2896
f637880758_541.returns.push(1373482791313);
// 2897
o2 = {};
// 2898
f637880758_0.returns.push(o2);
// 2899
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2900
f637880758_541.returns.push(1373482791317);
// 2901
o2 = {};
// 2902
f637880758_0.returns.push(o2);
// 2903
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2904
f637880758_541.returns.push(1373482791317);
// 2905
o2 = {};
// 2906
f637880758_0.returns.push(o2);
// 2907
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2908
f637880758_541.returns.push(1373482791318);
// 2909
o2 = {};
// 2910
f637880758_0.returns.push(o2);
// 2911
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2912
f637880758_541.returns.push(1373482791318);
// 2913
o2 = {};
// 2914
f637880758_0.returns.push(o2);
// 2915
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2916
f637880758_541.returns.push(1373482791318);
// 2917
o2 = {};
// 2918
f637880758_0.returns.push(o2);
// 2919
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2920
f637880758_541.returns.push(1373482791318);
// 2921
o2 = {};
// 2922
f637880758_0.returns.push(o2);
// 2923
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2924
f637880758_541.returns.push(1373482791318);
// 2925
o2 = {};
// 2926
f637880758_0.returns.push(o2);
// 2927
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2928
f637880758_541.returns.push(1373482791318);
// 2929
o2 = {};
// 2930
f637880758_0.returns.push(o2);
// 2931
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2932
f637880758_541.returns.push(1373482791320);
// 2933
o2 = {};
// 2934
f637880758_0.returns.push(o2);
// 2935
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2936
f637880758_541.returns.push(1373482791320);
// 2937
o2 = {};
// 2938
f637880758_0.returns.push(o2);
// 2939
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2940
f637880758_541.returns.push(1373482791320);
// 2941
o2 = {};
// 2942
f637880758_0.returns.push(o2);
// 2943
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2944
f637880758_541.returns.push(1373482791321);
// 2945
o2 = {};
// 2946
f637880758_0.returns.push(o2);
// 2947
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2948
f637880758_541.returns.push(1373482791321);
// 2949
o2 = {};
// 2950
f637880758_0.returns.push(o2);
// 2951
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2952
f637880758_541.returns.push(1373482791321);
// 2953
o2 = {};
// 2954
f637880758_0.returns.push(o2);
// 2955
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2956
f637880758_541.returns.push(1373482791321);
// 2957
o2 = {};
// 2958
f637880758_0.returns.push(o2);
// 2959
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2960
f637880758_541.returns.push(1373482791322);
// 2961
o2 = {};
// 2962
f637880758_0.returns.push(o2);
// 2963
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2964
f637880758_541.returns.push(1373482791322);
// 2965
o2 = {};
// 2966
f637880758_0.returns.push(o2);
// 2967
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2968
f637880758_541.returns.push(1373482791322);
// 2969
o2 = {};
// 2970
f637880758_0.returns.push(o2);
// 2971
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2972
f637880758_541.returns.push(1373482791322);
// 2973
o2 = {};
// 2974
f637880758_0.returns.push(o2);
// 2975
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2976
f637880758_541.returns.push(1373482791324);
// 2977
o2 = {};
// 2978
f637880758_0.returns.push(o2);
// 2979
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2980
f637880758_541.returns.push(1373482791325);
// 2981
o2 = {};
// 2982
f637880758_0.returns.push(o2);
// 2983
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2984
f637880758_541.returns.push(1373482791325);
// 2985
o2 = {};
// 2986
f637880758_0.returns.push(o2);
// 2987
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2988
f637880758_541.returns.push(1373482791325);
// 2989
o2 = {};
// 2990
f637880758_0.returns.push(o2);
// 2991
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2992
f637880758_541.returns.push(1373482791326);
// 2993
o2 = {};
// 2994
f637880758_0.returns.push(o2);
// 2995
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 2996
f637880758_541.returns.push(1373482791326);
// 2997
o2 = {};
// 2998
f637880758_0.returns.push(o2);
// 2999
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3000
f637880758_541.returns.push(1373482791326);
// 3001
o2 = {};
// 3002
f637880758_0.returns.push(o2);
// 3003
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3004
f637880758_541.returns.push(1373482791326);
// 3005
o2 = {};
// 3006
f637880758_0.returns.push(o2);
// 3007
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3008
f637880758_541.returns.push(1373482791333);
// 3009
o2 = {};
// 3010
f637880758_0.returns.push(o2);
// 3011
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3012
f637880758_541.returns.push(1373482791334);
// 3013
o2 = {};
// 3014
f637880758_0.returns.push(o2);
// 3015
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3016
f637880758_541.returns.push(1373482791334);
// 3017
o2 = {};
// 3018
f637880758_0.returns.push(o2);
// 3019
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3020
f637880758_541.returns.push(1373482791334);
// 3021
o2 = {};
// 3022
f637880758_0.returns.push(o2);
// 3023
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3024
f637880758_541.returns.push(1373482791334);
// 3025
o2 = {};
// 3026
f637880758_0.returns.push(o2);
// 3027
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3028
f637880758_541.returns.push(1373482791336);
// 3029
o2 = {};
// 3030
f637880758_0.returns.push(o2);
// 3031
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3032
f637880758_541.returns.push(1373482791336);
// 3033
o2 = {};
// 3034
f637880758_0.returns.push(o2);
// 3035
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3036
f637880758_541.returns.push(1373482791337);
// 3037
o2 = {};
// 3038
f637880758_0.returns.push(o2);
// 3039
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3040
f637880758_541.returns.push(1373482791337);
// 3041
o2 = {};
// 3042
f637880758_0.returns.push(o2);
// 3043
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3044
f637880758_541.returns.push(1373482791337);
// 3045
o2 = {};
// 3046
f637880758_0.returns.push(o2);
// 3047
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3048
f637880758_541.returns.push(1373482791337);
// 3049
o2 = {};
// 3050
f637880758_0.returns.push(o2);
// 3051
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3052
f637880758_541.returns.push(1373482791338);
// 3053
o2 = {};
// 3054
f637880758_0.returns.push(o2);
// 3055
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3056
f637880758_541.returns.push(1373482791339);
// 3057
o2 = {};
// 3058
f637880758_0.returns.push(o2);
// 3059
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3060
f637880758_541.returns.push(1373482791340);
// 3061
o2 = {};
// 3062
f637880758_0.returns.push(o2);
// 3063
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3064
f637880758_541.returns.push(1373482791340);
// 3065
o2 = {};
// 3066
f637880758_0.returns.push(o2);
// 3067
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3068
f637880758_541.returns.push(1373482791340);
// 3069
o2 = {};
// 3070
f637880758_0.returns.push(o2);
// 3071
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3072
f637880758_541.returns.push(1373482791340);
// 3073
o2 = {};
// 3074
f637880758_0.returns.push(o2);
// 3075
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3076
f637880758_541.returns.push(1373482791341);
// 3077
o2 = {};
// 3078
f637880758_0.returns.push(o2);
// 3079
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3080
f637880758_541.returns.push(1373482791341);
// 3081
o2 = {};
// 3082
f637880758_0.returns.push(o2);
// 3083
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3084
f637880758_541.returns.push(1373482791342);
// 3085
o2 = {};
// 3086
f637880758_0.returns.push(o2);
// 3087
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3088
f637880758_541.returns.push(1373482791342);
// 3089
o2 = {};
// 3090
f637880758_0.returns.push(o2);
// 3091
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3092
f637880758_541.returns.push(1373482791342);
// 3093
o2 = {};
// 3094
f637880758_0.returns.push(o2);
// 3095
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3096
f637880758_541.returns.push(1373482791343);
// 3097
o2 = {};
// 3098
f637880758_0.returns.push(o2);
// 3099
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3100
f637880758_541.returns.push(1373482791345);
// 3101
o2 = {};
// 3102
f637880758_0.returns.push(o2);
// 3103
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3104
f637880758_541.returns.push(1373482791345);
// 3105
o2 = {};
// 3106
f637880758_0.returns.push(o2);
// 3107
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3108
f637880758_541.returns.push(1373482791345);
// 3109
o2 = {};
// 3110
f637880758_0.returns.push(o2);
// 3111
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3112
f637880758_541.returns.push(1373482791346);
// 3113
o2 = {};
// 3114
f637880758_0.returns.push(o2);
// 3115
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3116
f637880758_541.returns.push(1373482791351);
// 3117
o2 = {};
// 3118
f637880758_0.returns.push(o2);
// 3119
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3120
f637880758_541.returns.push(1373482791351);
// 3121
o2 = {};
// 3122
f637880758_0.returns.push(o2);
// 3123
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3124
f637880758_541.returns.push(1373482791351);
// 3125
o2 = {};
// 3126
f637880758_0.returns.push(o2);
// 3127
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3128
f637880758_541.returns.push(1373482791352);
// 3129
o2 = {};
// 3130
f637880758_0.returns.push(o2);
// 3131
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3132
f637880758_541.returns.push(1373482791352);
// 3133
o2 = {};
// 3134
f637880758_0.returns.push(o2);
// 3135
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3136
f637880758_541.returns.push(1373482791353);
// 3137
o2 = {};
// 3138
f637880758_0.returns.push(o2);
// 3139
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3140
f637880758_541.returns.push(1373482791354);
// 3141
o2 = {};
// 3142
f637880758_0.returns.push(o2);
// 3143
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3144
f637880758_541.returns.push(1373482791354);
// 3145
o2 = {};
// 3146
f637880758_0.returns.push(o2);
// 3147
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3148
f637880758_541.returns.push(1373482791354);
// 3149
o2 = {};
// 3150
f637880758_0.returns.push(o2);
// 3151
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3152
f637880758_541.returns.push(1373482791355);
// 3153
o2 = {};
// 3154
f637880758_0.returns.push(o2);
// 3155
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3156
f637880758_541.returns.push(1373482791355);
// 3157
o2 = {};
// 3158
f637880758_0.returns.push(o2);
// 3159
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3160
f637880758_541.returns.push(1373482791355);
// 3161
o2 = {};
// 3162
f637880758_0.returns.push(o2);
// 3163
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3164
f637880758_541.returns.push(1373482791356);
// 3165
o2 = {};
// 3166
f637880758_0.returns.push(o2);
// 3167
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3168
f637880758_541.returns.push(1373482791356);
// 3169
o2 = {};
// 3170
f637880758_0.returns.push(o2);
// 3171
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3172
f637880758_541.returns.push(1373482791356);
// 3173
o2 = {};
// 3174
f637880758_0.returns.push(o2);
// 3175
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3176
f637880758_541.returns.push(1373482791359);
// 3177
o2 = {};
// 3178
f637880758_0.returns.push(o2);
// 3179
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3180
f637880758_541.returns.push(1373482791360);
// 3181
o2 = {};
// 3182
f637880758_0.returns.push(o2);
// 3183
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3184
f637880758_541.returns.push(1373482791360);
// 3185
o2 = {};
// 3186
f637880758_0.returns.push(o2);
// 3187
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3188
f637880758_541.returns.push(1373482791360);
// 3189
o2 = {};
// 3190
f637880758_0.returns.push(o2);
// 3191
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3192
f637880758_541.returns.push(1373482791360);
// 3193
o2 = {};
// 3194
f637880758_0.returns.push(o2);
// 3195
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3196
f637880758_541.returns.push(1373482791360);
// 3197
o2 = {};
// 3198
f637880758_0.returns.push(o2);
// 3199
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3200
f637880758_541.returns.push(1373482791360);
// 3201
o2 = {};
// 3202
f637880758_0.returns.push(o2);
// 3203
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3204
f637880758_541.returns.push(1373482791361);
// 3205
o2 = {};
// 3206
f637880758_0.returns.push(o2);
// 3207
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3208
f637880758_541.returns.push(1373482791361);
// 3209
o2 = {};
// 3210
f637880758_0.returns.push(o2);
// 3211
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3212
f637880758_541.returns.push(1373482791361);
// 3213
o2 = {};
// 3214
f637880758_0.returns.push(o2);
// 3215
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3216
f637880758_541.returns.push(1373482791362);
// 3217
o2 = {};
// 3218
f637880758_0.returns.push(o2);
// 3219
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3220
f637880758_541.returns.push(1373482791362);
// 3221
o2 = {};
// 3222
f637880758_0.returns.push(o2);
// 3223
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3224
f637880758_541.returns.push(1373482791385);
// 3225
o2 = {};
// 3226
f637880758_0.returns.push(o2);
// 3227
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3228
f637880758_541.returns.push(1373482791385);
// 3229
o2 = {};
// 3230
f637880758_0.returns.push(o2);
// 3231
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3232
f637880758_541.returns.push(1373482791385);
// 3233
o2 = {};
// 3234
f637880758_0.returns.push(o2);
// 3235
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3236
f637880758_541.returns.push(1373482791385);
// 3237
o2 = {};
// 3238
f637880758_0.returns.push(o2);
// 3239
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3240
f637880758_541.returns.push(1373482791386);
// 3241
o2 = {};
// 3242
f637880758_0.returns.push(o2);
// 3243
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3244
f637880758_541.returns.push(1373482791386);
// 3245
o2 = {};
// 3246
f637880758_0.returns.push(o2);
// 3247
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3248
f637880758_541.returns.push(1373482791392);
// 3249
o2 = {};
// 3250
f637880758_0.returns.push(o2);
// 3251
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3252
f637880758_541.returns.push(1373482791392);
// 3253
o2 = {};
// 3254
f637880758_0.returns.push(o2);
// 3255
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3256
f637880758_541.returns.push(1373482791392);
// 3257
o2 = {};
// 3258
f637880758_0.returns.push(o2);
// 3259
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3260
f637880758_541.returns.push(1373482791393);
// 3261
o2 = {};
// 3262
f637880758_0.returns.push(o2);
// 3263
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3264
f637880758_541.returns.push(1373482791393);
// 3265
o2 = {};
// 3266
f637880758_0.returns.push(o2);
// 3267
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3268
f637880758_541.returns.push(1373482791393);
// 3269
o2 = {};
// 3270
f637880758_0.returns.push(o2);
// 3271
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3272
f637880758_541.returns.push(1373482791393);
// 3273
o2 = {};
// 3274
f637880758_0.returns.push(o2);
// 3275
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3276
f637880758_541.returns.push(1373482791393);
// 3277
o2 = {};
// 3278
f637880758_0.returns.push(o2);
// 3279
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3280
f637880758_541.returns.push(1373482791395);
// 3281
o2 = {};
// 3282
f637880758_0.returns.push(o2);
// 3283
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3284
f637880758_541.returns.push(1373482791395);
// 3285
o2 = {};
// 3286
f637880758_0.returns.push(o2);
// 3287
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3288
f637880758_541.returns.push(1373482791395);
// 3289
o2 = {};
// 3290
f637880758_0.returns.push(o2);
// 3291
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3292
f637880758_541.returns.push(1373482791395);
// 3293
o2 = {};
// 3294
f637880758_0.returns.push(o2);
// 3295
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3296
f637880758_541.returns.push(1373482791395);
// 3297
o2 = {};
// 3298
f637880758_0.returns.push(o2);
// 3299
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3300
f637880758_541.returns.push(1373482791396);
// 3301
o2 = {};
// 3302
f637880758_0.returns.push(o2);
// 3303
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3304
f637880758_541.returns.push(1373482791396);
// 3305
o2 = {};
// 3306
f637880758_0.returns.push(o2);
// 3307
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3308
f637880758_541.returns.push(1373482791397);
// 3309
o2 = {};
// 3310
f637880758_0.returns.push(o2);
// 3311
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3312
f637880758_541.returns.push(1373482791397);
// 3313
o2 = {};
// 3314
f637880758_0.returns.push(o2);
// 3315
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3316
f637880758_541.returns.push(1373482791397);
// 3317
o2 = {};
// 3318
f637880758_0.returns.push(o2);
// 3319
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3320
f637880758_541.returns.push(1373482791397);
// 3321
o2 = {};
// 3322
f637880758_0.returns.push(o2);
// 3323
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3324
f637880758_541.returns.push(1373482791397);
// 3325
o2 = {};
// 3326
f637880758_0.returns.push(o2);
// 3327
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3328
f637880758_541.returns.push(1373482791397);
// 3329
o2 = {};
// 3330
f637880758_0.returns.push(o2);
// 3331
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3332
f637880758_541.returns.push(1373482800320);
// 3333
o2 = {};
// 3334
f637880758_0.returns.push(o2);
// 3335
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3336
f637880758_541.returns.push(1373482800320);
// 3337
o2 = {};
// 3338
f637880758_0.returns.push(o2);
// 3339
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3340
f637880758_541.returns.push(1373482800321);
// 3341
o2 = {};
// 3342
f637880758_0.returns.push(o2);
// 3343
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3344
f637880758_541.returns.push(1373482800321);
// 3345
o2 = {};
// 3346
f637880758_0.returns.push(o2);
// 3347
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3348
f637880758_541.returns.push(1373482800321);
// 3349
o2 = {};
// 3350
f637880758_0.returns.push(o2);
// 3351
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3352
f637880758_541.returns.push(1373482800322);
// 3353
o2 = {};
// 3354
f637880758_0.returns.push(o2);
// 3355
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3356
f637880758_541.returns.push(1373482800322);
// 3357
o2 = {};
// 3358
f637880758_0.returns.push(o2);
// 3359
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3360
f637880758_541.returns.push(1373482800322);
// 3361
o2 = {};
// 3362
f637880758_0.returns.push(o2);
// 3363
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3364
f637880758_541.returns.push(1373482800324);
// 3365
o2 = {};
// 3366
f637880758_0.returns.push(o2);
// 3367
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3368
f637880758_541.returns.push(1373482800324);
// 3369
o2 = {};
// 3370
f637880758_0.returns.push(o2);
// 3371
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3372
f637880758_541.returns.push(1373482800324);
// 3373
o2 = {};
// 3374
f637880758_0.returns.push(o2);
// 3375
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3376
f637880758_541.returns.push(1373482800325);
// 3377
o2 = {};
// 3378
f637880758_0.returns.push(o2);
// 3379
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3380
f637880758_541.returns.push(1373482800325);
// 3381
o2 = {};
// 3382
f637880758_0.returns.push(o2);
// 3383
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3384
f637880758_541.returns.push(1373482800325);
// 3385
o2 = {};
// 3386
f637880758_0.returns.push(o2);
// 3387
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3388
f637880758_541.returns.push(1373482800327);
// 3389
o2 = {};
// 3390
f637880758_0.returns.push(o2);
// 3391
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3392
f637880758_541.returns.push(1373482800327);
// 3393
o2 = {};
// 3394
f637880758_0.returns.push(o2);
// 3395
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3396
f637880758_541.returns.push(1373482800327);
// 3397
o2 = {};
// 3398
f637880758_0.returns.push(o2);
// 3399
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3400
f637880758_541.returns.push(1373482800328);
// 3401
o2 = {};
// 3402
f637880758_0.returns.push(o2);
// 3403
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3404
f637880758_541.returns.push(1373482800328);
// 3405
o2 = {};
// 3406
f637880758_0.returns.push(o2);
// 3407
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3408
f637880758_541.returns.push(1373482800328);
// 3409
o2 = {};
// 3410
f637880758_0.returns.push(o2);
// 3411
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3412
f637880758_541.returns.push(1373482800329);
// 3413
o2 = {};
// 3414
f637880758_0.returns.push(o2);
// 3415
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3416
f637880758_541.returns.push(1373482800329);
// 3417
o2 = {};
// 3418
f637880758_0.returns.push(o2);
// 3419
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3420
f637880758_541.returns.push(1373482800330);
// 3421
o2 = {};
// 3422
f637880758_0.returns.push(o2);
// 3423
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3424
f637880758_541.returns.push(1373482800330);
// 3425
o2 = {};
// 3426
f637880758_0.returns.push(o2);
// 3427
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3428
f637880758_541.returns.push(1373482800331);
// 3429
o2 = {};
// 3430
f637880758_0.returns.push(o2);
// 3431
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3432
f637880758_541.returns.push(1373482800332);
// 3433
o2 = {};
// 3434
f637880758_0.returns.push(o2);
// 3435
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3436
f637880758_541.returns.push(1373482800337);
// 3437
o2 = {};
// 3438
f637880758_0.returns.push(o2);
// 3439
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3440
f637880758_541.returns.push(1373482800337);
// 3441
o2 = {};
// 3442
f637880758_0.returns.push(o2);
// 3443
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3444
f637880758_541.returns.push(1373482800338);
// 3445
o2 = {};
// 3446
f637880758_0.returns.push(o2);
// 3447
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3448
f637880758_541.returns.push(1373482800338);
// 3449
o2 = {};
// 3450
f637880758_0.returns.push(o2);
// 3451
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3452
f637880758_541.returns.push(1373482800338);
// 3453
o2 = {};
// 3454
f637880758_0.returns.push(o2);
// 3455
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3456
f637880758_541.returns.push(1373482800339);
// 3457
o2 = {};
// 3458
f637880758_0.returns.push(o2);
// 3459
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3460
f637880758_541.returns.push(1373482800339);
// 3461
o2 = {};
// 3462
f637880758_0.returns.push(o2);
// 3463
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3464
f637880758_541.returns.push(1373482800339);
// 3465
o2 = {};
// 3466
f637880758_0.returns.push(o2);
// 3467
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3468
f637880758_541.returns.push(1373482800339);
// 3469
o2 = {};
// 3470
f637880758_0.returns.push(o2);
// 3471
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3472
f637880758_541.returns.push(1373482800340);
// 3473
o2 = {};
// 3474
f637880758_0.returns.push(o2);
// 3475
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3476
f637880758_541.returns.push(1373482800340);
// 3477
o2 = {};
// 3478
f637880758_0.returns.push(o2);
// 3479
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3480
f637880758_541.returns.push(1373482800341);
// 3481
o2 = {};
// 3482
f637880758_0.returns.push(o2);
// 3483
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3484
f637880758_541.returns.push(1373482800341);
// 3485
o2 = {};
// 3486
f637880758_0.returns.push(o2);
// 3487
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3488
f637880758_541.returns.push(1373482800343);
// 3489
o2 = {};
// 3490
f637880758_0.returns.push(o2);
// 3491
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3492
f637880758_541.returns.push(1373482800343);
// 3493
o2 = {};
// 3494
f637880758_0.returns.push(o2);
// 3495
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3496
f637880758_541.returns.push(1373482800343);
// 3497
o2 = {};
// 3498
f637880758_0.returns.push(o2);
// 3499
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3500
f637880758_541.returns.push(1373482800345);
// 3501
o2 = {};
// 3502
f637880758_0.returns.push(o2);
// 3503
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3504
f637880758_541.returns.push(1373482800345);
// 3505
o2 = {};
// 3506
f637880758_0.returns.push(o2);
// 3507
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3508
f637880758_541.returns.push(1373482800345);
// 3509
o2 = {};
// 3510
f637880758_0.returns.push(o2);
// 3511
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3512
f637880758_541.returns.push(1373482800346);
// 3513
o2 = {};
// 3514
f637880758_0.returns.push(o2);
// 3515
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3516
f637880758_541.returns.push(1373482800346);
// 3517
o2 = {};
// 3518
f637880758_0.returns.push(o2);
// 3519
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3520
f637880758_541.returns.push(1373482800346);
// 3521
o2 = {};
// 3522
f637880758_0.returns.push(o2);
// 3523
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3524
f637880758_541.returns.push(1373482800347);
// 3525
o2 = {};
// 3526
f637880758_0.returns.push(o2);
// 3527
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3528
f637880758_541.returns.push(1373482800349);
// 3529
o2 = {};
// 3530
f637880758_0.returns.push(o2);
// 3531
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3532
f637880758_541.returns.push(1373482800349);
// 3533
o2 = {};
// 3534
f637880758_0.returns.push(o2);
// 3535
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3536
f637880758_541.returns.push(1373482800349);
// 3537
o2 = {};
// 3538
f637880758_0.returns.push(o2);
// 3539
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3540
f637880758_541.returns.push(1373482800350);
// 3541
o2 = {};
// 3542
f637880758_0.returns.push(o2);
// 3543
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3544
f637880758_541.returns.push(1373482800354);
// 3545
o2 = {};
// 3546
f637880758_0.returns.push(o2);
// 3547
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3548
f637880758_541.returns.push(1373482800354);
// 3549
o2 = {};
// 3550
f637880758_0.returns.push(o2);
// 3551
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3552
f637880758_541.returns.push(1373482800354);
// 3553
o2 = {};
// 3554
f637880758_0.returns.push(o2);
// 3555
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3556
f637880758_541.returns.push(1373482800355);
// 3557
o2 = {};
// 3558
f637880758_0.returns.push(o2);
// 3559
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3560
f637880758_541.returns.push(1373482800356);
// 3561
o2 = {};
// 3562
f637880758_0.returns.push(o2);
// 3563
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3564
f637880758_541.returns.push(1373482800356);
// 3565
o2 = {};
// 3566
f637880758_0.returns.push(o2);
// 3567
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3568
f637880758_541.returns.push(1373482800357);
// 3569
o2 = {};
// 3570
f637880758_0.returns.push(o2);
// 3571
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3572
f637880758_541.returns.push(1373482800357);
// 3573
o2 = {};
// 3574
f637880758_0.returns.push(o2);
// 3575
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3576
f637880758_541.returns.push(1373482800358);
// 3577
o2 = {};
// 3578
f637880758_0.returns.push(o2);
// 3579
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3580
f637880758_541.returns.push(1373482800358);
// 3581
o2 = {};
// 3582
f637880758_0.returns.push(o2);
// 3583
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3584
f637880758_541.returns.push(1373482800358);
// 3585
o2 = {};
// 3586
f637880758_0.returns.push(o2);
// 3587
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3588
f637880758_541.returns.push(1373482800359);
// 3589
o2 = {};
// 3590
f637880758_0.returns.push(o2);
// 3591
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3592
f637880758_541.returns.push(1373482800359);
// 3593
o2 = {};
// 3594
f637880758_0.returns.push(o2);
// 3595
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3596
f637880758_541.returns.push(1373482800359);
// 3597
o2 = {};
// 3598
f637880758_0.returns.push(o2);
// 3599
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3600
f637880758_541.returns.push(1373482800360);
// 3601
o2 = {};
// 3602
f637880758_0.returns.push(o2);
// 3603
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3604
f637880758_541.returns.push(1373482800360);
// 3605
o2 = {};
// 3606
f637880758_0.returns.push(o2);
// 3607
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3608
f637880758_541.returns.push(1373482800360);
// 3609
o2 = {};
// 3610
f637880758_0.returns.push(o2);
// 3611
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3612
f637880758_541.returns.push(1373482800360);
// 3613
o2 = {};
// 3614
f637880758_0.returns.push(o2);
// 3615
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3616
f637880758_541.returns.push(1373482800360);
// 3617
o2 = {};
// 3618
f637880758_0.returns.push(o2);
// 3619
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3620
f637880758_541.returns.push(1373482800361);
// 3621
o2 = {};
// 3622
f637880758_0.returns.push(o2);
// 3623
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3624
f637880758_541.returns.push(1373482800361);
// 3625
o2 = {};
// 3626
f637880758_0.returns.push(o2);
// 3627
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3628
f637880758_541.returns.push(1373482800362);
// 3629
o2 = {};
// 3630
f637880758_0.returns.push(o2);
// 3631
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3632
f637880758_541.returns.push(1373482800362);
// 3633
o2 = {};
// 3634
f637880758_0.returns.push(o2);
// 3635
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3636
f637880758_541.returns.push(1373482800362);
// 3637
o2 = {};
// 3638
f637880758_0.returns.push(o2);
// 3639
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3640
f637880758_541.returns.push(1373482800362);
// 3641
o2 = {};
// 3642
f637880758_0.returns.push(o2);
// 3643
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3644
f637880758_541.returns.push(1373482800363);
// 3645
o2 = {};
// 3646
f637880758_0.returns.push(o2);
// 3647
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3648
f637880758_541.returns.push(1373482800366);
// 3649
o2 = {};
// 3650
f637880758_0.returns.push(o2);
// 3651
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3652
f637880758_541.returns.push(1373482800366);
// 3653
o2 = {};
// 3654
f637880758_0.returns.push(o2);
// 3655
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3656
f637880758_541.returns.push(1373482800367);
// 3657
o2 = {};
// 3658
f637880758_0.returns.push(o2);
// 3659
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3660
f637880758_541.returns.push(1373482800368);
// 3661
o2 = {};
// 3662
f637880758_0.returns.push(o2);
// 3663
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3664
f637880758_541.returns.push(1373482800368);
// 3665
o2 = {};
// 3666
f637880758_0.returns.push(o2);
// 3667
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3668
f637880758_541.returns.push(1373482800369);
// 3669
o2 = {};
// 3670
f637880758_0.returns.push(o2);
// 3671
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3672
f637880758_541.returns.push(1373482800369);
// 3673
o2 = {};
// 3674
f637880758_0.returns.push(o2);
// 3675
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3676
f637880758_541.returns.push(1373482800369);
// 3677
o2 = {};
// 3678
f637880758_0.returns.push(o2);
// 3679
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3680
f637880758_541.returns.push(1373482800370);
// 3681
o2 = {};
// 3682
f637880758_0.returns.push(o2);
// 3683
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3684
f637880758_541.returns.push(1373482800371);
// 3685
o2 = {};
// 3686
f637880758_0.returns.push(o2);
// 3687
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3688
f637880758_541.returns.push(1373482800371);
// 3689
o2 = {};
// 3690
f637880758_0.returns.push(o2);
// 3691
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3692
f637880758_541.returns.push(1373482800371);
// 3693
o2 = {};
// 3694
f637880758_0.returns.push(o2);
// 3695
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3696
f637880758_541.returns.push(1373482800371);
// 3697
o2 = {};
// 3698
f637880758_0.returns.push(o2);
// 3699
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3700
f637880758_541.returns.push(1373482800371);
// 3701
o2 = {};
// 3702
f637880758_0.returns.push(o2);
// 3703
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3704
f637880758_541.returns.push(1373482800371);
// 3705
o2 = {};
// 3706
f637880758_0.returns.push(o2);
// 3707
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3708
f637880758_541.returns.push(1373482800372);
// 3709
o2 = {};
// 3710
f637880758_0.returns.push(o2);
// 3711
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3712
f637880758_541.returns.push(1373482800372);
// 3713
o2 = {};
// 3714
f637880758_0.returns.push(o2);
// 3715
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3716
f637880758_541.returns.push(1373482800372);
// 3717
o2 = {};
// 3718
f637880758_0.returns.push(o2);
// 3719
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3720
f637880758_541.returns.push(1373482800372);
// 3721
o2 = {};
// 3722
f637880758_0.returns.push(o2);
// 3723
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3724
f637880758_541.returns.push(1373482800372);
// 3725
o2 = {};
// 3726
f637880758_0.returns.push(o2);
// 3727
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3728
f637880758_541.returns.push(1373482800373);
// 3729
o2 = {};
// 3730
f637880758_0.returns.push(o2);
// 3731
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3732
f637880758_541.returns.push(1373482800373);
// 3733
o2 = {};
// 3734
f637880758_0.returns.push(o2);
// 3735
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3736
f637880758_541.returns.push(1373482800373);
// 3737
o2 = {};
// 3738
f637880758_0.returns.push(o2);
// 3739
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3740
f637880758_541.returns.push(1373482800374);
// 3741
o2 = {};
// 3742
f637880758_0.returns.push(o2);
// 3743
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3744
f637880758_541.returns.push(1373482800374);
// 3745
o2 = {};
// 3746
f637880758_0.returns.push(o2);
// 3747
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3748
f637880758_541.returns.push(1373482800374);
// 3749
o2 = {};
// 3750
f637880758_0.returns.push(o2);
// 3751
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3752
f637880758_541.returns.push(1373482800374);
// 3753
o2 = {};
// 3754
f637880758_0.returns.push(o2);
// 3755
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3756
f637880758_541.returns.push(1373482800378);
// 3757
o2 = {};
// 3758
f637880758_0.returns.push(o2);
// 3759
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3760
f637880758_541.returns.push(1373482800378);
// 3761
o2 = {};
// 3762
f637880758_0.returns.push(o2);
// 3763
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3764
f637880758_541.returns.push(1373482800378);
// 3765
o2 = {};
// 3766
f637880758_0.returns.push(o2);
// 3767
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3768
f637880758_541.returns.push(1373482800378);
// 3769
o2 = {};
// 3770
f637880758_0.returns.push(o2);
// 3771
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3772
f637880758_541.returns.push(1373482800378);
// 3773
o2 = {};
// 3774
f637880758_0.returns.push(o2);
// 3775
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3776
f637880758_541.returns.push(1373482800378);
// 3777
o2 = {};
// 3778
f637880758_0.returns.push(o2);
// 3779
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3780
f637880758_541.returns.push(1373482800378);
// 3781
o2 = {};
// 3782
f637880758_0.returns.push(o2);
// 3783
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3784
f637880758_541.returns.push(1373482800379);
// 3785
o2 = {};
// 3786
f637880758_0.returns.push(o2);
// 3787
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3788
f637880758_541.returns.push(1373482800379);
// 3789
o2 = {};
// 3790
f637880758_0.returns.push(o2);
// 3791
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3792
f637880758_541.returns.push(1373482800379);
// 3793
o2 = {};
// 3794
f637880758_0.returns.push(o2);
// 3795
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3796
f637880758_541.returns.push(1373482800380);
// 3797
o2 = {};
// 3798
f637880758_0.returns.push(o2);
// 3799
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3800
f637880758_541.returns.push(1373482800380);
// 3801
o2 = {};
// 3802
f637880758_0.returns.push(o2);
// 3803
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3804
f637880758_541.returns.push(1373482800381);
// 3805
o2 = {};
// 3806
f637880758_0.returns.push(o2);
// 3807
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3808
f637880758_541.returns.push(1373482800381);
// 3809
o2 = {};
// 3810
f637880758_0.returns.push(o2);
// 3811
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3812
f637880758_541.returns.push(1373482800381);
// 3813
o2 = {};
// 3814
f637880758_0.returns.push(o2);
// 3815
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3816
f637880758_541.returns.push(1373482800382);
// 3817
o2 = {};
// 3818
f637880758_0.returns.push(o2);
// 3819
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3820
f637880758_541.returns.push(1373482800382);
// 3821
o2 = {};
// 3822
f637880758_0.returns.push(o2);
// 3823
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3824
f637880758_541.returns.push(1373482800382);
// 3825
o2 = {};
// 3826
f637880758_0.returns.push(o2);
// 3827
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3828
f637880758_541.returns.push(1373482800382);
// 3829
o2 = {};
// 3830
f637880758_0.returns.push(o2);
// 3831
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3832
f637880758_541.returns.push(1373482800382);
// 3833
o2 = {};
// 3834
f637880758_0.returns.push(o2);
// 3835
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3836
f637880758_541.returns.push(1373482800383);
// 3837
o2 = {};
// 3838
f637880758_0.returns.push(o2);
// 3839
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3840
f637880758_541.returns.push(1373482800383);
// 3841
o2 = {};
// 3842
f637880758_0.returns.push(o2);
// 3843
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3844
f637880758_541.returns.push(1373482800383);
// 3845
o2 = {};
// 3846
f637880758_0.returns.push(o2);
// 3847
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3848
f637880758_541.returns.push(1373482800384);
// 3849
o2 = {};
// 3850
f637880758_0.returns.push(o2);
// 3851
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3852
f637880758_541.returns.push(1373482800385);
// 3853
o2 = {};
// 3854
f637880758_0.returns.push(o2);
// 3855
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3856
f637880758_541.returns.push(1373482800385);
// 3857
o2 = {};
// 3858
f637880758_0.returns.push(o2);
// 3859
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3860
f637880758_541.returns.push(1373482800389);
// 3861
o2 = {};
// 3862
f637880758_0.returns.push(o2);
// 3863
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3864
f637880758_541.returns.push(1373482800390);
// 3865
o2 = {};
// 3866
f637880758_0.returns.push(o2);
// 3867
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3868
f637880758_541.returns.push(1373482800391);
// 3869
o2 = {};
// 3870
f637880758_0.returns.push(o2);
// 3871
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3872
f637880758_541.returns.push(1373482800391);
// 3873
o2 = {};
// 3874
f637880758_0.returns.push(o2);
// 3875
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3876
f637880758_541.returns.push(1373482800391);
// 3877
o2 = {};
// 3878
f637880758_0.returns.push(o2);
// 3879
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3880
f637880758_541.returns.push(1373482800391);
// 3881
o2 = {};
// 3882
f637880758_0.returns.push(o2);
// 3883
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3884
f637880758_541.returns.push(1373482800391);
// 3885
o2 = {};
// 3886
f637880758_0.returns.push(o2);
// 3887
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3888
f637880758_541.returns.push(1373482800391);
// 3889
o2 = {};
// 3890
f637880758_0.returns.push(o2);
// 3891
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3892
f637880758_541.returns.push(1373482800392);
// 3893
o2 = {};
// 3894
f637880758_0.returns.push(o2);
// 3895
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3896
f637880758_541.returns.push(1373482800392);
// 3897
o2 = {};
// 3898
f637880758_0.returns.push(o2);
// 3899
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3900
f637880758_541.returns.push(1373482800393);
// 3901
o2 = {};
// 3902
f637880758_0.returns.push(o2);
// 3903
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3904
f637880758_541.returns.push(1373482800393);
// 3905
o2 = {};
// 3906
f637880758_0.returns.push(o2);
// 3907
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3908
f637880758_541.returns.push(1373482800393);
// 3909
o2 = {};
// 3910
f637880758_0.returns.push(o2);
// 3911
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3912
f637880758_541.returns.push(1373482800394);
// 3913
o2 = {};
// 3914
f637880758_0.returns.push(o2);
// 3915
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3916
f637880758_541.returns.push(1373482800394);
// 3917
o2 = {};
// 3918
f637880758_0.returns.push(o2);
// 3919
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3920
f637880758_541.returns.push(1373482800394);
// 3921
o2 = {};
// 3922
f637880758_0.returns.push(o2);
// 3923
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3924
f637880758_541.returns.push(1373482800395);
// 3925
o2 = {};
// 3926
f637880758_0.returns.push(o2);
// 3927
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3928
f637880758_541.returns.push(1373482800395);
// 3929
o2 = {};
// 3930
f637880758_0.returns.push(o2);
// 3931
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3932
f637880758_541.returns.push(1373482800395);
// 3933
o2 = {};
// 3934
f637880758_0.returns.push(o2);
// 3935
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3936
f637880758_541.returns.push(1373482800395);
// 3937
o2 = {};
// 3938
f637880758_0.returns.push(o2);
// 3939
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3940
f637880758_541.returns.push(1373482800396);
// 3941
o2 = {};
// 3942
f637880758_0.returns.push(o2);
// 3943
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3944
f637880758_541.returns.push(1373482800396);
// 3945
o2 = {};
// 3946
f637880758_0.returns.push(o2);
// 3947
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3948
f637880758_541.returns.push(1373482800397);
// 3949
o2 = {};
// 3950
f637880758_0.returns.push(o2);
// 3951
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3952
f637880758_541.returns.push(1373482800398);
// 3953
o2 = {};
// 3954
f637880758_0.returns.push(o2);
// 3955
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3956
f637880758_541.returns.push(1373482800398);
// 3957
o2 = {};
// 3958
f637880758_0.returns.push(o2);
// 3959
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3960
f637880758_541.returns.push(1373482800398);
// 3961
o2 = {};
// 3962
f637880758_0.returns.push(o2);
// 3963
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3964
f637880758_541.returns.push(1373482800399);
// 3965
o2 = {};
// 3966
f637880758_0.returns.push(o2);
// 3967
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3968
f637880758_541.returns.push(1373482800403);
// 3969
o2 = {};
// 3970
f637880758_0.returns.push(o2);
// 3971
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3972
f637880758_541.returns.push(1373482800403);
// 3973
o2 = {};
// 3974
f637880758_0.returns.push(o2);
// 3975
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3976
f637880758_541.returns.push(1373482800406);
// 3977
o2 = {};
// 3978
f637880758_0.returns.push(o2);
// 3979
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3980
f637880758_541.returns.push(1373482800406);
// 3981
o2 = {};
// 3982
f637880758_0.returns.push(o2);
// 3983
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3984
f637880758_541.returns.push(1373482800406);
// 3985
o2 = {};
// 3986
f637880758_0.returns.push(o2);
// 3987
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3988
f637880758_541.returns.push(1373482800406);
// 3989
o2 = {};
// 3990
f637880758_0.returns.push(o2);
// 3991
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3992
f637880758_541.returns.push(1373482800407);
// 3993
o2 = {};
// 3994
f637880758_0.returns.push(o2);
// 3995
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 3996
f637880758_541.returns.push(1373482800407);
// 3997
o2 = {};
// 3998
f637880758_0.returns.push(o2);
// 3999
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4000
f637880758_541.returns.push(1373482800408);
// 4001
o2 = {};
// 4002
f637880758_0.returns.push(o2);
// 4003
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4004
f637880758_541.returns.push(1373482800408);
// 4005
o2 = {};
// 4006
f637880758_0.returns.push(o2);
// 4007
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4008
f637880758_541.returns.push(1373482800408);
// 4009
o2 = {};
// 4010
f637880758_0.returns.push(o2);
// 4011
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4012
f637880758_541.returns.push(1373482800408);
// 4013
o2 = {};
// 4014
f637880758_0.returns.push(o2);
// 4015
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4016
f637880758_541.returns.push(1373482800409);
// 4017
o2 = {};
// 4018
f637880758_0.returns.push(o2);
// 4019
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4020
f637880758_541.returns.push(1373482800409);
// 4021
o2 = {};
// 4022
f637880758_0.returns.push(o2);
// 4023
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4024
f637880758_541.returns.push(1373482800410);
// 4025
o2 = {};
// 4026
f637880758_0.returns.push(o2);
// 4027
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4028
f637880758_541.returns.push(1373482800412);
// 4029
o2 = {};
// 4030
f637880758_0.returns.push(o2);
// 4031
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4032
f637880758_541.returns.push(1373482800412);
// 4033
o2 = {};
// 4034
f637880758_0.returns.push(o2);
// 4035
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4036
f637880758_541.returns.push(1373482800412);
// 4037
o2 = {};
// 4038
f637880758_0.returns.push(o2);
// 4039
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4040
f637880758_541.returns.push(1373482800414);
// 4041
o2 = {};
// 4042
f637880758_0.returns.push(o2);
// 4043
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4044
f637880758_541.returns.push(1373482800414);
// 4045
o2 = {};
// 4046
f637880758_0.returns.push(o2);
// 4047
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4048
f637880758_541.returns.push(1373482800414);
// 4049
o2 = {};
// 4050
f637880758_0.returns.push(o2);
// 4051
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4052
f637880758_541.returns.push(1373482800414);
// 4053
o2 = {};
// 4054
f637880758_0.returns.push(o2);
// 4055
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4056
f637880758_541.returns.push(1373482800415);
// 4057
o2 = {};
// 4058
f637880758_0.returns.push(o2);
// 4059
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4060
f637880758_541.returns.push(1373482800415);
// 4061
o2 = {};
// 4062
f637880758_0.returns.push(o2);
// 4063
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4064
f637880758_541.returns.push(1373482800415);
// 4065
o2 = {};
// 4066
f637880758_0.returns.push(o2);
// 4067
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4068
f637880758_541.returns.push(1373482800415);
// 4069
o2 = {};
// 4070
f637880758_0.returns.push(o2);
// 4071
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4072
f637880758_541.returns.push(1373482800421);
// 4073
o2 = {};
// 4074
f637880758_0.returns.push(o2);
// 4075
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4076
f637880758_541.returns.push(1373482800421);
// 4077
o2 = {};
// 4078
f637880758_0.returns.push(o2);
// 4079
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4080
f637880758_541.returns.push(1373482800422);
// 4081
o2 = {};
// 4082
f637880758_0.returns.push(o2);
// 4083
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4084
f637880758_541.returns.push(1373482800422);
// 4085
o2 = {};
// 4086
f637880758_0.returns.push(o2);
// 4087
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4088
f637880758_541.returns.push(1373482800423);
// 4089
o2 = {};
// 4090
f637880758_0.returns.push(o2);
// 4091
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4092
f637880758_541.returns.push(1373482800423);
// 4093
o2 = {};
// 4094
f637880758_0.returns.push(o2);
// 4095
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4096
f637880758_541.returns.push(1373482800423);
// 4097
o2 = {};
// 4098
f637880758_0.returns.push(o2);
// 4099
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4100
f637880758_541.returns.push(1373482800424);
// 4101
o2 = {};
// 4102
f637880758_0.returns.push(o2);
// 4103
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4104
f637880758_541.returns.push(1373482800424);
// 4105
o2 = {};
// 4106
f637880758_0.returns.push(o2);
// 4107
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4108
f637880758_541.returns.push(1373482800425);
// 4109
o2 = {};
// 4110
f637880758_0.returns.push(o2);
// 4111
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4112
f637880758_541.returns.push(1373482800425);
// 4113
o2 = {};
// 4114
f637880758_0.returns.push(o2);
// 4115
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4116
f637880758_541.returns.push(1373482800426);
// 4117
o2 = {};
// 4118
f637880758_0.returns.push(o2);
// 4119
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4120
f637880758_541.returns.push(1373482800426);
// 4121
o2 = {};
// 4122
f637880758_0.returns.push(o2);
// 4123
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4124
f637880758_541.returns.push(1373482800427);
// 4125
o2 = {};
// 4126
f637880758_0.returns.push(o2);
// 4127
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4128
f637880758_541.returns.push(1373482800427);
// 4129
o2 = {};
// 4130
f637880758_0.returns.push(o2);
// 4131
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4132
f637880758_541.returns.push(1373482800427);
// 4133
o2 = {};
// 4134
f637880758_0.returns.push(o2);
// 4135
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4136
f637880758_541.returns.push(1373482800428);
// 4137
o2 = {};
// 4138
f637880758_0.returns.push(o2);
// 4139
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4140
f637880758_541.returns.push(1373482800428);
// 4141
o2 = {};
// 4142
f637880758_0.returns.push(o2);
// 4143
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4144
f637880758_541.returns.push(1373482800429);
// 4145
o2 = {};
// 4146
f637880758_0.returns.push(o2);
// 4147
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4148
f637880758_541.returns.push(1373482800429);
// 4149
o2 = {};
// 4150
f637880758_0.returns.push(o2);
// 4151
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4152
f637880758_541.returns.push(1373482800429);
// 4153
o2 = {};
// 4154
f637880758_0.returns.push(o2);
// 4155
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4156
f637880758_541.returns.push(1373482800429);
// 4157
o2 = {};
// 4158
f637880758_0.returns.push(o2);
// 4159
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4160
f637880758_541.returns.push(1373482800429);
// 4161
o2 = {};
// 4162
f637880758_0.returns.push(o2);
// 4163
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4164
f637880758_541.returns.push(1373482800430);
// 4165
o2 = {};
// 4166
f637880758_0.returns.push(o2);
// 4167
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4168
f637880758_541.returns.push(1373482800430);
// 4169
o2 = {};
// 4170
f637880758_0.returns.push(o2);
// 4171
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4172
f637880758_541.returns.push(1373482800431);
// 4173
o2 = {};
// 4174
f637880758_0.returns.push(o2);
// 4175
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4176
f637880758_541.returns.push(1373482800432);
// 4177
o2 = {};
// 4178
f637880758_0.returns.push(o2);
// 4179
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4180
f637880758_541.returns.push(1373482800436);
// 4181
o2 = {};
// 4182
f637880758_0.returns.push(o2);
// 4183
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4184
f637880758_541.returns.push(1373482800437);
// 4185
o2 = {};
// 4186
f637880758_0.returns.push(o2);
// 4187
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4188
f637880758_541.returns.push(1373482800437);
// 4189
o2 = {};
// 4190
f637880758_0.returns.push(o2);
// 4191
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4192
f637880758_541.returns.push(1373482800437);
// 4193
o2 = {};
// 4194
f637880758_0.returns.push(o2);
// 4195
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4196
f637880758_541.returns.push(1373482800438);
// 4197
o2 = {};
// 4198
f637880758_0.returns.push(o2);
// 4199
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4200
f637880758_541.returns.push(1373482800439);
// 4201
o2 = {};
// 4202
f637880758_0.returns.push(o2);
// 4203
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4204
f637880758_541.returns.push(1373482800439);
// 4205
o2 = {};
// 4206
f637880758_0.returns.push(o2);
// 4207
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4208
f637880758_541.returns.push(1373482800439);
// 4209
o2 = {};
// 4210
f637880758_0.returns.push(o2);
// 4211
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4212
f637880758_541.returns.push(1373482800439);
// 4213
o2 = {};
// 4214
f637880758_0.returns.push(o2);
// 4215
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4216
f637880758_541.returns.push(1373482800442);
// 4217
o2 = {};
// 4218
f637880758_0.returns.push(o2);
// 4219
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4220
f637880758_541.returns.push(1373482800442);
// 4221
o2 = {};
// 4222
f637880758_0.returns.push(o2);
// 4223
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4224
f637880758_541.returns.push(1373482800442);
// 4225
o2 = {};
// 4226
f637880758_0.returns.push(o2);
// 4227
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4228
f637880758_541.returns.push(1373482800443);
// 4229
o2 = {};
// 4230
f637880758_0.returns.push(o2);
// 4231
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4232
f637880758_541.returns.push(1373482800443);
// 4233
o2 = {};
// 4234
f637880758_0.returns.push(o2);
// 4235
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4236
f637880758_541.returns.push(1373482800443);
// 4237
o2 = {};
// 4238
f637880758_0.returns.push(o2);
// 4239
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4240
f637880758_541.returns.push(1373482800443);
// 4241
o2 = {};
// 4242
f637880758_0.returns.push(o2);
// 4243
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4244
f637880758_541.returns.push(1373482800443);
// 4245
o2 = {};
// 4246
f637880758_0.returns.push(o2);
// 4247
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4248
f637880758_541.returns.push(1373482800444);
// 4249
o2 = {};
// 4250
f637880758_0.returns.push(o2);
// 4251
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4252
f637880758_541.returns.push(1373482800444);
// 4253
o2 = {};
// 4254
f637880758_0.returns.push(o2);
// 4255
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4256
f637880758_541.returns.push(1373482800444);
// 4257
o2 = {};
// 4258
f637880758_0.returns.push(o2);
// 4259
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4260
f637880758_541.returns.push(1373482800445);
// 4261
o2 = {};
// 4262
f637880758_0.returns.push(o2);
// 4263
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4264
f637880758_541.returns.push(1373482800446);
// 4265
o2 = {};
// 4266
f637880758_0.returns.push(o2);
// 4267
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4268
f637880758_541.returns.push(1373482800446);
// 4269
o2 = {};
// 4270
f637880758_0.returns.push(o2);
// 4271
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4272
f637880758_541.returns.push(1373482800447);
// 4273
o2 = {};
// 4274
f637880758_0.returns.push(o2);
// 4275
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4276
f637880758_541.returns.push(1373482800447);
// 4277
o2 = {};
// 4278
f637880758_0.returns.push(o2);
// 4279
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4280
f637880758_541.returns.push(1373482800447);
// 4281
o2 = {};
// 4282
f637880758_0.returns.push(o2);
// 4283
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4284
f637880758_541.returns.push(1373482800456);
// 4285
o2 = {};
// 4286
f637880758_0.returns.push(o2);
// 4287
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4288
f637880758_541.returns.push(1373482800457);
// 4289
o2 = {};
// 4290
f637880758_0.returns.push(o2);
// 4291
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4292
f637880758_541.returns.push(1373482800457);
// 4293
o2 = {};
// 4294
f637880758_0.returns.push(o2);
// 4295
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4296
f637880758_541.returns.push(1373482800457);
// 4297
o2 = {};
// 4298
f637880758_0.returns.push(o2);
// 4299
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4300
f637880758_541.returns.push(1373482800457);
// 4301
o2 = {};
// 4302
f637880758_0.returns.push(o2);
// 4303
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4304
f637880758_541.returns.push(1373482800457);
// 4305
o2 = {};
// 4306
f637880758_0.returns.push(o2);
// 4307
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4308
f637880758_541.returns.push(1373482800458);
// 4309
o2 = {};
// 4310
f637880758_0.returns.push(o2);
// 4311
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4312
f637880758_541.returns.push(1373482800459);
// 4313
o2 = {};
// 4314
f637880758_0.returns.push(o2);
// 4315
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4316
f637880758_541.returns.push(1373482800459);
// 4317
o2 = {};
// 4318
f637880758_0.returns.push(o2);
// 4319
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4320
f637880758_541.returns.push(1373482800459);
// 4321
o2 = {};
// 4322
f637880758_0.returns.push(o2);
// 4323
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4324
f637880758_541.returns.push(1373482800459);
// 4325
o2 = {};
// 4326
f637880758_0.returns.push(o2);
// 4327
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4328
f637880758_541.returns.push(1373482800460);
// 4329
o2 = {};
// 4330
f637880758_0.returns.push(o2);
// 4331
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4332
f637880758_541.returns.push(1373482800460);
// 4333
o2 = {};
// 4334
f637880758_0.returns.push(o2);
// 4335
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4336
f637880758_541.returns.push(1373482800460);
// 4337
o2 = {};
// 4338
f637880758_0.returns.push(o2);
// 4339
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4340
f637880758_541.returns.push(1373482800460);
// 4341
o2 = {};
// 4342
f637880758_0.returns.push(o2);
// 4343
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4344
f637880758_541.returns.push(1373482800462);
// 4345
o2 = {};
// 4346
f637880758_0.returns.push(o2);
// 4347
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4348
f637880758_541.returns.push(1373482800463);
// 4349
o2 = {};
// 4350
f637880758_0.returns.push(o2);
// 4351
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4352
f637880758_541.returns.push(1373482800463);
// 4353
o2 = {};
// 4354
f637880758_0.returns.push(o2);
// 4355
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4356
f637880758_541.returns.push(1373482800463);
// 4357
o2 = {};
// 4358
f637880758_0.returns.push(o2);
// 4359
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4360
f637880758_541.returns.push(1373482800465);
// 4361
o2 = {};
// 4362
f637880758_0.returns.push(o2);
// 4363
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4364
f637880758_541.returns.push(1373482800465);
// 4365
o2 = {};
// 4366
f637880758_0.returns.push(o2);
// 4367
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4368
f637880758_541.returns.push(1373482800465);
// 4369
o2 = {};
// 4370
f637880758_0.returns.push(o2);
// 4371
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4372
f637880758_541.returns.push(1373482800465);
// 4373
o2 = {};
// 4374
f637880758_0.returns.push(o2);
// 4375
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4376
f637880758_541.returns.push(1373482800465);
// 4377
o2 = {};
// 4378
f637880758_0.returns.push(o2);
// 4379
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4380
f637880758_541.returns.push(1373482800466);
// 4381
o2 = {};
// 4382
f637880758_0.returns.push(o2);
// 4383
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4384
f637880758_541.returns.push(1373482800466);
// 4385
o2 = {};
// 4386
f637880758_0.returns.push(o2);
// 4387
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4388
f637880758_541.returns.push(1373482800466);
// 4389
o2 = {};
// 4390
f637880758_0.returns.push(o2);
// 4391
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4392
f637880758_541.returns.push(1373482800471);
// 4393
o2 = {};
// 4394
f637880758_0.returns.push(o2);
// 4395
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4396
f637880758_541.returns.push(1373482800471);
// 4397
o2 = {};
// 4398
f637880758_0.returns.push(o2);
// 4399
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4400
f637880758_541.returns.push(1373482800471);
// 4401
o2 = {};
// 4402
f637880758_0.returns.push(o2);
// 4403
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4404
f637880758_541.returns.push(1373482800472);
// 4405
o2 = {};
// 4406
f637880758_0.returns.push(o2);
// 4407
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4408
f637880758_541.returns.push(1373482800472);
// 4409
o2 = {};
// 4410
f637880758_0.returns.push(o2);
// 4411
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4412
f637880758_541.returns.push(1373482800472);
// 4413
o2 = {};
// 4414
f637880758_0.returns.push(o2);
// 4415
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4416
f637880758_541.returns.push(1373482800473);
// 4417
o2 = {};
// 4418
f637880758_0.returns.push(o2);
// 4419
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4420
f637880758_541.returns.push(1373482800473);
// 4421
o2 = {};
// 4422
f637880758_0.returns.push(o2);
// 4423
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4424
f637880758_541.returns.push(1373482800473);
// 4425
o2 = {};
// 4426
f637880758_0.returns.push(o2);
// 4427
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4428
f637880758_541.returns.push(1373482800473);
// 4429
o2 = {};
// 4430
f637880758_0.returns.push(o2);
// 4431
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4432
f637880758_541.returns.push(1373482800473);
// 4433
o2 = {};
// 4434
f637880758_0.returns.push(o2);
// 4435
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4436
f637880758_541.returns.push(1373482800474);
// 4437
o2 = {};
// 4438
f637880758_0.returns.push(o2);
// 4439
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4440
f637880758_541.returns.push(1373482800474);
// 4441
o2 = {};
// 4442
f637880758_0.returns.push(o2);
// 4443
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4444
f637880758_541.returns.push(1373482800474);
// 4445
o2 = {};
// 4446
f637880758_0.returns.push(o2);
// 4447
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4448
f637880758_541.returns.push(1373482800475);
// 4449
o2 = {};
// 4450
f637880758_0.returns.push(o2);
// 4451
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4452
f637880758_541.returns.push(1373482800475);
// 4453
o2 = {};
// 4454
f637880758_0.returns.push(o2);
// 4455
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4456
f637880758_541.returns.push(1373482800475);
// 4457
o2 = {};
// 4458
f637880758_0.returns.push(o2);
// 4459
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4460
f637880758_541.returns.push(1373482800475);
// 4461
o2 = {};
// 4462
f637880758_0.returns.push(o2);
// 4463
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4464
f637880758_541.returns.push(1373482800476);
// 4465
o2 = {};
// 4466
f637880758_0.returns.push(o2);
// 4467
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4468
f637880758_541.returns.push(1373482800476);
// 4469
o2 = {};
// 4470
f637880758_0.returns.push(o2);
// 4471
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4472
f637880758_541.returns.push(1373482800476);
// 4473
o2 = {};
// 4474
f637880758_0.returns.push(o2);
// 4475
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4476
f637880758_541.returns.push(1373482800478);
// 4477
o2 = {};
// 4478
f637880758_0.returns.push(o2);
// 4479
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4480
f637880758_541.returns.push(1373482800478);
// 4481
o2 = {};
// 4482
f637880758_0.returns.push(o2);
// 4483
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4484
f637880758_541.returns.push(1373482800478);
// 4485
o2 = {};
// 4486
f637880758_0.returns.push(o2);
// 4487
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4488
f637880758_541.returns.push(1373482800479);
// 4489
o2 = {};
// 4490
f637880758_0.returns.push(o2);
// 4491
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4492
f637880758_541.returns.push(1373482800480);
// 4493
o2 = {};
// 4494
f637880758_0.returns.push(o2);
// 4495
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4496
f637880758_541.returns.push(1373482800484);
// 4497
o2 = {};
// 4498
f637880758_0.returns.push(o2);
// 4499
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4500
f637880758_541.returns.push(1373482800484);
// 4501
o2 = {};
// 4502
f637880758_0.returns.push(o2);
// 4503
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4504
f637880758_541.returns.push(1373482800487);
// 4505
o2 = {};
// 4506
f637880758_0.returns.push(o2);
// 4507
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4508
f637880758_541.returns.push(1373482800487);
// 4509
o2 = {};
// 4510
f637880758_0.returns.push(o2);
// 4511
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4512
f637880758_541.returns.push(1373482800487);
// 4513
o2 = {};
// 4514
f637880758_0.returns.push(o2);
// 4515
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4516
f637880758_541.returns.push(1373482800488);
// 4517
o2 = {};
// 4518
f637880758_0.returns.push(o2);
// 4519
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4520
f637880758_541.returns.push(1373482800488);
// 4521
o2 = {};
// 4522
f637880758_0.returns.push(o2);
// 4523
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4524
f637880758_541.returns.push(1373482800488);
// 4525
o2 = {};
// 4526
f637880758_0.returns.push(o2);
// 4527
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4528
f637880758_541.returns.push(1373482800488);
// 4529
o2 = {};
// 4530
f637880758_0.returns.push(o2);
// 4531
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4532
f637880758_541.returns.push(1373482800490);
// 4533
o2 = {};
// 4534
f637880758_0.returns.push(o2);
// 4535
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4536
f637880758_541.returns.push(1373482800490);
// 4537
o2 = {};
// 4538
f637880758_0.returns.push(o2);
// 4539
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4540
f637880758_541.returns.push(1373482800491);
// 4541
o2 = {};
// 4542
f637880758_0.returns.push(o2);
// 4543
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4544
f637880758_541.returns.push(1373482800492);
// 4545
o2 = {};
// 4546
f637880758_0.returns.push(o2);
// 4547
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4548
f637880758_541.returns.push(1373482800493);
// 4549
o2 = {};
// 4550
f637880758_0.returns.push(o2);
// 4551
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4552
f637880758_541.returns.push(1373482800494);
// 4553
o2 = {};
// 4554
f637880758_0.returns.push(o2);
// 4555
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4556
f637880758_541.returns.push(1373482800494);
// 4557
o2 = {};
// 4558
f637880758_0.returns.push(o2);
// 4559
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4560
f637880758_541.returns.push(1373482800494);
// 4561
o2 = {};
// 4562
f637880758_0.returns.push(o2);
// 4563
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4564
f637880758_541.returns.push(1373482800495);
// 4565
o2 = {};
// 4566
f637880758_0.returns.push(o2);
// 4567
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4568
f637880758_541.returns.push(1373482800495);
// 4569
o2 = {};
// 4570
f637880758_0.returns.push(o2);
// 4571
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4572
f637880758_541.returns.push(1373482800495);
// 4573
o2 = {};
// 4574
f637880758_0.returns.push(o2);
// 4575
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4576
f637880758_541.returns.push(1373482800495);
// 4577
o2 = {};
// 4578
f637880758_0.returns.push(o2);
// 4579
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4580
f637880758_541.returns.push(1373482800496);
// 4581
o2 = {};
// 4582
f637880758_0.returns.push(o2);
// 4583
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4584
f637880758_541.returns.push(1373482800496);
// 4585
o2 = {};
// 4586
f637880758_0.returns.push(o2);
// 4587
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4588
f637880758_541.returns.push(1373482800497);
// 4589
o2 = {};
// 4590
f637880758_0.returns.push(o2);
// 4591
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4592
f637880758_541.returns.push(1373482800497);
// 4593
o2 = {};
// 4594
f637880758_0.returns.push(o2);
// 4595
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4596
f637880758_541.returns.push(1373482800497);
// 4597
o2 = {};
// 4598
f637880758_0.returns.push(o2);
// 4599
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4600
f637880758_541.returns.push(1373482800497);
// 4601
o2 = {};
// 4602
f637880758_0.returns.push(o2);
// 4603
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4604
f637880758_541.returns.push(1373482800501);
// 4606
o2 = {};
// 4607
f637880758_474.returns.push(o2);
// 4608
o9 = {};
// 4609
o2.style = o9;
// undefined
o2 = null;
// undefined
o9 = null;
// 4610
o2 = {};
// 4611
f637880758_0.returns.push(o2);
// 4612
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4613
f637880758_541.returns.push(1373482800503);
// 4614
o2 = {};
// 4615
f637880758_0.returns.push(o2);
// 4616
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4617
f637880758_541.returns.push(1373482800503);
// 4618
o2 = {};
// 4619
f637880758_0.returns.push(o2);
// 4620
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4621
f637880758_541.returns.push(1373482800503);
// 4622
o2 = {};
// 4623
f637880758_0.returns.push(o2);
// 4624
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4625
f637880758_541.returns.push(1373482800503);
// 4626
o2 = {};
// 4627
f637880758_0.returns.push(o2);
// 4628
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4629
f637880758_541.returns.push(1373482800503);
// 4630
o2 = {};
// 4631
f637880758_0.returns.push(o2);
// 4632
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4633
f637880758_541.returns.push(1373482800504);
// 4634
o2 = {};
// 4635
f637880758_0.returns.push(o2);
// 4636
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4637
f637880758_541.returns.push(1373482800509);
// 4638
o2 = {};
// 4639
f637880758_0.returns.push(o2);
// 4640
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4641
f637880758_541.returns.push(1373482800509);
// 4642
o2 = {};
// 4643
f637880758_0.returns.push(o2);
// 4644
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4645
f637880758_541.returns.push(1373482800509);
// 4646
o2 = {};
// 4647
f637880758_0.returns.push(o2);
// 4648
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4649
f637880758_541.returns.push(1373482800510);
// 4650
o2 = {};
// 4651
f637880758_0.returns.push(o2);
// 4652
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4653
f637880758_541.returns.push(1373482800510);
// 4654
o2 = {};
// 4655
f637880758_0.returns.push(o2);
// 4656
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4657
f637880758_541.returns.push(1373482800511);
// 4658
o2 = {};
// 4659
f637880758_0.returns.push(o2);
// 4660
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4661
f637880758_541.returns.push(1373482800511);
// 4662
o2 = {};
// 4663
f637880758_0.returns.push(o2);
// 4664
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4665
f637880758_541.returns.push(1373482800511);
// 4666
o2 = {};
// 4667
f637880758_0.returns.push(o2);
// 4668
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4669
f637880758_541.returns.push(1373482800512);
// 4670
o2 = {};
// 4671
f637880758_0.returns.push(o2);
// 4672
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4673
f637880758_541.returns.push(1373482800512);
// 4674
o2 = {};
// 4675
f637880758_0.returns.push(o2);
// 4676
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4677
f637880758_541.returns.push(1373482800513);
// 4678
o2 = {};
// 4679
f637880758_0.returns.push(o2);
// 4680
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4681
f637880758_541.returns.push(1373482800513);
// 4682
o2 = {};
// 4683
f637880758_0.returns.push(o2);
// 4684
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4685
f637880758_541.returns.push(1373482800514);
// 4686
o2 = {};
// 4687
f637880758_0.returns.push(o2);
// 4688
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4689
f637880758_541.returns.push(1373482800515);
// 4690
o2 = {};
// 4691
f637880758_0.returns.push(o2);
// 4692
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4693
f637880758_541.returns.push(1373482800515);
// 4694
o2 = {};
// 4695
f637880758_0.returns.push(o2);
// 4696
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4697
f637880758_541.returns.push(1373482800515);
// 4698
o2 = {};
// 4699
f637880758_0.returns.push(o2);
// 4700
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4701
f637880758_541.returns.push(1373482800515);
// 4702
o2 = {};
// 4703
f637880758_0.returns.push(o2);
// 4704
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4705
f637880758_541.returns.push(1373482800516);
// 4706
o2 = {};
// 4707
f637880758_0.returns.push(o2);
// 4708
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4709
f637880758_541.returns.push(1373482800522);
// 4710
o2 = {};
// 4711
f637880758_0.returns.push(o2);
// 4712
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4713
f637880758_541.returns.push(1373482800522);
// 4714
o2 = {};
// 4715
f637880758_0.returns.push(o2);
// 4716
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4717
f637880758_541.returns.push(1373482800523);
// 4718
o2 = {};
// 4719
f637880758_0.returns.push(o2);
// 4720
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4721
f637880758_541.returns.push(1373482800523);
// 4722
o2 = {};
// 4723
f637880758_0.returns.push(o2);
// 4724
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4725
f637880758_541.returns.push(1373482800523);
// 4726
o2 = {};
// 4727
f637880758_0.returns.push(o2);
// 4728
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4729
f637880758_541.returns.push(1373482800523);
// 4730
o2 = {};
// 4731
f637880758_0.returns.push(o2);
// 4732
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4733
f637880758_541.returns.push(1373482800524);
// 4734
o2 = {};
// 4735
f637880758_0.returns.push(o2);
// 4736
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4737
f637880758_541.returns.push(1373482800524);
// 4738
o2 = {};
// 4739
f637880758_0.returns.push(o2);
// 4740
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4741
f637880758_541.returns.push(1373482800525);
// 4742
o2 = {};
// 4743
f637880758_0.returns.push(o2);
// 4744
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4745
f637880758_541.returns.push(1373482800525);
// 4746
o2 = {};
// 4747
f637880758_0.returns.push(o2);
// 4748
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4749
f637880758_541.returns.push(1373482800525);
// 4750
o2 = {};
// 4751
f637880758_0.returns.push(o2);
// 4752
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4753
f637880758_541.returns.push(1373482800525);
// 4754
o2 = {};
// 4755
f637880758_0.returns.push(o2);
// 4756
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4757
f637880758_541.returns.push(1373482800526);
// 4758
o2 = {};
// 4759
f637880758_0.returns.push(o2);
// 4760
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4761
f637880758_541.returns.push(1373482800526);
// 4762
o2 = {};
// 4763
f637880758_0.returns.push(o2);
// 4764
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4765
f637880758_541.returns.push(1373482800526);
// 4766
o2 = {};
// 4767
f637880758_0.returns.push(o2);
// 4768
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4769
f637880758_541.returns.push(1373482800526);
// 4770
o2 = {};
// 4771
f637880758_0.returns.push(o2);
// 4772
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4773
f637880758_541.returns.push(1373482800526);
// 4774
o2 = {};
// 4775
f637880758_0.returns.push(o2);
// 4776
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4777
f637880758_541.returns.push(1373482800527);
// 4778
o2 = {};
// 4779
f637880758_0.returns.push(o2);
// 4780
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4781
f637880758_541.returns.push(1373482800527);
// 4782
o2 = {};
// 4783
f637880758_0.returns.push(o2);
// 4784
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4785
f637880758_541.returns.push(1373482800528);
// 4786
o2 = {};
// 4787
f637880758_0.returns.push(o2);
// 4788
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4789
f637880758_541.returns.push(1373482800528);
// 4790
o2 = {};
// 4791
f637880758_0.returns.push(o2);
// 4792
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4793
f637880758_541.returns.push(1373482800528);
// 4794
o2 = {};
// 4795
f637880758_0.returns.push(o2);
// 4796
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4797
f637880758_541.returns.push(1373482800528);
// 4798
o2 = {};
// 4799
f637880758_0.returns.push(o2);
// 4800
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4801
f637880758_541.returns.push(1373482800529);
// 4802
o2 = {};
// 4803
f637880758_0.returns.push(o2);
// 4804
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4805
f637880758_541.returns.push(1373482800529);
// 4806
o2 = {};
// 4807
f637880758_0.returns.push(o2);
// 4808
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4809
f637880758_541.returns.push(1373482800529);
// 4810
o2 = {};
// 4811
f637880758_0.returns.push(o2);
// 4812
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4813
f637880758_541.returns.push(1373482800529);
// 4814
o2 = {};
// 4815
f637880758_0.returns.push(o2);
// 4816
o2.getTime = f637880758_541;
// undefined
o2 = null;
// 4817
f637880758_541.returns.push(1373482800562);
// 4819
// 4820
// 4821
// 4822
// 4824
o2 = {};
// 4826
o2.type = "load";
// 4827
// undefined
o8 = null;
// 4828
o8 = {};
// 4829
f637880758_0.returns.push(o8);
// 4830
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4831
f637880758_541.returns.push(1373482801658);
// 4832
o8 = {};
// 4833
f637880758_0.returns.push(o8);
// 4834
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4835
f637880758_541.returns.push(1373482801658);
// 4836
o8 = {};
// 4837
f637880758_0.returns.push(o8);
// 4838
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4839
f637880758_541.returns.push(1373482801660);
// 4840
o8 = {};
// 4841
f637880758_0.returns.push(o8);
// 4842
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4843
f637880758_541.returns.push(1373482801660);
// 4844
o8 = {};
// 4845
f637880758_0.returns.push(o8);
// 4846
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4847
f637880758_541.returns.push(1373482801661);
// 4848
o8 = {};
// 4849
f637880758_0.returns.push(o8);
// 4850
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4851
f637880758_541.returns.push(1373482801661);
// 4852
o8 = {};
// 4853
f637880758_0.returns.push(o8);
// 4854
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4855
f637880758_541.returns.push(1373482801661);
// 4856
o8 = {};
// 4857
f637880758_0.returns.push(o8);
// 4858
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4859
f637880758_541.returns.push(1373482801662);
// 4860
o8 = {};
// 4861
f637880758_0.returns.push(o8);
// 4862
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4863
f637880758_541.returns.push(1373482801662);
// 4864
o8 = {};
// 4865
f637880758_0.returns.push(o8);
// 4866
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4867
f637880758_541.returns.push(1373482801662);
// 4868
o8 = {};
// 4869
f637880758_0.returns.push(o8);
// 4870
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4871
f637880758_541.returns.push(1373482801662);
// 4872
o8 = {};
// 4873
f637880758_0.returns.push(o8);
// 4874
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4875
f637880758_541.returns.push(1373482801662);
// 4876
o8 = {};
// 4877
f637880758_0.returns.push(o8);
// 4878
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4879
f637880758_541.returns.push(1373482801662);
// 4880
o8 = {};
// 4881
f637880758_0.returns.push(o8);
// 4882
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4883
f637880758_541.returns.push(1373482801664);
// 4884
o8 = {};
// 4885
f637880758_0.returns.push(o8);
// 4886
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4887
f637880758_541.returns.push(1373482801664);
// 4888
o8 = {};
// 4889
f637880758_0.returns.push(o8);
// 4890
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4891
f637880758_541.returns.push(1373482801664);
// 4892
o8 = {};
// 4893
f637880758_0.returns.push(o8);
// 4894
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4895
f637880758_541.returns.push(1373482801664);
// 4896
o8 = {};
// 4897
f637880758_0.returns.push(o8);
// 4898
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4899
f637880758_541.returns.push(1373482801664);
// 4900
o8 = {};
// 4901
f637880758_0.returns.push(o8);
// 4902
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4903
f637880758_541.returns.push(1373482801664);
// 4904
o8 = {};
// 4905
f637880758_0.returns.push(o8);
// 4906
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4907
f637880758_541.returns.push(1373482801665);
// 4908
o8 = {};
// 4909
f637880758_0.returns.push(o8);
// 4910
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4911
f637880758_541.returns.push(1373482801665);
// 4912
o8 = {};
// 4913
f637880758_0.returns.push(o8);
// 4914
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4915
f637880758_541.returns.push(1373482801665);
// 4916
o8 = {};
// 4917
f637880758_0.returns.push(o8);
// 4918
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4919
f637880758_541.returns.push(1373482801665);
// 4920
o8 = {};
// 4921
f637880758_0.returns.push(o8);
// 4922
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4923
f637880758_541.returns.push(1373482801665);
// 4924
o8 = {};
// 4925
f637880758_0.returns.push(o8);
// 4926
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4927
f637880758_541.returns.push(1373482801665);
// 4928
o8 = {};
// 4929
f637880758_0.returns.push(o8);
// 4930
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4931
f637880758_541.returns.push(1373482801667);
// 4932
o8 = {};
// 4933
f637880758_0.returns.push(o8);
// 4934
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4935
f637880758_541.returns.push(1373482801670);
// 4936
o8 = {};
// 4937
f637880758_0.returns.push(o8);
// 4938
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4939
f637880758_541.returns.push(1373482801670);
// 4940
o8 = {};
// 4941
f637880758_0.returns.push(o8);
// 4942
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4943
f637880758_541.returns.push(1373482801671);
// 4944
o8 = {};
// 4945
f637880758_0.returns.push(o8);
// 4946
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4947
f637880758_541.returns.push(1373482801671);
// 4948
o8 = {};
// 4949
f637880758_0.returns.push(o8);
// 4950
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4951
f637880758_541.returns.push(1373482801671);
// 4952
o8 = {};
// 4953
f637880758_0.returns.push(o8);
// 4954
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4955
f637880758_541.returns.push(1373482801672);
// 4956
o8 = {};
// 4957
f637880758_0.returns.push(o8);
// 4958
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4959
f637880758_541.returns.push(1373482801672);
// 4960
o8 = {};
// 4961
f637880758_0.returns.push(o8);
// 4962
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4963
f637880758_541.returns.push(1373482801672);
// 4964
o8 = {};
// 4965
f637880758_0.returns.push(o8);
// 4966
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4967
f637880758_541.returns.push(1373482801674);
// 4968
o8 = {};
// 4969
f637880758_0.returns.push(o8);
// 4970
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4971
f637880758_541.returns.push(1373482801674);
// 4972
o8 = {};
// 4973
f637880758_0.returns.push(o8);
// 4974
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4975
f637880758_541.returns.push(1373482801674);
// 4976
o8 = {};
// 4977
f637880758_0.returns.push(o8);
// 4978
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4979
f637880758_541.returns.push(1373482801674);
// 4980
o8 = {};
// 4981
f637880758_0.returns.push(o8);
// 4982
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4983
f637880758_541.returns.push(1373482801674);
// 4984
o8 = {};
// 4985
f637880758_0.returns.push(o8);
// 4986
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4987
f637880758_541.returns.push(1373482801674);
// 4988
o8 = {};
// 4989
f637880758_0.returns.push(o8);
// 4990
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4991
f637880758_541.returns.push(1373482801675);
// 4992
o8 = {};
// 4993
f637880758_0.returns.push(o8);
// 4994
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4995
f637880758_541.returns.push(1373482801675);
// 4996
o8 = {};
// 4997
f637880758_0.returns.push(o8);
// 4998
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 4999
f637880758_541.returns.push(1373482801675);
// 5000
o8 = {};
// 5001
f637880758_0.returns.push(o8);
// 5002
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5003
f637880758_541.returns.push(1373482801677);
// 5004
o8 = {};
// 5005
f637880758_0.returns.push(o8);
// 5006
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5007
f637880758_541.returns.push(1373482801677);
// 5008
o8 = {};
// 5009
f637880758_0.returns.push(o8);
// 5010
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5011
f637880758_541.returns.push(1373482801677);
// 5012
o8 = {};
// 5013
f637880758_0.returns.push(o8);
// 5014
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5015
f637880758_541.returns.push(1373482801677);
// 5016
o8 = {};
// 5017
f637880758_0.returns.push(o8);
// 5018
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5019
f637880758_541.returns.push(1373482801677);
// 5020
o8 = {};
// 5021
f637880758_0.returns.push(o8);
// 5022
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5023
f637880758_541.returns.push(1373482801677);
// 5024
o8 = {};
// 5025
f637880758_0.returns.push(o8);
// 5026
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5027
f637880758_541.returns.push(1373482801677);
// 5028
o8 = {};
// 5029
f637880758_0.returns.push(o8);
// 5030
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5031
f637880758_541.returns.push(1373482801678);
// 5032
o8 = {};
// 5033
f637880758_0.returns.push(o8);
// 5034
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5035
f637880758_541.returns.push(1373482801678);
// 5036
o8 = {};
// 5037
f637880758_0.returns.push(o8);
// 5038
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5039
f637880758_541.returns.push(1373482801685);
// 5040
o8 = {};
// 5041
f637880758_0.returns.push(o8);
// 5042
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5043
f637880758_541.returns.push(1373482801685);
// 5044
o8 = {};
// 5045
f637880758_0.returns.push(o8);
// 5046
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5047
f637880758_541.returns.push(1373482801687);
// 5048
o8 = {};
// 5049
f637880758_0.returns.push(o8);
// 5050
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5051
f637880758_541.returns.push(1373482801687);
// 5052
o8 = {};
// 5053
f637880758_0.returns.push(o8);
// 5054
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5055
f637880758_541.returns.push(1373482801687);
// 5056
o8 = {};
// 5057
f637880758_0.returns.push(o8);
// 5058
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5059
f637880758_541.returns.push(1373482801688);
// 5060
o8 = {};
// 5061
f637880758_0.returns.push(o8);
// 5062
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5063
f637880758_541.returns.push(1373482801688);
// 5064
o8 = {};
// 5065
f637880758_0.returns.push(o8);
// 5066
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5067
f637880758_541.returns.push(1373482801688);
// 5068
o8 = {};
// 5069
f637880758_0.returns.push(o8);
// 5070
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5071
f637880758_541.returns.push(1373482801688);
// 5072
o8 = {};
// 5073
f637880758_0.returns.push(o8);
// 5074
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5075
f637880758_541.returns.push(1373482801689);
// 5076
o8 = {};
// 5077
f637880758_0.returns.push(o8);
// 5078
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5079
f637880758_541.returns.push(1373482801689);
// 5080
o8 = {};
// 5081
f637880758_0.returns.push(o8);
// 5082
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5083
f637880758_541.returns.push(1373482801690);
// 5084
o8 = {};
// 5085
f637880758_0.returns.push(o8);
// 5086
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5087
f637880758_541.returns.push(1373482801690);
// 5088
o8 = {};
// 5089
f637880758_0.returns.push(o8);
// 5090
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5091
f637880758_541.returns.push(1373482801690);
// 5092
o8 = {};
// 5093
f637880758_0.returns.push(o8);
// 5094
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5095
f637880758_541.returns.push(1373482801690);
// 5096
o8 = {};
// 5097
f637880758_0.returns.push(o8);
// 5098
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5099
f637880758_541.returns.push(1373482801691);
// 5100
o8 = {};
// 5101
f637880758_0.returns.push(o8);
// 5102
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5103
f637880758_541.returns.push(1373482801691);
// 5104
o8 = {};
// 5105
f637880758_0.returns.push(o8);
// 5106
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5107
f637880758_541.returns.push(1373482801691);
// 5108
o8 = {};
// 5109
f637880758_0.returns.push(o8);
// 5110
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5111
f637880758_541.returns.push(1373482801691);
// 5112
o8 = {};
// 5113
f637880758_0.returns.push(o8);
// 5114
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5115
f637880758_541.returns.push(1373482801694);
// 5116
o8 = {};
// 5117
f637880758_0.returns.push(o8);
// 5118
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5119
f637880758_541.returns.push(1373482801694);
// 5120
o8 = {};
// 5121
f637880758_0.returns.push(o8);
// 5122
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5123
f637880758_541.returns.push(1373482801694);
// 5124
o8 = {};
// 5125
f637880758_0.returns.push(o8);
// 5126
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5127
f637880758_541.returns.push(1373482801694);
// 5128
o8 = {};
// 5129
f637880758_0.returns.push(o8);
// 5130
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5131
f637880758_541.returns.push(1373482801694);
// 5132
o8 = {};
// 5133
f637880758_0.returns.push(o8);
// 5134
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5135
f637880758_541.returns.push(1373482801694);
// 5136
o8 = {};
// 5137
f637880758_0.returns.push(o8);
// 5138
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5139
f637880758_541.returns.push(1373482801695);
// 5140
o8 = {};
// 5141
f637880758_0.returns.push(o8);
// 5142
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5143
f637880758_541.returns.push(1373482801695);
// 5144
o8 = {};
// 5145
f637880758_0.returns.push(o8);
// 5146
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5147
f637880758_541.returns.push(1373482801699);
// 5148
o8 = {};
// 5149
f637880758_0.returns.push(o8);
// 5150
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5151
f637880758_541.returns.push(1373482801699);
// 5152
o8 = {};
// 5153
f637880758_0.returns.push(o8);
// 5154
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5155
f637880758_541.returns.push(1373482801699);
// 5156
o8 = {};
// 5157
f637880758_0.returns.push(o8);
// 5158
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5159
f637880758_541.returns.push(1373482801705);
// 5160
o8 = {};
// 5161
f637880758_0.returns.push(o8);
// 5162
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5163
f637880758_541.returns.push(1373482801705);
// 5164
o8 = {};
// 5165
f637880758_0.returns.push(o8);
// 5166
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5167
f637880758_541.returns.push(1373482801705);
// 5168
o8 = {};
// 5169
f637880758_0.returns.push(o8);
// 5170
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5171
f637880758_541.returns.push(1373482801706);
// 5172
o8 = {};
// 5173
f637880758_0.returns.push(o8);
// 5174
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5175
f637880758_541.returns.push(1373482801706);
// 5176
o8 = {};
// 5177
f637880758_0.returns.push(o8);
// 5178
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5179
f637880758_541.returns.push(1373482801706);
// 5180
o8 = {};
// 5181
f637880758_0.returns.push(o8);
// 5182
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5183
f637880758_541.returns.push(1373482801706);
// 5184
o8 = {};
// 5185
f637880758_0.returns.push(o8);
// 5186
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5187
f637880758_541.returns.push(1373482801707);
// 5188
o8 = {};
// 5189
f637880758_0.returns.push(o8);
// 5190
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5191
f637880758_541.returns.push(1373482801707);
// 5192
o8 = {};
// 5193
f637880758_0.returns.push(o8);
// 5194
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5195
f637880758_541.returns.push(1373482801707);
// 5196
o8 = {};
// 5197
f637880758_0.returns.push(o8);
// 5198
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5199
f637880758_541.returns.push(1373482801708);
// 5200
o8 = {};
// 5201
f637880758_0.returns.push(o8);
// 5202
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5203
f637880758_541.returns.push(1373482801708);
// 5204
o8 = {};
// 5205
f637880758_0.returns.push(o8);
// 5206
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5207
f637880758_541.returns.push(1373482801708);
// 5208
o5.pathname = "/search";
// 5209
o8 = {};
// 5210
f637880758_0.returns.push(o8);
// 5211
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5212
f637880758_541.returns.push(1373482801709);
// 5213
o8 = {};
// 5214
f637880758_0.returns.push(o8);
// 5215
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5216
f637880758_541.returns.push(1373482801709);
// 5217
o8 = {};
// 5218
f637880758_0.returns.push(o8);
// 5219
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5220
f637880758_541.returns.push(1373482801710);
// 5221
o8 = {};
// 5222
f637880758_0.returns.push(o8);
// 5223
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5224
f637880758_541.returns.push(1373482801710);
// 5225
o8 = {};
// 5226
f637880758_0.returns.push(o8);
// 5227
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5228
f637880758_541.returns.push(1373482801710);
// 5229
o8 = {};
// 5230
f637880758_0.returns.push(o8);
// 5231
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5232
f637880758_541.returns.push(1373482801710);
// 5233
o8 = {};
// 5234
f637880758_0.returns.push(o8);
// 5235
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5236
f637880758_541.returns.push(1373482801710);
// 5237
o8 = {};
// 5238
f637880758_0.returns.push(o8);
// 5239
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5240
f637880758_541.returns.push(1373482801711);
// 5241
o8 = {};
// 5242
f637880758_0.returns.push(o8);
// 5243
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5244
f637880758_541.returns.push(1373482801711);
// 5245
o8 = {};
// 5246
f637880758_0.returns.push(o8);
// 5247
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5248
f637880758_541.returns.push(1373482801711);
// 5249
o8 = {};
// 5250
f637880758_0.returns.push(o8);
// 5251
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5252
f637880758_541.returns.push(1373482801721);
// 5253
o8 = {};
// 5254
f637880758_0.returns.push(o8);
// 5255
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5256
f637880758_541.returns.push(1373482801721);
// 5257
o8 = {};
// 5258
f637880758_0.returns.push(o8);
// 5259
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5260
f637880758_541.returns.push(1373482801721);
// 5261
o8 = {};
// 5262
f637880758_0.returns.push(o8);
// 5263
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5264
f637880758_541.returns.push(1373482801721);
// 5265
o8 = {};
// 5266
f637880758_0.returns.push(o8);
// 5267
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5268
f637880758_541.returns.push(1373482801725);
// 5269
o8 = {};
// 5270
f637880758_0.returns.push(o8);
// 5271
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5272
f637880758_541.returns.push(1373482801725);
// 5273
o8 = {};
// 5274
f637880758_0.returns.push(o8);
// 5275
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5276
f637880758_541.returns.push(1373482801725);
// 5277
o8 = {};
// 5278
f637880758_0.returns.push(o8);
// 5279
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5280
f637880758_541.returns.push(1373482801726);
// 5281
o8 = {};
// 5282
f637880758_0.returns.push(o8);
// 5283
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5284
f637880758_541.returns.push(1373482801726);
// 5285
o8 = {};
// 5286
f637880758_0.returns.push(o8);
// 5287
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5288
f637880758_541.returns.push(1373482801726);
// 5289
o8 = {};
// 5290
f637880758_0.returns.push(o8);
// 5291
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5292
f637880758_541.returns.push(1373482801727);
// 5293
o8 = {};
// 5294
f637880758_0.returns.push(o8);
// 5295
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5296
f637880758_541.returns.push(1373482801727);
// 5297
o8 = {};
// 5298
f637880758_0.returns.push(o8);
// 5299
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5300
f637880758_541.returns.push(1373482801728);
// 5301
o8 = {};
// 5302
f637880758_0.returns.push(o8);
// 5303
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5304
f637880758_541.returns.push(1373482801728);
// 5305
o8 = {};
// 5306
f637880758_0.returns.push(o8);
// 5307
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5308
f637880758_541.returns.push(1373482801728);
// 5309
o8 = {};
// 5310
f637880758_0.returns.push(o8);
// 5311
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5312
f637880758_541.returns.push(1373482801728);
// 5313
o8 = {};
// 5314
f637880758_0.returns.push(o8);
// 5315
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5316
f637880758_541.returns.push(1373482801729);
// 5317
o8 = {};
// 5318
f637880758_0.returns.push(o8);
// 5319
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5320
f637880758_541.returns.push(1373482801729);
// 5321
o8 = {};
// 5322
f637880758_0.returns.push(o8);
// 5323
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5324
f637880758_541.returns.push(1373482801729);
// 5325
o8 = {};
// 5326
f637880758_0.returns.push(o8);
// 5327
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5328
f637880758_541.returns.push(1373482801729);
// 5329
o8 = {};
// 5330
f637880758_0.returns.push(o8);
// 5331
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5332
f637880758_541.returns.push(1373482801729);
// 5333
o8 = {};
// 5334
f637880758_0.returns.push(o8);
// 5335
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5336
f637880758_541.returns.push(1373482801729);
// 5337
o8 = {};
// 5338
f637880758_0.returns.push(o8);
// 5339
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5340
f637880758_541.returns.push(1373482801729);
// 5341
o8 = {};
// 5342
f637880758_0.returns.push(o8);
// 5343
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5344
f637880758_541.returns.push(1373482801729);
// 5345
o8 = {};
// 5346
f637880758_0.returns.push(o8);
// 5347
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5348
f637880758_541.returns.push(1373482801732);
// 5349
o8 = {};
// 5350
f637880758_0.returns.push(o8);
// 5351
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5352
f637880758_541.returns.push(1373482801732);
// 5353
o8 = {};
// 5354
f637880758_0.returns.push(o8);
// 5355
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5356
f637880758_541.returns.push(1373482801733);
// 5357
o8 = {};
// 5358
f637880758_0.returns.push(o8);
// 5359
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5360
f637880758_541.returns.push(1373482801737);
// 5361
o8 = {};
// 5362
f637880758_0.returns.push(o8);
// 5363
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5364
f637880758_541.returns.push(1373482801737);
// 5365
o8 = {};
// 5366
f637880758_0.returns.push(o8);
// 5367
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5368
f637880758_541.returns.push(1373482801737);
// 5369
o8 = {};
// 5370
f637880758_0.returns.push(o8);
// 5371
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5372
f637880758_541.returns.push(1373482801737);
// 5373
o8 = {};
// 5374
f637880758_0.returns.push(o8);
// 5375
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5376
f637880758_541.returns.push(1373482801738);
// 5377
o8 = {};
// 5378
f637880758_0.returns.push(o8);
// 5379
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5380
f637880758_541.returns.push(1373482801738);
// 5381
o8 = {};
// 5382
f637880758_0.returns.push(o8);
// 5383
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5384
f637880758_541.returns.push(1373482801738);
// 5385
o8 = {};
// 5386
f637880758_0.returns.push(o8);
// 5387
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5388
f637880758_541.returns.push(1373482801740);
// 5389
o8 = {};
// 5390
f637880758_0.returns.push(o8);
// 5391
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5392
f637880758_541.returns.push(1373482801740);
// 5393
o8 = {};
// 5394
f637880758_0.returns.push(o8);
// 5395
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5396
f637880758_541.returns.push(1373482801740);
// 5397
o8 = {};
// 5398
f637880758_0.returns.push(o8);
// 5399
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5400
f637880758_541.returns.push(1373482801741);
// 5401
o8 = {};
// 5402
f637880758_0.returns.push(o8);
// 5403
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5404
f637880758_541.returns.push(1373482801741);
// 5405
o8 = {};
// 5406
f637880758_0.returns.push(o8);
// 5407
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5408
f637880758_541.returns.push(1373482801741);
// 5409
o8 = {};
// 5410
f637880758_0.returns.push(o8);
// 5411
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5412
f637880758_541.returns.push(1373482801742);
// 5413
o8 = {};
// 5414
f637880758_0.returns.push(o8);
// 5415
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5416
f637880758_541.returns.push(1373482801742);
// 5417
o8 = {};
// 5418
f637880758_0.returns.push(o8);
// 5419
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5420
f637880758_541.returns.push(1373482801742);
// 5421
o8 = {};
// 5422
f637880758_0.returns.push(o8);
// 5423
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5424
f637880758_541.returns.push(1373482801742);
// 5425
o8 = {};
// 5426
f637880758_0.returns.push(o8);
// 5427
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5428
f637880758_541.returns.push(1373482801743);
// 5429
o8 = {};
// 5430
f637880758_0.returns.push(o8);
// 5431
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5432
f637880758_541.returns.push(1373482801743);
// 5433
o8 = {};
// 5434
f637880758_0.returns.push(o8);
// 5435
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5436
f637880758_541.returns.push(1373482801743);
// 5437
o8 = {};
// 5438
f637880758_0.returns.push(o8);
// 5439
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5440
f637880758_541.returns.push(1373482801743);
// 5441
o8 = {};
// 5442
f637880758_0.returns.push(o8);
// 5443
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5444
f637880758_541.returns.push(1373482801743);
// 5445
o8 = {};
// 5446
f637880758_0.returns.push(o8);
// 5447
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5448
f637880758_541.returns.push(1373482801746);
// 5449
o8 = {};
// 5450
f637880758_0.returns.push(o8);
// 5451
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5452
f637880758_541.returns.push(1373482801746);
// 5453
o8 = {};
// 5454
f637880758_0.returns.push(o8);
// 5455
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5456
f637880758_541.returns.push(1373482801747);
// 5457
o8 = {};
// 5458
f637880758_0.returns.push(o8);
// 5459
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5460
f637880758_541.returns.push(1373482801747);
// 5461
o8 = {};
// 5462
f637880758_0.returns.push(o8);
// 5463
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5464
f637880758_541.returns.push(1373482801751);
// 5465
o8 = {};
// 5466
f637880758_0.returns.push(o8);
// 5467
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5468
f637880758_541.returns.push(1373482801751);
// 5469
o8 = {};
// 5470
f637880758_0.returns.push(o8);
// 5471
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5472
f637880758_541.returns.push(1373482801751);
// 5473
o8 = {};
// 5474
f637880758_0.returns.push(o8);
// 5475
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5476
f637880758_541.returns.push(1373482801751);
// 5477
o8 = {};
// 5478
f637880758_0.returns.push(o8);
// 5479
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5480
f637880758_541.returns.push(1373482801752);
// 5481
o8 = {};
// 5482
f637880758_0.returns.push(o8);
// 5483
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5484
f637880758_541.returns.push(1373482801754);
// 5485
o8 = {};
// 5486
f637880758_0.returns.push(o8);
// 5487
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5488
f637880758_541.returns.push(1373482801754);
// 5489
o8 = {};
// 5490
f637880758_0.returns.push(o8);
// 5491
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5492
f637880758_541.returns.push(1373482801754);
// 5493
o8 = {};
// 5494
f637880758_0.returns.push(o8);
// 5495
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5496
f637880758_541.returns.push(1373482801755);
// 5497
o8 = {};
// 5498
f637880758_0.returns.push(o8);
// 5499
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5500
f637880758_541.returns.push(1373482801755);
// 5501
o8 = {};
// 5502
f637880758_0.returns.push(o8);
// 5503
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5504
f637880758_541.returns.push(1373482801756);
// 5505
o8 = {};
// 5506
f637880758_0.returns.push(o8);
// 5507
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5508
f637880758_541.returns.push(1373482801756);
// 5509
o8 = {};
// 5510
f637880758_0.returns.push(o8);
// 5511
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5512
f637880758_541.returns.push(1373482801756);
// 5513
o8 = {};
// 5514
f637880758_0.returns.push(o8);
// 5515
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5516
f637880758_541.returns.push(1373482801756);
// 5517
o8 = {};
// 5518
f637880758_0.returns.push(o8);
// 5519
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5520
f637880758_541.returns.push(1373482801756);
// 5521
o8 = {};
// 5522
f637880758_0.returns.push(o8);
// 5523
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5524
f637880758_541.returns.push(1373482801757);
// 5525
o8 = {};
// 5526
f637880758_0.returns.push(o8);
// 5527
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5528
f637880758_541.returns.push(1373482801759);
// 5529
o8 = {};
// 5530
f637880758_0.returns.push(o8);
// 5531
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5532
f637880758_541.returns.push(1373482801760);
// 5533
o8 = {};
// 5534
f637880758_0.returns.push(o8);
// 5535
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5536
f637880758_541.returns.push(1373482801760);
// 5537
o8 = {};
// 5538
f637880758_0.returns.push(o8);
// 5539
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5540
f637880758_541.returns.push(1373482801760);
// 5541
o8 = {};
// 5542
f637880758_0.returns.push(o8);
// 5543
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5544
f637880758_541.returns.push(1373482801760);
// 5545
o8 = {};
// 5546
f637880758_0.returns.push(o8);
// 5547
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5548
f637880758_541.returns.push(1373482801760);
// 5549
o8 = {};
// 5550
f637880758_0.returns.push(o8);
// 5551
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5552
f637880758_541.returns.push(1373482801761);
// 5553
o8 = {};
// 5554
f637880758_0.returns.push(o8);
// 5555
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5556
f637880758_541.returns.push(1373482801761);
// 5557
o8 = {};
// 5558
f637880758_0.returns.push(o8);
// 5559
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5560
f637880758_541.returns.push(1373482801761);
// 5561
o8 = {};
// 5562
f637880758_0.returns.push(o8);
// 5563
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5564
f637880758_541.returns.push(1373482801761);
// 5565
o8 = {};
// 5566
f637880758_0.returns.push(o8);
// 5567
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5568
f637880758_541.returns.push(1373482801761);
// 5569
o8 = {};
// 5570
f637880758_0.returns.push(o8);
// 5571
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5572
f637880758_541.returns.push(1373482801764);
// 5573
o8 = {};
// 5574
f637880758_0.returns.push(o8);
// 5575
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5576
f637880758_541.returns.push(1373482801764);
// 5577
o8 = {};
// 5578
f637880758_0.returns.push(o8);
// 5579
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5580
f637880758_541.returns.push(1373482801765);
// 5581
o8 = {};
// 5582
f637880758_0.returns.push(o8);
// 5583
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5584
f637880758_541.returns.push(1373482801765);
// 5585
o8 = {};
// 5586
f637880758_0.returns.push(o8);
// 5587
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5588
f637880758_541.returns.push(1373482801765);
// 5589
o8 = {};
// 5590
f637880758_0.returns.push(o8);
// 5591
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5592
f637880758_541.returns.push(1373482801767);
// 5593
o8 = {};
// 5594
f637880758_0.returns.push(o8);
// 5595
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5596
f637880758_541.returns.push(1373482801767);
// 5597
o8 = {};
// 5598
f637880758_0.returns.push(o8);
// 5599
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5600
f637880758_541.returns.push(1373482801767);
// 5601
o8 = {};
// 5602
f637880758_0.returns.push(o8);
// 5603
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5604
f637880758_541.returns.push(1373482801768);
// 5605
o8 = {};
// 5606
f637880758_0.returns.push(o8);
// 5607
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5608
f637880758_541.returns.push(1373482801768);
// 5609
o8 = {};
// 5610
f637880758_0.returns.push(o8);
// 5611
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5612
f637880758_541.returns.push(1373482801768);
// 5613
o8 = {};
// 5614
f637880758_0.returns.push(o8);
// 5615
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5616
f637880758_541.returns.push(1373482801768);
// 5617
o8 = {};
// 5618
f637880758_0.returns.push(o8);
// 5619
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5620
f637880758_541.returns.push(1373482801769);
// 5621
o8 = {};
// 5622
f637880758_0.returns.push(o8);
// 5623
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5624
f637880758_541.returns.push(1373482801774);
// 5625
o8 = {};
// 5626
f637880758_0.returns.push(o8);
// 5627
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5628
f637880758_541.returns.push(1373482801774);
// 5629
o8 = {};
// 5630
f637880758_0.returns.push(o8);
// 5631
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5632
f637880758_541.returns.push(1373482801774);
// 5633
o8 = {};
// 5634
f637880758_0.returns.push(o8);
// 5635
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5636
f637880758_541.returns.push(1373482801775);
// 5637
o8 = {};
// 5638
f637880758_0.returns.push(o8);
// 5639
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5640
f637880758_541.returns.push(1373482801775);
// 5641
o8 = {};
// 5642
f637880758_0.returns.push(o8);
// 5643
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5644
f637880758_541.returns.push(1373482801775);
// 5645
o8 = {};
// 5646
f637880758_0.returns.push(o8);
// 5647
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5648
f637880758_541.returns.push(1373482801775);
// 5649
o8 = {};
// 5650
f637880758_0.returns.push(o8);
// 5651
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5652
f637880758_541.returns.push(1373482801776);
// 5653
o8 = {};
// 5654
f637880758_0.returns.push(o8);
// 5655
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5656
f637880758_541.returns.push(1373482801776);
// 5657
o8 = {};
// 5658
f637880758_0.returns.push(o8);
// 5659
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5660
f637880758_541.returns.push(1373482801776);
// 5661
o8 = {};
// 5662
f637880758_0.returns.push(o8);
// 5663
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5664
f637880758_541.returns.push(1373482801776);
// 5665
o8 = {};
// 5666
f637880758_0.returns.push(o8);
// 5667
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5668
f637880758_541.returns.push(1373482801777);
// 5669
o8 = {};
// 5670
f637880758_0.returns.push(o8);
// 5671
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5672
f637880758_541.returns.push(1373482801777);
// 5673
o8 = {};
// 5674
f637880758_0.returns.push(o8);
// 5675
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5676
f637880758_541.returns.push(1373482801783);
// 5677
o8 = {};
// 5678
f637880758_0.returns.push(o8);
// 5679
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5680
f637880758_541.returns.push(1373482801783);
// 5681
o8 = {};
// 5682
f637880758_0.returns.push(o8);
// 5683
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5684
f637880758_541.returns.push(1373482801784);
// 5685
o8 = {};
// 5686
f637880758_0.returns.push(o8);
// 5687
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5688
f637880758_541.returns.push(1373482801784);
// 5689
o8 = {};
// 5690
f637880758_0.returns.push(o8);
// 5691
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5692
f637880758_541.returns.push(1373482801784);
// 5693
o8 = {};
// 5694
f637880758_0.returns.push(o8);
// 5695
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5696
f637880758_541.returns.push(1373482801784);
// 5697
o8 = {};
// 5698
f637880758_0.returns.push(o8);
// 5699
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5700
f637880758_541.returns.push(1373482801785);
// 5701
o8 = {};
// 5702
f637880758_0.returns.push(o8);
// 5703
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5704
f637880758_541.returns.push(1373482801785);
// 5705
o8 = {};
// 5706
f637880758_0.returns.push(o8);
// 5707
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5708
f637880758_541.returns.push(1373482801785);
// 5709
o8 = {};
// 5710
f637880758_0.returns.push(o8);
// 5711
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5712
f637880758_541.returns.push(1373482801785);
// 5713
o8 = {};
// 5714
f637880758_0.returns.push(o8);
// 5715
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5716
f637880758_541.returns.push(1373482801785);
// 5717
o8 = {};
// 5718
f637880758_0.returns.push(o8);
// 5719
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5720
f637880758_541.returns.push(1373482801786);
// 5721
o8 = {};
// 5722
f637880758_0.returns.push(o8);
// 5723
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5724
f637880758_541.returns.push(1373482801786);
// 5725
o8 = {};
// 5726
f637880758_0.returns.push(o8);
// 5727
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5728
f637880758_541.returns.push(1373482801786);
// 5729
o8 = {};
// 5730
f637880758_0.returns.push(o8);
// 5731
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5732
f637880758_541.returns.push(1373482801786);
// 5733
o8 = {};
// 5734
f637880758_0.returns.push(o8);
// 5735
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5736
f637880758_541.returns.push(1373482801787);
// 5737
o8 = {};
// 5738
f637880758_0.returns.push(o8);
// 5739
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5740
f637880758_541.returns.push(1373482801787);
// 5741
o8 = {};
// 5742
f637880758_0.returns.push(o8);
// 5743
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5744
f637880758_541.returns.push(1373482801787);
// 5745
o8 = {};
// 5746
f637880758_0.returns.push(o8);
// 5747
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5748
f637880758_541.returns.push(1373482801788);
// 5749
o8 = {};
// 5750
f637880758_0.returns.push(o8);
// 5751
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5752
f637880758_541.returns.push(1373482801788);
// 5753
o8 = {};
// 5754
f637880758_0.returns.push(o8);
// 5755
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5756
f637880758_541.returns.push(1373482801788);
// 5757
o8 = {};
// 5758
f637880758_0.returns.push(o8);
// 5759
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5760
f637880758_541.returns.push(1373482801789);
// 5761
o8 = {};
// 5762
f637880758_0.returns.push(o8);
// 5763
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5764
f637880758_541.returns.push(1373482801789);
// 5765
o8 = {};
// 5766
f637880758_0.returns.push(o8);
// 5767
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5768
f637880758_541.returns.push(1373482801789);
// 5769
o8 = {};
// 5770
f637880758_0.returns.push(o8);
// 5771
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5772
f637880758_541.returns.push(1373482801790);
// 5773
o8 = {};
// 5774
f637880758_0.returns.push(o8);
// 5775
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5776
f637880758_541.returns.push(1373482801791);
// 5777
o8 = {};
// 5778
f637880758_0.returns.push(o8);
// 5779
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5780
f637880758_541.returns.push(1373482801791);
// 5781
o8 = {};
// 5782
f637880758_0.returns.push(o8);
// 5783
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5784
f637880758_541.returns.push(1373482801795);
// 5785
o8 = {};
// 5786
f637880758_0.returns.push(o8);
// 5787
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5788
f637880758_541.returns.push(1373482801795);
// 5789
o8 = {};
// 5790
f637880758_0.returns.push(o8);
// 5791
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5792
f637880758_541.returns.push(1373482801795);
// 5793
o8 = {};
// 5794
f637880758_0.returns.push(o8);
// 5795
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5796
f637880758_541.returns.push(1373482801796);
// 5797
o8 = {};
// 5798
f637880758_0.returns.push(o8);
// 5799
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5800
f637880758_541.returns.push(1373482801796);
// 5801
o8 = {};
// 5802
f637880758_0.returns.push(o8);
// 5803
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5804
f637880758_541.returns.push(1373482801796);
// 5805
o8 = {};
// 5806
f637880758_0.returns.push(o8);
// 5807
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5808
f637880758_541.returns.push(1373482801796);
// 5809
o8 = {};
// 5810
f637880758_0.returns.push(o8);
// 5811
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5812
f637880758_541.returns.push(1373482801796);
// 5813
o8 = {};
// 5814
f637880758_0.returns.push(o8);
// 5815
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5816
f637880758_541.returns.push(1373482801796);
// 5817
o8 = {};
// 5818
f637880758_0.returns.push(o8);
// 5819
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5820
f637880758_541.returns.push(1373482801796);
// 5821
o8 = {};
// 5822
f637880758_0.returns.push(o8);
// 5823
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5824
f637880758_541.returns.push(1373482801797);
// 5825
o8 = {};
// 5826
f637880758_0.returns.push(o8);
// 5827
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5828
f637880758_541.returns.push(1373482801797);
// 5829
o3.appName = "Netscape";
// 5830
o8 = {};
// 5831
f637880758_0.returns.push(o8);
// 5832
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5833
f637880758_541.returns.push(1373482801797);
// 5834
o8 = {};
// 5835
f637880758_0.returns.push(o8);
// 5836
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5837
f637880758_541.returns.push(1373482801797);
// 5838
o8 = {};
// 5839
f637880758_0.returns.push(o8);
// 5840
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5841
f637880758_541.returns.push(1373482801797);
// 5842
o8 = {};
// 5843
f637880758_0.returns.push(o8);
// 5844
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5845
f637880758_541.returns.push(1373482801797);
// 5846
o8 = {};
// 5847
f637880758_0.returns.push(o8);
// 5848
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5849
f637880758_541.returns.push(1373482801798);
// 5850
o8 = {};
// 5851
f637880758_0.returns.push(o8);
// 5852
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5853
f637880758_541.returns.push(1373482801798);
// 5854
o8 = {};
// 5855
f637880758_0.returns.push(o8);
// 5856
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5857
f637880758_541.returns.push(1373482801798);
// 5858
o8 = {};
// 5859
f637880758_0.returns.push(o8);
// 5860
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5861
f637880758_541.returns.push(1373482801798);
// 5862
o8 = {};
// 5863
f637880758_0.returns.push(o8);
// 5864
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5865
f637880758_541.returns.push(1373482801798);
// 5866
o8 = {};
// 5867
f637880758_0.returns.push(o8);
// 5868
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5869
f637880758_541.returns.push(1373482801798);
// 5870
o8 = {};
// 5871
f637880758_0.returns.push(o8);
// 5872
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5873
f637880758_541.returns.push(1373482801798);
// 5874
o8 = {};
// 5875
f637880758_0.returns.push(o8);
// 5876
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5877
f637880758_541.returns.push(1373482801799);
// 5878
o8 = {};
// 5879
f637880758_0.returns.push(o8);
// 5880
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5881
f637880758_541.returns.push(1373482801799);
// 5882
o8 = {};
// 5883
f637880758_0.returns.push(o8);
// 5884
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5885
f637880758_541.returns.push(1373482801799);
// 5886
o8 = {};
// 5887
f637880758_0.returns.push(o8);
// 5888
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5889
f637880758_541.returns.push(1373482801804);
// 5890
o8 = {};
// 5891
f637880758_0.returns.push(o8);
// 5892
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 5893
f637880758_541.returns.push(1373482801804);
// 5894
o8 = {};
// 5895
o3.plugins = o8;
// undefined
o3 = null;
// 5896
o3 = {};
// 5897
o8["Shockwave Flash"] = o3;
// undefined
o8 = null;
// 5898
o3.description = "Shockwave Flash 11.7 r700";
// 5899
o3.JSBNG__name = "Shockwave Flash";
// undefined
o3 = null;
// 5900
o3 = {};
// 5901
f637880758_0.returns.push(o3);
// 5902
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5903
f637880758_541.returns.push(1373482801805);
// 5904
o3 = {};
// 5905
f637880758_0.returns.push(o3);
// 5906
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5907
f637880758_541.returns.push(1373482801805);
// 5908
o3 = {};
// 5909
f637880758_0.returns.push(o3);
// 5910
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5911
f637880758_541.returns.push(1373482801806);
// 5912
o3 = {};
// 5913
f637880758_0.returns.push(o3);
// 5914
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5915
f637880758_541.returns.push(1373482801806);
// 5916
o3 = {};
// 5917
f637880758_0.returns.push(o3);
// 5918
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5919
f637880758_541.returns.push(1373482801806);
// 5920
o3 = {};
// 5921
f637880758_0.returns.push(o3);
// 5922
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5923
f637880758_541.returns.push(1373482801806);
// 5924
o3 = {};
// 5925
f637880758_0.returns.push(o3);
// 5926
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5927
f637880758_541.returns.push(1373482801807);
// 5928
o3 = {};
// 5929
f637880758_0.returns.push(o3);
// 5930
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5931
f637880758_541.returns.push(1373482801807);
// 5932
o3 = {};
// 5933
f637880758_0.returns.push(o3);
// 5934
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5935
f637880758_541.returns.push(1373482801807);
// 5936
o3 = {};
// 5937
f637880758_0.returns.push(o3);
// 5938
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5939
f637880758_541.returns.push(1373482801807);
// 5940
o3 = {};
// 5941
f637880758_0.returns.push(o3);
// 5942
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5943
f637880758_541.returns.push(1373482801807);
// 5944
o3 = {};
// 5945
f637880758_0.returns.push(o3);
// 5946
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5947
f637880758_541.returns.push(1373482801808);
// 5948
o3 = {};
// 5949
f637880758_0.returns.push(o3);
// 5950
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5951
f637880758_541.returns.push(1373482801808);
// 5952
o3 = {};
// 5953
f637880758_0.returns.push(o3);
// 5954
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5955
f637880758_541.returns.push(1373482801808);
// 5956
o3 = {};
// 5957
f637880758_0.returns.push(o3);
// 5958
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5959
f637880758_541.returns.push(1373482801809);
// 5965
o3 = {};
// 5966
f637880758_550.returns.push(o3);
// 5967
o3["0"] = o10;
// 5968
o3["1"] = void 0;
// undefined
o3 = null;
// 5969
o10.nodeType = 1;
// 5970
o10.getAttribute = f637880758_472;
// 5971
o10.ownerDocument = o0;
// 5975
f637880758_472.returns.push("ltr");
// 5976
o3 = {};
// 5977
f637880758_0.returns.push(o3);
// 5978
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5979
f637880758_541.returns.push(1373482801828);
// 5980
o3 = {};
// 5981
f637880758_0.returns.push(o3);
// 5982
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5983
f637880758_541.returns.push(1373482801828);
// 5984
o3 = {};
// 5985
f637880758_0.returns.push(o3);
// 5986
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5987
f637880758_541.returns.push(1373482801828);
// 5988
o3 = {};
// 5989
f637880758_0.returns.push(o3);
// 5990
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5991
f637880758_541.returns.push(1373482801829);
// 5992
o3 = {};
// 5993
f637880758_0.returns.push(o3);
// 5994
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5995
f637880758_541.returns.push(1373482801831);
// 5996
o3 = {};
// 5997
f637880758_0.returns.push(o3);
// 5998
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 5999
f637880758_541.returns.push(1373482801832);
// 6000
o3 = {};
// 6001
f637880758_0.returns.push(o3);
// 6002
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6003
f637880758_541.returns.push(1373482801832);
// 6004
o3 = {};
// 6005
f637880758_0.returns.push(o3);
// 6006
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6007
f637880758_541.returns.push(1373482801832);
// 6008
o3 = {};
// 6009
f637880758_0.returns.push(o3);
// 6010
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6011
f637880758_541.returns.push(1373482801832);
// 6012
o3 = {};
// 6013
f637880758_0.returns.push(o3);
// 6014
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6015
f637880758_541.returns.push(1373482801832);
// 6016
o3 = {};
// 6017
f637880758_0.returns.push(o3);
// 6018
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6019
f637880758_541.returns.push(1373482801833);
// 6020
o3 = {};
// 6021
f637880758_0.returns.push(o3);
// 6022
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6023
f637880758_541.returns.push(1373482801833);
// 6024
o3 = {};
// 6025
f637880758_0.returns.push(o3);
// 6026
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6027
f637880758_541.returns.push(1373482801833);
// 6028
o3 = {};
// 6029
f637880758_0.returns.push(o3);
// 6030
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6031
f637880758_541.returns.push(1373482801834);
// 6032
o3 = {};
// 6033
f637880758_0.returns.push(o3);
// 6034
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6035
f637880758_541.returns.push(1373482801834);
// 6036
o3 = {};
// 6037
f637880758_0.returns.push(o3);
// 6038
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6039
f637880758_541.returns.push(1373482801834);
// 6040
o3 = {};
// 6041
f637880758_0.returns.push(o3);
// 6042
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6043
f637880758_541.returns.push(1373482801835);
// 6044
o3 = {};
// 6045
f637880758_0.returns.push(o3);
// 6046
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6047
f637880758_541.returns.push(1373482801835);
// 6048
o3 = {};
// 6049
f637880758_0.returns.push(o3);
// 6050
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6051
f637880758_541.returns.push(1373482801835);
// 6052
o3 = {};
// 6053
f637880758_0.returns.push(o3);
// 6054
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6055
f637880758_541.returns.push(1373482801835);
// 6056
o3 = {};
// 6057
f637880758_0.returns.push(o3);
// 6058
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6059
f637880758_541.returns.push(1373482801835);
// 6060
o3 = {};
// 6061
f637880758_0.returns.push(o3);
// 6062
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6063
f637880758_541.returns.push(1373482801836);
// 6064
o3 = {};
// 6065
f637880758_0.returns.push(o3);
// 6066
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6067
f637880758_541.returns.push(1373482801836);
// 6068
o3 = {};
// 6069
f637880758_0.returns.push(o3);
// 6070
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6071
f637880758_541.returns.push(1373482801836);
// 6072
o3 = {};
// 6073
f637880758_0.returns.push(o3);
// 6074
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6075
f637880758_541.returns.push(1373482801836);
// 6076
o3 = {};
// 6077
f637880758_0.returns.push(o3);
// 6078
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6079
f637880758_541.returns.push(1373482801837);
// 6080
o3 = {};
// 6081
f637880758_0.returns.push(o3);
// 6082
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6083
f637880758_541.returns.push(1373482801837);
// 6084
o3 = {};
// 6085
f637880758_0.returns.push(o3);
// 6086
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6087
f637880758_541.returns.push(1373482801837);
// 6088
o3 = {};
// 6089
f637880758_0.returns.push(o3);
// 6090
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6091
f637880758_541.returns.push(1373482801838);
// 6092
o3 = {};
// 6093
f637880758_0.returns.push(o3);
// 6094
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6095
f637880758_541.returns.push(1373482801838);
// 6096
o3 = {};
// 6097
f637880758_0.returns.push(o3);
// 6098
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6099
f637880758_541.returns.push(1373482801839);
// 6100
o3 = {};
// 6101
f637880758_0.returns.push(o3);
// 6102
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6103
f637880758_541.returns.push(1373482801844);
// 6104
o3 = {};
// 6105
f637880758_0.returns.push(o3);
// 6106
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6107
f637880758_541.returns.push(1373482801844);
// 6108
o3 = {};
// 6109
f637880758_0.returns.push(o3);
// 6110
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6111
f637880758_541.returns.push(1373482801849);
// 6112
o3 = {};
// 6113
f637880758_0.returns.push(o3);
// 6114
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6115
f637880758_541.returns.push(1373482801849);
// 6116
o3 = {};
// 6117
f637880758_0.returns.push(o3);
// 6118
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6119
f637880758_541.returns.push(1373482801849);
// 6120
o3 = {};
// 6121
f637880758_0.returns.push(o3);
// 6122
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6123
f637880758_541.returns.push(1373482801850);
// 6124
o3 = {};
// 6125
f637880758_0.returns.push(o3);
// 6126
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6127
f637880758_541.returns.push(1373482801850);
// 6128
o3 = {};
// 6129
f637880758_0.returns.push(o3);
// 6130
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6131
f637880758_541.returns.push(1373482801850);
// 6132
o3 = {};
// 6133
f637880758_0.returns.push(o3);
// 6134
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6135
f637880758_541.returns.push(1373482801850);
// 6136
o3 = {};
// 6137
f637880758_0.returns.push(o3);
// 6138
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6139
f637880758_541.returns.push(1373482801850);
// 6140
o3 = {};
// 6141
f637880758_0.returns.push(o3);
// 6142
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6143
f637880758_541.returns.push(1373482801850);
// 6144
o3 = {};
// 6145
f637880758_0.returns.push(o3);
// 6146
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6147
f637880758_541.returns.push(1373482801850);
// 6148
o3 = {};
// 6149
f637880758_0.returns.push(o3);
// 6150
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6151
f637880758_541.returns.push(1373482801850);
// 6152
o3 = {};
// 6153
f637880758_0.returns.push(o3);
// 6154
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6155
f637880758_541.returns.push(1373482801852);
// 6156
o3 = {};
// 6157
f637880758_0.returns.push(o3);
// 6158
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6159
f637880758_541.returns.push(1373482801852);
// 6160
o3 = {};
// 6161
f637880758_0.returns.push(o3);
// 6162
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6163
f637880758_541.returns.push(1373482801852);
// 6164
o3 = {};
// 6165
f637880758_0.returns.push(o3);
// 6166
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6167
f637880758_541.returns.push(1373482801852);
// 6168
o3 = {};
// 6169
f637880758_0.returns.push(o3);
// 6170
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6171
f637880758_541.returns.push(1373482801852);
// 6172
o3 = {};
// 6173
f637880758_0.returns.push(o3);
// 6174
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6175
f637880758_541.returns.push(1373482801853);
// 6176
o3 = {};
// 6177
f637880758_0.returns.push(o3);
// 6178
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6179
f637880758_541.returns.push(1373482801853);
// 6180
o3 = {};
// 6181
f637880758_0.returns.push(o3);
// 6182
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6183
f637880758_541.returns.push(1373482801853);
// 6184
o3 = {};
// 6185
f637880758_0.returns.push(o3);
// 6186
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6187
f637880758_541.returns.push(1373482801853);
// 6188
o3 = {};
// 6189
f637880758_0.returns.push(o3);
// 6190
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6191
f637880758_541.returns.push(1373482801854);
// 6192
o3 = {};
// 6193
f637880758_0.returns.push(o3);
// 6194
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6195
f637880758_541.returns.push(1373482801854);
// 6196
o3 = {};
// 6197
f637880758_0.returns.push(o3);
// 6198
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6199
f637880758_541.returns.push(1373482801854);
// 6200
o3 = {};
// 6201
f637880758_0.returns.push(o3);
// 6202
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6203
f637880758_541.returns.push(1373482801855);
// 6204
o3 = {};
// 6205
f637880758_0.returns.push(o3);
// 6206
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6207
f637880758_541.returns.push(1373482801858);
// 6208
o3 = {};
// 6209
f637880758_0.returns.push(o3);
// 6210
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6211
f637880758_541.returns.push(1373482801858);
// 6212
o3 = {};
// 6213
f637880758_0.returns.push(o3);
// 6214
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6215
f637880758_541.returns.push(1373482801858);
// 6216
o3 = {};
// 6217
f637880758_0.returns.push(o3);
// 6218
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6219
f637880758_541.returns.push(1373482801858);
// 6220
o3 = {};
// 6221
f637880758_0.returns.push(o3);
// 6222
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6223
f637880758_541.returns.push(1373482801858);
// 6224
o3 = {};
// 6225
f637880758_0.returns.push(o3);
// 6226
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6227
f637880758_541.returns.push(1373482801858);
// 6228
o3 = {};
// 6229
f637880758_0.returns.push(o3);
// 6230
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6231
f637880758_541.returns.push(1373482801860);
// 6232
o3 = {};
// 6233
f637880758_0.returns.push(o3);
// 6234
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6235
f637880758_541.returns.push(1373482801860);
// 6236
o3 = {};
// 6237
f637880758_0.returns.push(o3);
// 6238
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6239
f637880758_541.returns.push(1373482801860);
// 6240
o3 = {};
// 6241
f637880758_0.returns.push(o3);
// 6242
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6243
f637880758_541.returns.push(1373482801862);
// 6244
o3 = {};
// 6245
f637880758_0.returns.push(o3);
// 6246
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6247
f637880758_541.returns.push(1373482801862);
// 6248
o3 = {};
// 6249
f637880758_0.returns.push(o3);
// 6250
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6251
f637880758_541.returns.push(1373482801862);
// 6252
o3 = {};
// 6253
f637880758_0.returns.push(o3);
// 6254
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6255
f637880758_541.returns.push(1373482801862);
// 6256
o3 = {};
// 6257
f637880758_0.returns.push(o3);
// 6258
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6259
f637880758_541.returns.push(1373482801864);
// 6260
o3 = {};
// 6261
f637880758_0.returns.push(o3);
// 6262
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6263
f637880758_541.returns.push(1373482801864);
// 6264
o3 = {};
// 6265
f637880758_0.returns.push(o3);
// 6266
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6267
f637880758_541.returns.push(1373482801864);
// 6268
o3 = {};
// 6269
f637880758_0.returns.push(o3);
// 6270
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6271
f637880758_541.returns.push(1373482801864);
// 6272
o3 = {};
// 6273
f637880758_0.returns.push(o3);
// 6274
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6275
f637880758_541.returns.push(1373482801864);
// 6276
o3 = {};
// 6277
f637880758_0.returns.push(o3);
// 6278
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6279
f637880758_541.returns.push(1373482801864);
// 6280
o3 = {};
// 6281
f637880758_0.returns.push(o3);
// 6282
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6283
f637880758_541.returns.push(1373482801865);
// 6284
o3 = {};
// 6285
f637880758_0.returns.push(o3);
// 6286
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6287
f637880758_541.returns.push(1373482801866);
// 6288
o3 = {};
// 6289
f637880758_0.returns.push(o3);
// 6290
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6291
f637880758_541.returns.push(1373482801866);
// 6292
o3 = {};
// 6293
f637880758_0.returns.push(o3);
// 6294
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6295
f637880758_541.returns.push(1373482801866);
// 6296
o3 = {};
// 6297
f637880758_0.returns.push(o3);
// 6298
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6299
f637880758_541.returns.push(1373482801866);
// 6300
o3 = {};
// 6301
f637880758_0.returns.push(o3);
// 6302
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6303
f637880758_541.returns.push(1373482801867);
// 6305
o3 = {};
// 6306
f637880758_0.returns.push(o3);
// 6307
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6308
f637880758_541.returns.push(1373482801867);
// 6309
o3 = {};
// 6310
f637880758_0.returns.push(o3);
// 6311
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6312
f637880758_541.returns.push(1373482801872);
// 6313
o3 = {};
// 6314
f637880758_0.returns.push(o3);
// 6315
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6316
f637880758_541.returns.push(1373482801872);
// 6317
o3 = {};
// 6318
f637880758_0.returns.push(o3);
// 6319
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6320
f637880758_541.returns.push(1373482801877);
// 6321
o3 = {};
// 6322
f637880758_0.returns.push(o3);
// 6323
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6324
f637880758_541.returns.push(1373482801877);
// 6325
o3 = {};
// 6326
f637880758_0.returns.push(o3);
// 6327
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6328
f637880758_541.returns.push(1373482801878);
// 6329
o3 = {};
// 6330
f637880758_0.returns.push(o3);
// 6331
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6332
f637880758_541.returns.push(1373482801879);
// 6333
o3 = {};
// 6334
f637880758_0.returns.push(o3);
// 6335
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6336
f637880758_541.returns.push(1373482801879);
// 6337
o3 = {};
// 6338
f637880758_0.returns.push(o3);
// 6339
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6340
f637880758_541.returns.push(1373482801879);
// 6341
o3 = {};
// 6342
f637880758_0.returns.push(o3);
// 6343
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6344
f637880758_541.returns.push(1373482801880);
// 6345
o3 = {};
// 6346
f637880758_0.returns.push(o3);
// 6347
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6348
f637880758_541.returns.push(1373482801880);
// 6349
o3 = {};
// 6350
f637880758_0.returns.push(o3);
// 6351
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6352
f637880758_541.returns.push(1373482801880);
// 6353
o3 = {};
// 6354
f637880758_0.returns.push(o3);
// 6355
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6356
f637880758_541.returns.push(1373482801880);
// 6357
o3 = {};
// 6358
f637880758_0.returns.push(o3);
// 6359
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6360
f637880758_541.returns.push(1373482801881);
// 6361
o3 = {};
// 6362
f637880758_0.returns.push(o3);
// 6363
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6364
f637880758_541.returns.push(1373482801881);
// 6365
o3 = {};
// 6366
f637880758_0.returns.push(o3);
// 6367
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6368
f637880758_541.returns.push(1373482801881);
// 6369
o3 = {};
// 6370
f637880758_0.returns.push(o3);
// 6371
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6372
f637880758_541.returns.push(1373482801881);
// 6373
o3 = {};
// 6374
f637880758_0.returns.push(o3);
// 6375
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6376
f637880758_541.returns.push(1373482801882);
// 6377
o3 = {};
// 6378
f637880758_0.returns.push(o3);
// 6379
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6380
f637880758_541.returns.push(1373482801886);
// 6381
o3 = {};
// 6382
f637880758_0.returns.push(o3);
// 6383
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6384
f637880758_541.returns.push(1373482801886);
// 6385
o3 = {};
// 6386
f637880758_0.returns.push(o3);
// 6387
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6388
f637880758_541.returns.push(1373482801886);
// 6389
o3 = {};
// 6390
f637880758_0.returns.push(o3);
// 6391
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6392
f637880758_541.returns.push(1373482801889);
// 6393
o3 = {};
// 6394
f637880758_0.returns.push(o3);
// 6395
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6396
f637880758_541.returns.push(1373482801889);
// 6397
o3 = {};
// 6398
f637880758_0.returns.push(o3);
// 6399
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6400
f637880758_541.returns.push(1373482801889);
// 6401
o3 = {};
// 6402
f637880758_0.returns.push(o3);
// 6403
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6404
f637880758_541.returns.push(1373482801889);
// 6405
o3 = {};
// 6406
f637880758_0.returns.push(o3);
// 6407
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6408
f637880758_541.returns.push(1373482801890);
// 6409
o3 = {};
// 6410
f637880758_0.returns.push(o3);
// 6411
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6412
f637880758_541.returns.push(1373482801890);
// 6413
o3 = {};
// 6414
f637880758_0.returns.push(o3);
// 6415
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6416
f637880758_541.returns.push(1373482801890);
// 6417
o3 = {};
// 6418
f637880758_0.returns.push(o3);
// 6419
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6420
f637880758_541.returns.push(1373482801894);
// 6421
o3 = {};
// 6422
f637880758_0.returns.push(o3);
// 6423
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6424
f637880758_541.returns.push(1373482801898);
// 6425
o3 = {};
// 6426
f637880758_0.returns.push(o3);
// 6427
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6428
f637880758_541.returns.push(1373482801898);
// 6429
o3 = {};
// 6430
f637880758_0.returns.push(o3);
// 6431
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6432
f637880758_541.returns.push(1373482801899);
// 6433
o3 = {};
// 6434
f637880758_0.returns.push(o3);
// 6435
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6436
f637880758_541.returns.push(1373482801899);
// 6437
o3 = {};
// 6438
f637880758_0.returns.push(o3);
// 6439
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6440
f637880758_541.returns.push(1373482801899);
// 6441
o3 = {};
// 6442
f637880758_0.returns.push(o3);
// 6443
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6444
f637880758_541.returns.push(1373482801901);
// 6445
o3 = {};
// 6446
f637880758_0.returns.push(o3);
// 6447
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6448
f637880758_541.returns.push(1373482801902);
// 6449
o3 = {};
// 6450
f637880758_0.returns.push(o3);
// 6451
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6452
f637880758_541.returns.push(1373482801902);
// 6453
o3 = {};
// 6454
f637880758_0.returns.push(o3);
// 6455
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6456
f637880758_541.returns.push(1373482801903);
// 6457
o3 = {};
// 6458
f637880758_0.returns.push(o3);
// 6459
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6460
f637880758_541.returns.push(1373482801903);
// 6461
o3 = {};
// 6462
f637880758_0.returns.push(o3);
// 6463
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6464
f637880758_541.returns.push(1373482801903);
// 6465
o3 = {};
// 6466
f637880758_0.returns.push(o3);
// 6467
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6468
f637880758_541.returns.push(1373482801903);
// 6469
o3 = {};
// 6470
f637880758_0.returns.push(o3);
// 6471
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6472
f637880758_541.returns.push(1373482801903);
// 6473
o3 = {};
// 6474
f637880758_0.returns.push(o3);
// 6475
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6476
f637880758_541.returns.push(1373482801903);
// 6477
o3 = {};
// 6478
f637880758_0.returns.push(o3);
// 6479
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6480
f637880758_541.returns.push(1373482801904);
// 6481
o3 = {};
// 6482
f637880758_0.returns.push(o3);
// 6483
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6484
f637880758_541.returns.push(1373482801904);
// 6485
o3 = {};
// 6486
f637880758_0.returns.push(o3);
// 6487
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6488
f637880758_541.returns.push(1373482801905);
// 6489
o3 = {};
// 6490
f637880758_0.returns.push(o3);
// 6491
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6492
f637880758_541.returns.push(1373482801905);
// 6493
o3 = {};
// 6494
f637880758_0.returns.push(o3);
// 6495
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6496
f637880758_541.returns.push(1373482801905);
// 6497
o3 = {};
// 6498
f637880758_0.returns.push(o3);
// 6499
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6500
f637880758_541.returns.push(1373482801906);
// 6501
o3 = {};
// 6502
f637880758_0.returns.push(o3);
// 6503
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6504
f637880758_541.returns.push(1373482801906);
// 6505
o3 = {};
// 6506
f637880758_0.returns.push(o3);
// 6507
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6508
f637880758_541.returns.push(1373482801906);
// 6509
o3 = {};
// 6510
f637880758_0.returns.push(o3);
// 6511
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6512
f637880758_541.returns.push(1373482801906);
// 6513
o3 = {};
// 6514
f637880758_0.returns.push(o3);
// 6515
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6516
f637880758_541.returns.push(1373482801907);
// 6517
o3 = {};
// 6518
f637880758_0.returns.push(o3);
// 6519
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6520
f637880758_541.returns.push(1373482801907);
// 6521
o3 = {};
// 6522
f637880758_0.returns.push(o3);
// 6523
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6524
f637880758_541.returns.push(1373482801910);
// 6525
o3 = {};
// 6526
f637880758_0.returns.push(o3);
// 6527
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6528
f637880758_541.returns.push(1373482801911);
// 6529
o3 = {};
// 6530
f637880758_0.returns.push(o3);
// 6531
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6532
f637880758_541.returns.push(1373482801911);
// 6533
o3 = {};
// 6534
f637880758_0.returns.push(o3);
// 6535
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6536
f637880758_541.returns.push(1373482801911);
// 6537
o3 = {};
// 6538
f637880758_0.returns.push(o3);
// 6539
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6540
f637880758_541.returns.push(1373482801912);
// 6541
o3 = {};
// 6542
f637880758_0.returns.push(o3);
// 6543
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6544
f637880758_541.returns.push(1373482801912);
// 6545
o3 = {};
// 6546
f637880758_0.returns.push(o3);
// 6547
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6548
f637880758_541.returns.push(1373482801912);
// 6549
o3 = {};
// 6550
f637880758_0.returns.push(o3);
// 6551
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6552
f637880758_541.returns.push(1373482801913);
// 6553
o3 = {};
// 6554
f637880758_0.returns.push(o3);
// 6555
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6556
f637880758_541.returns.push(1373482801913);
// 6557
o3 = {};
// 6558
f637880758_0.returns.push(o3);
// 6559
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6560
f637880758_541.returns.push(1373482801913);
// 6561
o3 = {};
// 6562
f637880758_0.returns.push(o3);
// 6563
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6564
f637880758_541.returns.push(1373482801913);
// 6565
o3 = {};
// 6566
f637880758_0.returns.push(o3);
// 6567
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6568
f637880758_541.returns.push(1373482801913);
// 6569
o3 = {};
// 6570
f637880758_0.returns.push(o3);
// 6571
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6572
f637880758_541.returns.push(1373482801913);
// 6573
o3 = {};
// 6574
f637880758_0.returns.push(o3);
// 6575
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6576
f637880758_541.returns.push(1373482801913);
// 6577
o3 = {};
// 6578
f637880758_0.returns.push(o3);
// 6579
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6580
f637880758_541.returns.push(1373482801915);
// 6581
o3 = {};
// 6582
f637880758_0.returns.push(o3);
// 6583
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6584
f637880758_541.returns.push(1373482801915);
// 6585
o3 = {};
// 6586
f637880758_0.returns.push(o3);
// 6587
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6588
f637880758_541.returns.push(1373482801915);
// 6589
o3 = {};
// 6590
f637880758_0.returns.push(o3);
// 6591
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6592
f637880758_541.returns.push(1373482801915);
// 6593
o3 = {};
// 6594
f637880758_0.returns.push(o3);
// 6595
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6596
f637880758_541.returns.push(1373482801915);
// 6597
o3 = {};
// 6598
f637880758_0.returns.push(o3);
// 6599
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6600
f637880758_541.returns.push(1373482801915);
// 6601
o3 = {};
// 6602
f637880758_0.returns.push(o3);
// 6603
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6604
f637880758_541.returns.push(1373482801916);
// 6605
o3 = {};
// 6606
f637880758_0.returns.push(o3);
// 6607
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6608
f637880758_541.returns.push(1373482801916);
// 6609
o3 = {};
// 6610
f637880758_0.returns.push(o3);
// 6611
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6612
f637880758_541.returns.push(1373482801916);
// 6613
o3 = {};
// 6614
f637880758_0.returns.push(o3);
// 6615
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6616
f637880758_541.returns.push(1373482801916);
// 6617
o3 = {};
// 6618
f637880758_0.returns.push(o3);
// 6619
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6620
f637880758_541.returns.push(1373482801917);
// 6621
o3 = {};
// 6622
f637880758_0.returns.push(o3);
// 6623
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6624
f637880758_541.returns.push(1373482801917);
// 6625
o3 = {};
// 6626
f637880758_0.returns.push(o3);
// 6627
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6628
f637880758_541.returns.push(1373482801917);
// 6629
o3 = {};
// 6630
f637880758_0.returns.push(o3);
// 6631
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6632
f637880758_541.returns.push(1373482801920);
// 6633
o3 = {};
// 6634
f637880758_0.returns.push(o3);
// 6635
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6636
f637880758_541.returns.push(1373482801920);
// 6637
o3 = {};
// 6638
f637880758_0.returns.push(o3);
// 6639
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6640
f637880758_541.returns.push(1373482801920);
// 6641
o3 = {};
// 6642
f637880758_0.returns.push(o3);
// 6643
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6644
f637880758_541.returns.push(1373482801921);
// 6645
o3 = {};
// 6646
f637880758_0.returns.push(o3);
// 6647
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6648
f637880758_541.returns.push(1373482801921);
// 6649
o3 = {};
// 6650
f637880758_0.returns.push(o3);
// 6651
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6652
f637880758_541.returns.push(1373482801921);
// 6653
o3 = {};
// 6654
f637880758_0.returns.push(o3);
// 6655
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6656
f637880758_541.returns.push(1373482801922);
// 6657
o3 = {};
// 6658
f637880758_0.returns.push(o3);
// 6659
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6660
f637880758_541.returns.push(1373482801922);
// 6661
o3 = {};
// 6662
f637880758_0.returns.push(o3);
// 6663
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6664
f637880758_541.returns.push(1373482801922);
// 6665
o3 = {};
// 6666
f637880758_0.returns.push(o3);
// 6667
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6668
f637880758_541.returns.push(1373482801922);
// 6669
o3 = {};
// 6670
f637880758_0.returns.push(o3);
// 6671
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6672
f637880758_541.returns.push(1373482801923);
// 6673
o3 = {};
// 6674
f637880758_0.returns.push(o3);
// 6675
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6676
f637880758_541.returns.push(1373482801923);
// 6677
o3 = {};
// 6678
f637880758_0.returns.push(o3);
// 6679
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6680
f637880758_541.returns.push(1373482801923);
// 6681
o3 = {};
// 6682
f637880758_0.returns.push(o3);
// 6683
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6684
f637880758_541.returns.push(1373482801923);
// 6685
o3 = {};
// 6686
f637880758_0.returns.push(o3);
// 6687
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6688
f637880758_541.returns.push(1373482801925);
// 6689
o3 = {};
// 6690
f637880758_0.returns.push(o3);
// 6691
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6692
f637880758_541.returns.push(1373482801925);
// 6693
o3 = {};
// 6694
f637880758_0.returns.push(o3);
// 6695
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6696
f637880758_541.returns.push(1373482801925);
// 6697
o3 = {};
// 6698
f637880758_0.returns.push(o3);
// 6699
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6700
f637880758_541.returns.push(1373482801925);
// 6701
o3 = {};
// 6702
f637880758_0.returns.push(o3);
// 6703
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6704
f637880758_541.returns.push(1373482801925);
// 6705
o3 = {};
// 6706
f637880758_0.returns.push(o3);
// 6707
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6708
f637880758_541.returns.push(1373482801925);
// 6709
o3 = {};
// 6710
f637880758_0.returns.push(o3);
// 6711
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6712
f637880758_541.returns.push(1373482801925);
// 6713
o3 = {};
// 6714
f637880758_0.returns.push(o3);
// 6715
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6716
f637880758_541.returns.push(1373482801925);
// 6717
o3 = {};
// 6718
f637880758_0.returns.push(o3);
// 6719
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6720
f637880758_541.returns.push(1373482801926);
// 6721
o3 = {};
// 6722
f637880758_0.returns.push(o3);
// 6723
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6724
f637880758_541.returns.push(1373482801926);
// 6725
o3 = {};
// 6726
f637880758_0.returns.push(o3);
// 6727
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6728
f637880758_541.returns.push(1373482801926);
// 6729
o3 = {};
// 6730
f637880758_0.returns.push(o3);
// 6731
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6732
f637880758_541.returns.push(1373482801926);
// 6733
o3 = {};
// 6734
f637880758_0.returns.push(o3);
// 6735
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6736
f637880758_541.returns.push(1373482801930);
// 6737
o3 = {};
// 6738
f637880758_0.returns.push(o3);
// 6739
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6740
f637880758_541.returns.push(1373482801930);
// 6741
o3 = {};
// 6742
f637880758_0.returns.push(o3);
// 6743
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6744
f637880758_541.returns.push(1373482801930);
// 6745
o3 = {};
// 6746
f637880758_0.returns.push(o3);
// 6747
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6748
f637880758_541.returns.push(1373482801930);
// 6749
o3 = {};
// 6750
f637880758_0.returns.push(o3);
// 6751
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6752
f637880758_541.returns.push(1373482801930);
// 6753
o3 = {};
// 6754
f637880758_0.returns.push(o3);
// 6755
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6756
f637880758_541.returns.push(1373482801931);
// 6757
o3 = {};
// 6758
f637880758_0.returns.push(o3);
// 6759
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6760
f637880758_541.returns.push(1373482801931);
// 6761
o3 = {};
// 6762
f637880758_0.returns.push(o3);
// 6763
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6764
f637880758_541.returns.push(1373482801933);
// 6765
o3 = {};
// 6766
f637880758_0.returns.push(o3);
// 6767
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6768
f637880758_541.returns.push(1373482801933);
// 6769
o3 = {};
// 6770
f637880758_0.returns.push(o3);
// 6771
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6772
f637880758_541.returns.push(1373482801934);
// 6773
o3 = {};
// 6774
f637880758_0.returns.push(o3);
// 6775
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6776
f637880758_541.returns.push(1373482801934);
// 6777
o3 = {};
// 6778
f637880758_0.returns.push(o3);
// 6779
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6780
f637880758_541.returns.push(1373482801934);
// 6781
o3 = {};
// 6782
f637880758_0.returns.push(o3);
// 6783
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6784
f637880758_541.returns.push(1373482801935);
// 6785
o3 = {};
// 6786
f637880758_0.returns.push(o3);
// 6787
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6788
f637880758_541.returns.push(1373482801935);
// 6789
o3 = {};
// 6790
f637880758_0.returns.push(o3);
// 6791
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6792
f637880758_541.returns.push(1373482801935);
// 6793
o3 = {};
// 6794
f637880758_0.returns.push(o3);
// 6795
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6796
f637880758_541.returns.push(1373482801935);
// 6797
o3 = {};
// 6798
f637880758_0.returns.push(o3);
// 6799
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6800
f637880758_541.returns.push(1373482801937);
// 6801
o3 = {};
// 6802
f637880758_0.returns.push(o3);
// 6803
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6804
f637880758_541.returns.push(1373482801937);
// 6805
o3 = {};
// 6806
f637880758_0.returns.push(o3);
// 6807
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6808
f637880758_541.returns.push(1373482801937);
// 6809
o3 = {};
// 6810
f637880758_0.returns.push(o3);
// 6811
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6812
f637880758_541.returns.push(1373482801938);
// 6813
o3 = {};
// 6814
f637880758_0.returns.push(o3);
// 6815
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6816
f637880758_541.returns.push(1373482801938);
// 6817
o3 = {};
// 6818
f637880758_0.returns.push(o3);
// 6819
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6820
f637880758_541.returns.push(1373482801938);
// 6821
o3 = {};
// 6822
f637880758_0.returns.push(o3);
// 6823
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6824
f637880758_541.returns.push(1373482801938);
// 6825
o3 = {};
// 6826
f637880758_0.returns.push(o3);
// 6827
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6828
f637880758_541.returns.push(1373482801938);
// 6829
o3 = {};
// 6830
f637880758_0.returns.push(o3);
// 6831
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6832
f637880758_541.returns.push(1373482801939);
// 6833
o3 = {};
// 6834
f637880758_0.returns.push(o3);
// 6835
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6836
f637880758_541.returns.push(1373482801940);
// 6837
o3 = {};
// 6838
f637880758_0.returns.push(o3);
// 6839
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6840
f637880758_541.returns.push(1373482801940);
// 6841
o3 = {};
// 6842
f637880758_0.returns.push(o3);
// 6843
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6844
f637880758_541.returns.push(1373482801945);
// 6845
o3 = {};
// 6846
f637880758_0.returns.push(o3);
// 6847
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6848
f637880758_541.returns.push(1373482801945);
// 6849
o3 = {};
// 6850
f637880758_0.returns.push(o3);
// 6851
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6852
f637880758_541.returns.push(1373482801945);
// 6853
o3 = {};
// 6854
f637880758_0.returns.push(o3);
// 6855
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6856
f637880758_541.returns.push(1373482801946);
// 6857
o3 = {};
// 6858
f637880758_0.returns.push(o3);
// 6859
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6860
f637880758_541.returns.push(1373482801946);
// 6861
o3 = {};
// 6862
f637880758_0.returns.push(o3);
// 6863
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6864
f637880758_541.returns.push(1373482801946);
// 6865
o3 = {};
// 6866
f637880758_0.returns.push(o3);
// 6867
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6868
f637880758_541.returns.push(1373482801946);
// 6869
o3 = {};
// 6870
f637880758_0.returns.push(o3);
// 6871
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6872
f637880758_541.returns.push(1373482801947);
// 6873
o3 = {};
// 6874
f637880758_0.returns.push(o3);
// 6875
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6876
f637880758_541.returns.push(1373482801947);
// 6877
o3 = {};
// 6878
f637880758_0.returns.push(o3);
// 6879
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6880
f637880758_541.returns.push(1373482801947);
// 6881
o3 = {};
// 6882
f637880758_0.returns.push(o3);
// 6883
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6884
f637880758_541.returns.push(1373482801948);
// 6885
o3 = {};
// 6886
f637880758_0.returns.push(o3);
// 6887
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6888
f637880758_541.returns.push(1373482801948);
// 6889
o3 = {};
// 6890
f637880758_0.returns.push(o3);
// 6891
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6892
f637880758_541.returns.push(1373482801948);
// 6893
o3 = {};
// 6894
f637880758_0.returns.push(o3);
// 6895
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6896
f637880758_541.returns.push(1373482801948);
// 6897
o3 = {};
// 6898
f637880758_0.returns.push(o3);
// 6899
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6900
f637880758_541.returns.push(1373482801948);
// 6901
o3 = {};
// 6902
f637880758_0.returns.push(o3);
// 6903
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6904
f637880758_541.returns.push(1373482801949);
// 6905
o3 = {};
// 6906
f637880758_0.returns.push(o3);
// 6907
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6908
f637880758_541.returns.push(1373482801949);
// 6909
o3 = {};
// 6910
f637880758_0.returns.push(o3);
// 6911
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6912
f637880758_541.returns.push(1373482801951);
// 6913
o3 = {};
// 6914
f637880758_0.returns.push(o3);
// 6915
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6916
f637880758_541.returns.push(1373482801952);
// 6917
o3 = {};
// 6918
f637880758_0.returns.push(o3);
// 6919
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6920
f637880758_541.returns.push(1373482801952);
// 6921
o3 = {};
// 6922
f637880758_0.returns.push(o3);
// 6923
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6924
f637880758_541.returns.push(1373482801952);
// 6925
o3 = {};
// 6926
f637880758_0.returns.push(o3);
// 6927
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6928
f637880758_541.returns.push(1373482801952);
// 6929
o3 = {};
// 6930
f637880758_0.returns.push(o3);
// 6931
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6932
f637880758_541.returns.push(1373482801952);
// 6933
o3 = {};
// 6934
f637880758_0.returns.push(o3);
// 6935
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6936
f637880758_541.returns.push(1373482801954);
// 6937
o3 = {};
// 6938
f637880758_0.returns.push(o3);
// 6939
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6940
f637880758_541.returns.push(1373482801954);
// 6941
o3 = {};
// 6942
f637880758_0.returns.push(o3);
// 6943
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6944
f637880758_541.returns.push(1373482801954);
// 6945
o3 = {};
// 6946
f637880758_0.returns.push(o3);
// 6947
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6948
f637880758_541.returns.push(1373482801958);
// 6949
o3 = {};
// 6950
f637880758_0.returns.push(o3);
// 6951
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6952
f637880758_541.returns.push(1373482801958);
// 6953
o3 = {};
// 6954
f637880758_0.returns.push(o3);
// 6955
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6956
f637880758_541.returns.push(1373482801959);
// 6957
o3 = {};
// 6958
f637880758_0.returns.push(o3);
// 6959
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6960
f637880758_541.returns.push(1373482801959);
// 6961
o3 = {};
// 6962
f637880758_0.returns.push(o3);
// 6963
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6964
f637880758_541.returns.push(1373482801959);
// 6965
o3 = {};
// 6966
f637880758_0.returns.push(o3);
// 6967
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6968
f637880758_541.returns.push(1373482801959);
// 6969
o3 = {};
// 6970
f637880758_0.returns.push(o3);
// 6971
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6972
f637880758_541.returns.push(1373482801959);
// 6973
o3 = {};
// 6974
f637880758_0.returns.push(o3);
// 6975
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6976
f637880758_541.returns.push(1373482801962);
// 6977
o3 = {};
// 6978
f637880758_0.returns.push(o3);
// 6979
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6980
f637880758_541.returns.push(1373482801962);
// 6981
o3 = {};
// 6982
f637880758_0.returns.push(o3);
// 6983
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6984
f637880758_541.returns.push(1373482801963);
// 6985
o3 = {};
// 6986
f637880758_0.returns.push(o3);
// 6987
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6988
f637880758_541.returns.push(1373482801964);
// 6989
o3 = {};
// 6990
f637880758_0.returns.push(o3);
// 6991
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6992
f637880758_541.returns.push(1373482801964);
// 6993
o3 = {};
// 6994
f637880758_0.returns.push(o3);
// 6995
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 6996
f637880758_541.returns.push(1373482801964);
// 6997
o3 = {};
// 6998
f637880758_0.returns.push(o3);
// 6999
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7000
f637880758_541.returns.push(1373482801964);
// 7001
o3 = {};
// 7002
f637880758_0.returns.push(o3);
// 7003
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7004
f637880758_541.returns.push(1373482801965);
// 7005
o3 = {};
// 7006
f637880758_0.returns.push(o3);
// 7007
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7008
f637880758_541.returns.push(1373482801965);
// 7009
o3 = {};
// 7010
f637880758_0.returns.push(o3);
// 7011
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7012
f637880758_541.returns.push(1373482801965);
// 7013
o3 = {};
// 7014
f637880758_0.returns.push(o3);
// 7015
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7016
f637880758_541.returns.push(1373482801965);
// 7017
o3 = {};
// 7018
f637880758_0.returns.push(o3);
// 7019
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7020
f637880758_541.returns.push(1373482801966);
// 7021
o3 = {};
// 7022
f637880758_0.returns.push(o3);
// 7023
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7024
f637880758_541.returns.push(1373482801970);
// 7025
o3 = {};
// 7026
f637880758_0.returns.push(o3);
// 7027
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7028
f637880758_541.returns.push(1373482801970);
// 7029
o3 = {};
// 7030
f637880758_0.returns.push(o3);
// 7031
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7032
f637880758_541.returns.push(1373482801970);
// 7033
o3 = {};
// 7034
f637880758_0.returns.push(o3);
// 7035
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7036
f637880758_541.returns.push(1373482801971);
// 7037
o3 = {};
// 7038
f637880758_0.returns.push(o3);
// 7039
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7040
f637880758_541.returns.push(1373482801971);
// 7041
o3 = {};
// 7042
f637880758_0.returns.push(o3);
// 7043
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7044
f637880758_541.returns.push(1373482801971);
// 7045
o3 = {};
// 7046
f637880758_0.returns.push(o3);
// 7047
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7048
f637880758_541.returns.push(1373482801971);
// 7049
o3 = {};
// 7050
f637880758_0.returns.push(o3);
// 7051
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7052
f637880758_541.returns.push(1373482801972);
// 7053
o3 = {};
// 7054
f637880758_0.returns.push(o3);
// 7055
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7056
f637880758_541.returns.push(1373482801976);
// 7057
o3 = {};
// 7058
f637880758_0.returns.push(o3);
// 7059
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7060
f637880758_541.returns.push(1373482801976);
// 7061
o3 = {};
// 7062
f637880758_0.returns.push(o3);
// 7063
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7064
f637880758_541.returns.push(1373482801976);
// 7065
o3 = {};
// 7066
f637880758_0.returns.push(o3);
// 7067
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7068
f637880758_541.returns.push(1373482801976);
// 7069
o3 = {};
// 7070
f637880758_0.returns.push(o3);
// 7071
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7072
f637880758_541.returns.push(1373482801976);
// 7073
o3 = {};
// 7074
f637880758_0.returns.push(o3);
// 7075
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7076
f637880758_541.returns.push(1373482801977);
// 7077
o3 = {};
// 7078
f637880758_0.returns.push(o3);
// 7079
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7080
f637880758_541.returns.push(1373482801977);
// 7081
o3 = {};
// 7082
f637880758_0.returns.push(o3);
// 7083
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7084
f637880758_541.returns.push(1373482801977);
// 7085
o3 = {};
// 7086
f637880758_0.returns.push(o3);
// 7087
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7088
f637880758_541.returns.push(1373482801977);
// 7089
o3 = {};
// 7090
f637880758_0.returns.push(o3);
// 7091
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7092
f637880758_541.returns.push(1373482801977);
// 7093
o3 = {};
// 7094
f637880758_0.returns.push(o3);
// 7095
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7096
f637880758_541.returns.push(1373482801978);
// 7097
o3 = {};
// 7098
f637880758_0.returns.push(o3);
// 7099
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7100
f637880758_541.returns.push(1373482801978);
// 7101
o3 = {};
// 7102
f637880758_0.returns.push(o3);
// 7103
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7104
f637880758_541.returns.push(1373482801978);
// 7105
o3 = {};
// 7106
f637880758_0.returns.push(o3);
// 7107
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7108
f637880758_541.returns.push(1373482801978);
// 7109
o3 = {};
// 7110
f637880758_0.returns.push(o3);
// 7111
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7112
f637880758_541.returns.push(1373482801978);
// 7113
o3 = {};
// 7114
f637880758_0.returns.push(o3);
// 7115
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7116
f637880758_541.returns.push(1373482801978);
// 7117
o3 = {};
// 7118
f637880758_0.returns.push(o3);
// 7119
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7120
f637880758_541.returns.push(1373482801978);
// 7121
o3 = {};
// 7122
f637880758_0.returns.push(o3);
// 7123
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7124
f637880758_541.returns.push(1373482801978);
// 7125
o3 = {};
// 7126
f637880758_0.returns.push(o3);
// 7127
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7128
f637880758_541.returns.push(1373482801979);
// 7129
o3 = {};
// 7130
f637880758_0.returns.push(o3);
// 7131
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7132
f637880758_541.returns.push(1373482801979);
// 7133
o3 = {};
// 7134
f637880758_0.returns.push(o3);
// 7135
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7136
f637880758_541.returns.push(1373482801979);
// 7137
o3 = {};
// 7138
f637880758_0.returns.push(o3);
// 7139
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7140
f637880758_541.returns.push(1373482801979);
// 7141
o3 = {};
// 7142
f637880758_0.returns.push(o3);
// 7143
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7144
f637880758_541.returns.push(1373482801983);
// 7145
o3 = {};
// 7146
f637880758_0.returns.push(o3);
// 7147
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7148
f637880758_541.returns.push(1373482801983);
// 7149
o3 = {};
// 7150
f637880758_0.returns.push(o3);
// 7151
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7152
f637880758_541.returns.push(1373482801983);
// 7153
o3 = {};
// 7154
f637880758_0.returns.push(o3);
// 7155
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7156
f637880758_541.returns.push(1373482801983);
// 7157
o3 = {};
// 7158
f637880758_0.returns.push(o3);
// 7159
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7160
f637880758_541.returns.push(1373482801986);
// 7162
f637880758_522.returns.push(null);
// 7163
o3 = {};
// 7164
f637880758_0.returns.push(o3);
// 7165
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7166
f637880758_541.returns.push(1373482801987);
// 7167
o3 = {};
// 7168
f637880758_0.returns.push(o3);
// 7169
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7170
f637880758_541.returns.push(1373482801987);
// 7171
o3 = {};
// 7172
f637880758_0.returns.push(o3);
// 7173
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7174
f637880758_541.returns.push(1373482801987);
// 7175
o3 = {};
// 7176
f637880758_0.returns.push(o3);
// 7177
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7178
f637880758_541.returns.push(1373482801988);
// 7179
o3 = {};
// 7180
f637880758_0.returns.push(o3);
// 7181
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7182
f637880758_541.returns.push(1373482801988);
// 7183
o3 = {};
// 7184
f637880758_0.returns.push(o3);
// 7185
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7186
f637880758_541.returns.push(1373482801988);
// 7187
o3 = {};
// 7188
f637880758_0.returns.push(o3);
// 7189
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7190
f637880758_541.returns.push(1373482801988);
// 7191
o3 = {};
// 7192
f637880758_0.returns.push(o3);
// 7193
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7194
f637880758_541.returns.push(1373482801988);
// 7195
o3 = {};
// 7196
f637880758_0.returns.push(o3);
// 7197
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7198
f637880758_541.returns.push(1373482801988);
// 7199
o3 = {};
// 7200
f637880758_0.returns.push(o3);
// 7201
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7202
f637880758_541.returns.push(1373482801988);
// 7203
o3 = {};
// 7204
f637880758_0.returns.push(o3);
// 7205
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7206
f637880758_541.returns.push(1373482801990);
// 7207
o3 = {};
// 7208
f637880758_0.returns.push(o3);
// 7209
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7210
f637880758_541.returns.push(1373482801990);
// 7211
o3 = {};
// 7212
f637880758_0.returns.push(o3);
// 7213
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7214
f637880758_541.returns.push(1373482801990);
// 7215
o3 = {};
// 7216
f637880758_0.returns.push(o3);
// 7217
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7218
f637880758_541.returns.push(1373482801990);
// 7219
o3 = {};
// 7220
f637880758_0.returns.push(o3);
// 7221
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7222
f637880758_541.returns.push(1373482801991);
// 7223
o3 = {};
// 7224
f637880758_0.returns.push(o3);
// 7225
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7226
f637880758_541.returns.push(1373482801991);
// 7227
o3 = {};
// 7228
f637880758_0.returns.push(o3);
// 7229
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7230
f637880758_541.returns.push(1373482801991);
// 7231
o3 = {};
// 7232
f637880758_0.returns.push(o3);
// 7233
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7234
f637880758_541.returns.push(1373482801991);
// 7235
o3 = {};
// 7236
f637880758_0.returns.push(o3);
// 7237
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7238
f637880758_541.returns.push(1373482801991);
// 7239
o3 = {};
// 7240
f637880758_0.returns.push(o3);
// 7241
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7242
f637880758_541.returns.push(1373482801992);
// 7243
o3 = {};
// 7244
f637880758_0.returns.push(o3);
// 7245
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7246
f637880758_541.returns.push(1373482801992);
// 7247
o3 = {};
// 7248
f637880758_0.returns.push(o3);
// 7249
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7250
f637880758_541.returns.push(1373482801992);
// 7251
o3 = {};
// 7252
f637880758_0.returns.push(o3);
// 7253
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7254
f637880758_541.returns.push(1373482801993);
// 7255
o3 = {};
// 7256
f637880758_0.returns.push(o3);
// 7257
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7258
f637880758_541.returns.push(1373482801993);
// 7259
o3 = {};
// 7260
f637880758_0.returns.push(o3);
// 7261
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7262
f637880758_541.returns.push(1373482801993);
// 7263
o3 = {};
// 7264
f637880758_0.returns.push(o3);
// 7265
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7266
f637880758_541.returns.push(1373482801997);
// 7267
o3 = {};
// 7268
f637880758_0.returns.push(o3);
// 7269
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7270
f637880758_541.returns.push(1373482801997);
// 7271
o3 = {};
// 7272
f637880758_0.returns.push(o3);
// 7273
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7274
f637880758_541.returns.push(1373482801998);
// 7275
o3 = {};
// 7276
f637880758_0.returns.push(o3);
// 7277
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7278
f637880758_541.returns.push(1373482801998);
// 7279
o3 = {};
// 7280
f637880758_0.returns.push(o3);
// 7281
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7282
f637880758_541.returns.push(1373482801998);
// 7283
o3 = {};
// 7284
f637880758_0.returns.push(o3);
// 7285
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7286
f637880758_541.returns.push(1373482801999);
// 7287
o3 = {};
// 7288
f637880758_0.returns.push(o3);
// 7289
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7290
f637880758_541.returns.push(1373482801999);
// 7291
o3 = {};
// 7292
f637880758_0.returns.push(o3);
// 7293
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7294
f637880758_541.returns.push(1373482801999);
// 7295
o3 = {};
// 7296
f637880758_0.returns.push(o3);
// 7297
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7298
f637880758_541.returns.push(1373482801999);
// 7299
o3 = {};
// 7300
f637880758_0.returns.push(o3);
// 7301
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7302
f637880758_541.returns.push(1373482801999);
// 7303
o3 = {};
// 7304
f637880758_0.returns.push(o3);
// 7305
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7306
f637880758_541.returns.push(1373482802000);
// 7307
o3 = {};
// 7308
f637880758_0.returns.push(o3);
// 7309
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7310
f637880758_541.returns.push(1373482802000);
// 7311
o3 = {};
// 7312
f637880758_0.returns.push(o3);
// 7313
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7314
f637880758_541.returns.push(1373482802000);
// 7315
o3 = {};
// 7316
f637880758_0.returns.push(o3);
// 7317
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7318
f637880758_541.returns.push(1373482802001);
// 7319
o3 = {};
// 7320
f637880758_0.returns.push(o3);
// 7321
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7322
f637880758_541.returns.push(1373482802001);
// 7323
o3 = {};
// 7324
f637880758_0.returns.push(o3);
// 7325
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7326
f637880758_541.returns.push(1373482802001);
// 7327
o3 = {};
// 7328
f637880758_0.returns.push(o3);
// 7329
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7330
f637880758_541.returns.push(1373482802002);
// 7331
o3 = {};
// 7332
f637880758_0.returns.push(o3);
// 7333
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7334
f637880758_541.returns.push(1373482802002);
// 7335
o3 = {};
// 7336
f637880758_0.returns.push(o3);
// 7337
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7338
f637880758_541.returns.push(1373482802002);
// 7339
o3 = {};
// 7340
f637880758_0.returns.push(o3);
// 7341
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7342
f637880758_541.returns.push(1373482802002);
// 7343
o3 = {};
// 7344
f637880758_0.returns.push(o3);
// 7345
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7346
f637880758_541.returns.push(1373482802002);
// 7347
o3 = {};
// 7348
f637880758_0.returns.push(o3);
// 7349
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7350
f637880758_541.returns.push(1373482802003);
// 7351
o3 = {};
// 7352
f637880758_0.returns.push(o3);
// 7353
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7354
f637880758_541.returns.push(1373482802003);
// 7355
o3 = {};
// 7356
f637880758_0.returns.push(o3);
// 7357
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7358
f637880758_541.returns.push(1373482802003);
// 7359
o3 = {};
// 7360
f637880758_0.returns.push(o3);
// 7361
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7362
f637880758_541.returns.push(1373482802003);
// 7363
o3 = {};
// 7364
f637880758_0.returns.push(o3);
// 7365
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7366
f637880758_541.returns.push(1373482802003);
// 7367
o3 = {};
// 7368
f637880758_0.returns.push(o3);
// 7369
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7370
f637880758_541.returns.push(1373482802003);
// 7371
o3 = {};
// 7372
f637880758_0.returns.push(o3);
// 7373
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7374
f637880758_541.returns.push(1373482802007);
// 7375
o3 = {};
// 7376
f637880758_0.returns.push(o3);
// 7377
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7378
f637880758_541.returns.push(1373482802007);
// 7379
o3 = {};
// 7380
f637880758_0.returns.push(o3);
// 7381
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7382
f637880758_541.returns.push(1373482802007);
// 7383
o3 = {};
// 7384
f637880758_0.returns.push(o3);
// 7385
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7386
f637880758_541.returns.push(1373482802017);
// 7387
o3 = {};
// 7388
f637880758_0.returns.push(o3);
// 7389
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7390
f637880758_541.returns.push(1373482802018);
// 7391
o3 = {};
// 7392
f637880758_0.returns.push(o3);
// 7393
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7394
f637880758_541.returns.push(1373482802018);
// 7395
o3 = {};
// 7396
f637880758_0.returns.push(o3);
// 7397
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7398
f637880758_541.returns.push(1373482802018);
// 7399
o3 = {};
// 7400
f637880758_0.returns.push(o3);
// 7401
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7402
f637880758_541.returns.push(1373482802018);
// 7403
o3 = {};
// 7404
f637880758_0.returns.push(o3);
// 7405
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7406
f637880758_541.returns.push(1373482802018);
// 7407
o3 = {};
// 7408
f637880758_0.returns.push(o3);
// 7409
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7410
f637880758_541.returns.push(1373482802018);
// 7411
o3 = {};
// 7412
f637880758_0.returns.push(o3);
// 7413
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7414
f637880758_541.returns.push(1373482802018);
// 7415
o3 = {};
// 7416
f637880758_0.returns.push(o3);
// 7417
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7418
f637880758_541.returns.push(1373482802019);
// 7419
o3 = {};
// 7420
f637880758_0.returns.push(o3);
// 7421
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7422
f637880758_541.returns.push(1373482802019);
// 7423
o3 = {};
// 7424
f637880758_0.returns.push(o3);
// 7425
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7426
f637880758_541.returns.push(1373482802020);
// 7427
o3 = {};
// 7428
f637880758_0.returns.push(o3);
// 7429
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7430
f637880758_541.returns.push(1373482802020);
// 7431
o3 = {};
// 7432
f637880758_0.returns.push(o3);
// 7433
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7434
f637880758_541.returns.push(1373482802020);
// 7435
o3 = {};
// 7436
f637880758_0.returns.push(o3);
// 7437
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7438
f637880758_541.returns.push(1373482802021);
// 7439
o3 = {};
// 7440
f637880758_0.returns.push(o3);
// 7441
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7442
f637880758_541.returns.push(1373482802021);
// 7443
o3 = {};
// 7444
f637880758_0.returns.push(o3);
// 7445
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7446
f637880758_541.returns.push(1373482802021);
// 7447
o3 = {};
// 7448
f637880758_0.returns.push(o3);
// 7449
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7450
f637880758_541.returns.push(1373482802025);
// 7451
o3 = {};
// 7452
f637880758_0.returns.push(o3);
// 7453
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7454
f637880758_541.returns.push(1373482802025);
// 7455
o3 = {};
// 7456
f637880758_0.returns.push(o3);
// 7457
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7458
f637880758_541.returns.push(1373482802025);
// 7459
o3 = {};
// 7460
f637880758_0.returns.push(o3);
// 7461
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7462
f637880758_541.returns.push(1373482802026);
// 7463
o3 = {};
// 7464
f637880758_0.returns.push(o3);
// 7465
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7466
f637880758_541.returns.push(1373482802026);
// 7467
o3 = {};
// 7468
f637880758_0.returns.push(o3);
// 7469
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7470
f637880758_541.returns.push(1373482802026);
// 7471
o3 = {};
// 7472
f637880758_0.returns.push(o3);
// 7473
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7474
f637880758_541.returns.push(1373482802026);
// 7475
o3 = {};
// 7476
f637880758_0.returns.push(o3);
// 7477
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7478
f637880758_541.returns.push(1373482802036);
// 7479
o3 = {};
// 7480
f637880758_0.returns.push(o3);
// 7481
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7482
f637880758_541.returns.push(1373482802036);
// 7483
o3 = {};
// 7484
f637880758_0.returns.push(o3);
// 7485
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7486
f637880758_541.returns.push(1373482802036);
// 7488
o3 = {};
// 7489
f637880758_522.returns.push(o3);
// 7490
o3.parentNode = o10;
// 7491
o3.id = "profile_popup";
// undefined
o3 = null;
// 7492
o3 = {};
// 7493
f637880758_0.returns.push(o3);
// 7494
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7495
f637880758_541.returns.push(1373482802037);
// 7496
o3 = {};
// 7497
f637880758_0.returns.push(o3);
// 7498
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7499
f637880758_541.returns.push(1373482802037);
// 7500
o3 = {};
// 7501
f637880758_0.returns.push(o3);
// 7502
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7503
f637880758_541.returns.push(1373482802038);
// 7504
o3 = {};
// 7505
f637880758_0.returns.push(o3);
// 7506
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7507
f637880758_541.returns.push(1373482802042);
// 7508
o3 = {};
// 7509
f637880758_0.returns.push(o3);
// 7510
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7511
f637880758_541.returns.push(1373482802042);
// 7512
o3 = {};
// 7513
f637880758_0.returns.push(o3);
// 7514
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7515
f637880758_541.returns.push(1373482802043);
// 7516
o3 = {};
// 7517
f637880758_0.returns.push(o3);
// 7518
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7519
f637880758_541.returns.push(1373482802043);
// 7520
o3 = {};
// 7521
f637880758_0.returns.push(o3);
// 7522
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7523
f637880758_541.returns.push(1373482802043);
// 7524
o3 = {};
// 7525
f637880758_0.returns.push(o3);
// 7526
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7527
f637880758_541.returns.push(1373482802043);
// 7528
o3 = {};
// 7529
f637880758_0.returns.push(o3);
// 7530
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7531
f637880758_541.returns.push(1373482802043);
// 7532
o3 = {};
// 7533
f637880758_0.returns.push(o3);
// 7534
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7535
f637880758_541.returns.push(1373482802044);
// 7536
o3 = {};
// 7537
f637880758_0.returns.push(o3);
// 7538
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7539
f637880758_541.returns.push(1373482802044);
// 7540
o3 = {};
// 7541
f637880758_0.returns.push(o3);
// 7542
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7543
f637880758_541.returns.push(1373482802044);
// 7544
o3 = {};
// 7545
f637880758_0.returns.push(o3);
// 7546
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7547
f637880758_541.returns.push(1373482802044);
// 7548
o3 = {};
// 7549
f637880758_0.returns.push(o3);
// 7550
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7551
f637880758_541.returns.push(1373482802044);
// 7552
o3 = {};
// 7553
f637880758_0.returns.push(o3);
// 7554
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7555
f637880758_541.returns.push(1373482802045);
// 7556
o3 = {};
// 7557
f637880758_0.returns.push(o3);
// 7558
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7559
f637880758_541.returns.push(1373482802045);
// 7560
o3 = {};
// 7561
f637880758_0.returns.push(o3);
// 7562
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7563
f637880758_541.returns.push(1373482802045);
// 7564
o3 = {};
// 7565
f637880758_0.returns.push(o3);
// 7566
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7567
f637880758_541.returns.push(1373482802045);
// 7568
o3 = {};
// 7569
f637880758_0.returns.push(o3);
// 7570
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7571
f637880758_541.returns.push(1373482802045);
// 7572
o3 = {};
// 7573
f637880758_0.returns.push(o3);
// 7574
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7575
f637880758_541.returns.push(1373482802045);
// 7576
o3 = {};
// 7577
f637880758_0.returns.push(o3);
// 7578
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7579
f637880758_541.returns.push(1373482802045);
// 7580
o3 = {};
// 7581
f637880758_0.returns.push(o3);
// 7582
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7583
f637880758_541.returns.push(1373482802046);
// 7584
o3 = {};
// 7585
f637880758_0.returns.push(o3);
// 7586
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7587
f637880758_541.returns.push(1373482802049);
// 7588
o3 = {};
// 7589
f637880758_0.returns.push(o3);
// 7590
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7591
f637880758_541.returns.push(1373482802049);
// 7592
o3 = {};
// 7593
f637880758_0.returns.push(o3);
// 7594
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7595
f637880758_541.returns.push(1373482802049);
// 7596
o3 = {};
// 7597
f637880758_0.returns.push(o3);
// 7598
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7599
f637880758_541.returns.push(1373482802049);
// 7600
o3 = {};
// 7601
f637880758_0.returns.push(o3);
// 7602
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7603
f637880758_541.returns.push(1373482802050);
// 7604
o3 = {};
// 7605
f637880758_0.returns.push(o3);
// 7606
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7607
f637880758_541.returns.push(1373482802050);
// 7608
o3 = {};
// 7609
f637880758_0.returns.push(o3);
// 7610
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7611
f637880758_541.returns.push(1373482802050);
// 7612
o3 = {};
// 7613
f637880758_0.returns.push(o3);
// 7614
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7615
f637880758_541.returns.push(1373482802050);
// 7616
o3 = {};
// 7617
f637880758_0.returns.push(o3);
// 7618
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7619
f637880758_541.returns.push(1373482802050);
// 7620
o3 = {};
// 7621
f637880758_0.returns.push(o3);
// 7622
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7623
f637880758_541.returns.push(1373482802050);
// 7624
o3 = {};
// 7625
f637880758_0.returns.push(o3);
// 7626
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7627
f637880758_541.returns.push(1373482802051);
// 7628
o3 = {};
// 7629
f637880758_0.returns.push(o3);
// 7630
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7631
f637880758_541.returns.push(1373482802051);
// 7632
o3 = {};
// 7633
f637880758_0.returns.push(o3);
// 7634
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7635
f637880758_541.returns.push(1373482802051);
// 7636
o3 = {};
// 7637
f637880758_0.returns.push(o3);
// 7638
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7639
f637880758_541.returns.push(1373482802051);
// 7640
o3 = {};
// 7641
f637880758_0.returns.push(o3);
// 7642
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7643
f637880758_541.returns.push(1373482802051);
// 7644
o3 = {};
// 7645
f637880758_0.returns.push(o3);
// 7646
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7647
f637880758_541.returns.push(1373482802051);
// 7648
o3 = {};
// 7649
f637880758_0.returns.push(o3);
// 7650
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7651
f637880758_541.returns.push(1373482802051);
// 7652
o3 = {};
// 7653
f637880758_0.returns.push(o3);
// 7654
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7655
f637880758_541.returns.push(1373482802051);
// 7656
o3 = {};
// 7657
f637880758_0.returns.push(o3);
// 7658
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7659
f637880758_541.returns.push(1373482802052);
// 7660
o3 = {};
// 7661
f637880758_0.returns.push(o3);
// 7662
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7663
f637880758_541.returns.push(1373482802052);
// 7664
o3 = {};
// 7665
f637880758_0.returns.push(o3);
// 7666
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7667
f637880758_541.returns.push(1373482802052);
// 7668
o3 = {};
// 7669
f637880758_0.returns.push(o3);
// 7670
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7671
f637880758_541.returns.push(1373482802052);
// 7672
o3 = {};
// 7673
f637880758_0.returns.push(o3);
// 7674
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7675
f637880758_541.returns.push(1373482802052);
// 7676
o3 = {};
// 7677
f637880758_0.returns.push(o3);
// 7678
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7679
f637880758_541.returns.push(1373482802053);
// 7680
o3 = {};
// 7681
f637880758_0.returns.push(o3);
// 7682
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7683
f637880758_541.returns.push(1373482802053);
// 7684
o3 = {};
// 7685
f637880758_0.returns.push(o3);
// 7686
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7687
f637880758_541.returns.push(1373482802053);
// 7688
o3 = {};
// 7689
f637880758_0.returns.push(o3);
// 7690
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7691
f637880758_541.returns.push(1373482802059);
// 7692
o3 = {};
// 7693
f637880758_0.returns.push(o3);
// 7694
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7695
f637880758_541.returns.push(1373482802060);
// 7696
o3 = {};
// 7697
f637880758_0.returns.push(o3);
// 7698
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7699
f637880758_541.returns.push(1373482802060);
// 7700
o3 = {};
// 7701
f637880758_0.returns.push(o3);
// 7702
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7703
f637880758_541.returns.push(1373482802060);
// 7704
o3 = {};
// 7705
f637880758_0.returns.push(o3);
// 7706
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7707
f637880758_541.returns.push(1373482802060);
// 7708
o3 = {};
// 7709
f637880758_0.returns.push(o3);
// 7710
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7711
f637880758_541.returns.push(1373482802060);
// 7712
o3 = {};
// 7713
f637880758_0.returns.push(o3);
// 7714
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7715
f637880758_541.returns.push(1373482802060);
// 7716
o3 = {};
// 7717
f637880758_0.returns.push(o3);
// 7718
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7719
f637880758_541.returns.push(1373482802061);
// 7720
o3 = {};
// 7721
f637880758_0.returns.push(o3);
// 7722
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7723
f637880758_541.returns.push(1373482802061);
// 7724
o3 = {};
// 7725
f637880758_0.returns.push(o3);
// 7726
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7727
f637880758_541.returns.push(1373482802062);
// 7728
o3 = {};
// 7729
f637880758_0.returns.push(o3);
// 7730
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7731
f637880758_541.returns.push(1373482802062);
// 7732
o3 = {};
// 7733
f637880758_0.returns.push(o3);
// 7734
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7735
f637880758_541.returns.push(1373482802062);
// 7736
o3 = {};
// 7737
f637880758_0.returns.push(o3);
// 7738
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7739
f637880758_541.returns.push(1373482802062);
// 7740
o3 = {};
// 7741
f637880758_0.returns.push(o3);
// 7742
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7743
f637880758_541.returns.push(1373482802062);
// 7744
o3 = {};
// 7745
f637880758_0.returns.push(o3);
// 7746
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7747
f637880758_541.returns.push(1373482802062);
// 7748
o3 = {};
// 7749
f637880758_0.returns.push(o3);
// 7750
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7751
f637880758_541.returns.push(1373482802063);
// 7752
o3 = {};
// 7753
f637880758_0.returns.push(o3);
// 7754
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7755
f637880758_541.returns.push(1373482802063);
// 7756
o3 = {};
// 7757
f637880758_0.returns.push(o3);
// 7758
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7759
f637880758_541.returns.push(1373482802063);
// 7760
o3 = {};
// 7761
f637880758_0.returns.push(o3);
// 7762
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7763
f637880758_541.returns.push(1373482802063);
// 7764
o3 = {};
// 7765
f637880758_0.returns.push(o3);
// 7766
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7767
f637880758_541.returns.push(1373482802063);
// 7768
o3 = {};
// 7769
f637880758_0.returns.push(o3);
// 7770
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7771
f637880758_541.returns.push(1373482802064);
// 7772
o3 = {};
// 7773
f637880758_0.returns.push(o3);
// 7774
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7775
f637880758_541.returns.push(1373482802064);
// 7776
o3 = {};
// 7777
f637880758_0.returns.push(o3);
// 7778
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7779
f637880758_541.returns.push(1373482802064);
// 7780
o3 = {};
// 7781
f637880758_0.returns.push(o3);
// 7782
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7783
f637880758_541.returns.push(1373482802074);
// 7784
o3 = {};
// 7785
f637880758_0.returns.push(o3);
// 7786
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7787
f637880758_541.returns.push(1373482802074);
// 7788
o3 = {};
// 7789
f637880758_0.returns.push(o3);
// 7790
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7791
f637880758_541.returns.push(1373482802074);
// 7792
o3 = {};
// 7793
f637880758_0.returns.push(o3);
// 7794
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7795
f637880758_541.returns.push(1373482802075);
// 7796
o3 = {};
// 7797
f637880758_0.returns.push(o3);
// 7798
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7799
f637880758_541.returns.push(1373482802079);
// 7800
o3 = {};
// 7801
f637880758_0.returns.push(o3);
// 7802
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7803
f637880758_541.returns.push(1373482802080);
// 7804
o3 = {};
// 7805
f637880758_0.returns.push(o3);
// 7806
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7807
f637880758_541.returns.push(1373482802080);
// 7808
o3 = {};
// 7809
f637880758_0.returns.push(o3);
// 7810
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7811
f637880758_541.returns.push(1373482802080);
// 7812
o3 = {};
// 7813
f637880758_0.returns.push(o3);
// 7814
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7815
f637880758_541.returns.push(1373482802080);
// 7816
o3 = {};
// 7817
f637880758_0.returns.push(o3);
// 7818
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7819
f637880758_541.returns.push(1373482802082);
// 7820
o3 = {};
// 7821
f637880758_0.returns.push(o3);
// 7822
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7823
f637880758_541.returns.push(1373482802082);
// 7824
o3 = {};
// 7825
f637880758_0.returns.push(o3);
// 7826
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7827
f637880758_541.returns.push(1373482802083);
// 7828
o3 = {};
// 7829
f637880758_0.returns.push(o3);
// 7830
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7831
f637880758_541.returns.push(1373482802084);
// 7832
o3 = {};
// 7833
f637880758_0.returns.push(o3);
// 7834
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7835
f637880758_541.returns.push(1373482802084);
// 7836
o3 = {};
// 7837
f637880758_0.returns.push(o3);
// 7838
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7839
f637880758_541.returns.push(1373482802084);
// 7840
o3 = {};
// 7841
f637880758_0.returns.push(o3);
// 7842
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7843
f637880758_541.returns.push(1373482802085);
// 7844
o3 = {};
// 7845
f637880758_0.returns.push(o3);
// 7846
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7847
f637880758_541.returns.push(1373482802085);
// 7848
o3 = {};
// 7849
f637880758_0.returns.push(o3);
// 7850
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7851
f637880758_541.returns.push(1373482802085);
// 7852
o3 = {};
// 7853
f637880758_0.returns.push(o3);
// 7854
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7855
f637880758_541.returns.push(1373482802085);
// 7856
o3 = {};
// 7857
f637880758_0.returns.push(o3);
// 7858
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7859
f637880758_541.returns.push(1373482802087);
// 7860
o3 = {};
// 7861
f637880758_0.returns.push(o3);
// 7862
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7863
f637880758_541.returns.push(1373482802087);
// 7864
o3 = {};
// 7865
f637880758_0.returns.push(o3);
// 7866
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7867
f637880758_541.returns.push(1373482802088);
// 7868
o3 = {};
// 7869
f637880758_0.returns.push(o3);
// 7870
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7871
f637880758_541.returns.push(1373482802088);
// 7872
o3 = {};
// 7873
f637880758_0.returns.push(o3);
// 7874
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7875
f637880758_541.returns.push(1373482802088);
// 7876
o3 = {};
// 7877
f637880758_0.returns.push(o3);
// 7878
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7879
f637880758_541.returns.push(1373482802089);
// 7880
o3 = {};
// 7881
f637880758_0.returns.push(o3);
// 7882
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7883
f637880758_541.returns.push(1373482802089);
// 7884
o3 = {};
// 7885
f637880758_0.returns.push(o3);
// 7886
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7887
f637880758_541.returns.push(1373482802089);
// 7888
o3 = {};
// 7889
f637880758_0.returns.push(o3);
// 7890
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7891
f637880758_541.returns.push(1373482802089);
// 7892
o3 = {};
// 7893
f637880758_0.returns.push(o3);
// 7894
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7895
f637880758_541.returns.push(1373482802090);
// 7896
o3 = {};
// 7897
f637880758_0.returns.push(o3);
// 7898
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7899
f637880758_541.returns.push(1373482802090);
// 7900
o3 = {};
// 7901
f637880758_0.returns.push(o3);
// 7902
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7903
f637880758_541.returns.push(1373482802095);
// 7904
o3 = {};
// 7905
f637880758_0.returns.push(o3);
// 7906
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7907
f637880758_541.returns.push(1373482802095);
// 7908
o3 = {};
// 7909
f637880758_0.returns.push(o3);
// 7910
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7911
f637880758_541.returns.push(1373482802096);
// 7912
o3 = {};
// 7913
f637880758_0.returns.push(o3);
// 7914
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7915
f637880758_541.returns.push(1373482802096);
// 7916
o3 = {};
// 7917
f637880758_0.returns.push(o3);
// 7918
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7919
f637880758_541.returns.push(1373482802097);
// 7920
o3 = {};
// 7921
f637880758_0.returns.push(o3);
// 7922
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7923
f637880758_541.returns.push(1373482802097);
// 7924
o3 = {};
// 7925
f637880758_0.returns.push(o3);
// 7926
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7927
f637880758_541.returns.push(1373482802098);
// 7928
o3 = {};
// 7929
f637880758_0.returns.push(o3);
// 7930
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7931
f637880758_541.returns.push(1373482802098);
// 7932
o3 = {};
// 7933
f637880758_0.returns.push(o3);
// 7934
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7935
f637880758_541.returns.push(1373482802098);
// 7936
o3 = {};
// 7937
f637880758_0.returns.push(o3);
// 7938
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7939
f637880758_541.returns.push(1373482802099);
// 7940
o3 = {};
// 7941
f637880758_0.returns.push(o3);
// 7942
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7943
f637880758_541.returns.push(1373482802099);
// 7944
o3 = {};
// 7945
f637880758_0.returns.push(o3);
// 7946
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7947
f637880758_541.returns.push(1373482802099);
// 7948
o3 = {};
// 7949
f637880758_0.returns.push(o3);
// 7950
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7951
f637880758_541.returns.push(1373482802099);
// 7952
o3 = {};
// 7953
f637880758_0.returns.push(o3);
// 7954
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7955
f637880758_541.returns.push(1373482802099);
// 7956
o3 = {};
// 7957
f637880758_0.returns.push(o3);
// 7958
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7959
f637880758_541.returns.push(1373482802100);
// 7960
o3 = {};
// 7961
f637880758_0.returns.push(o3);
// 7962
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7963
f637880758_541.returns.push(1373482802100);
// 7964
o3 = {};
// 7965
f637880758_0.returns.push(o3);
// 7966
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7967
f637880758_541.returns.push(1373482802100);
// 7968
o3 = {};
// 7969
f637880758_0.returns.push(o3);
// 7970
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7971
f637880758_541.returns.push(1373482802100);
// 7972
o3 = {};
// 7973
f637880758_0.returns.push(o3);
// 7974
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7975
f637880758_541.returns.push(1373482802100);
// 7976
o3 = {};
// 7977
f637880758_0.returns.push(o3);
// 7978
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7979
f637880758_541.returns.push(1373482802100);
// 7980
o3 = {};
// 7981
f637880758_0.returns.push(o3);
// 7982
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7983
f637880758_541.returns.push(1373482802101);
// 7984
o3 = {};
// 7985
f637880758_0.returns.push(o3);
// 7986
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7987
f637880758_541.returns.push(1373482802101);
// 7988
o3 = {};
// 7989
f637880758_0.returns.push(o3);
// 7990
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7991
f637880758_541.returns.push(1373482802102);
// 7992
o3 = {};
// 7993
f637880758_0.returns.push(o3);
// 7994
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7995
f637880758_541.returns.push(1373482802102);
// 7996
o3 = {};
// 7997
f637880758_0.returns.push(o3);
// 7998
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 7999
f637880758_541.returns.push(1373482802103);
// 8000
o3 = {};
// 8001
f637880758_0.returns.push(o3);
// 8002
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8003
f637880758_541.returns.push(1373482802103);
// 8004
o3 = {};
// 8005
f637880758_0.returns.push(o3);
// 8006
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8007
f637880758_541.returns.push(1373482802103);
// 8008
o3 = {};
// 8009
f637880758_0.returns.push(o3);
// 8010
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8011
f637880758_541.returns.push(1373482802107);
// 8012
o3 = {};
// 8013
f637880758_0.returns.push(o3);
// 8014
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8015
f637880758_541.returns.push(1373482802107);
// 8016
o3 = {};
// 8017
f637880758_0.returns.push(o3);
// 8018
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8019
f637880758_541.returns.push(1373482802107);
// 8020
o3 = {};
// 8021
f637880758_0.returns.push(o3);
// 8022
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8023
f637880758_541.returns.push(1373482802107);
// 8024
o3 = {};
// 8025
f637880758_0.returns.push(o3);
// 8026
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8027
f637880758_541.returns.push(1373482802111);
// 8028
o3 = {};
// 8029
f637880758_0.returns.push(o3);
// 8030
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8031
f637880758_541.returns.push(1373482802111);
// 8032
o3 = {};
// 8033
f637880758_0.returns.push(o3);
// 8034
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8035
f637880758_541.returns.push(1373482802112);
// 8036
o3 = {};
// 8037
f637880758_0.returns.push(o3);
// 8038
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8039
f637880758_541.returns.push(1373482802112);
// 8040
o3 = {};
// 8041
f637880758_0.returns.push(o3);
// 8042
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8043
f637880758_541.returns.push(1373482802112);
// 8044
o3 = {};
// 8045
f637880758_0.returns.push(o3);
// 8046
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8047
f637880758_541.returns.push(1373482802112);
// 8048
o3 = {};
// 8049
f637880758_0.returns.push(o3);
// 8050
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8051
f637880758_541.returns.push(1373482802114);
// 8052
o3 = {};
// 8053
f637880758_0.returns.push(o3);
// 8054
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8055
f637880758_541.returns.push(1373482802114);
// 8056
o3 = {};
// 8057
f637880758_0.returns.push(o3);
// 8058
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8059
f637880758_541.returns.push(1373482802114);
// 8060
o3 = {};
// 8061
f637880758_0.returns.push(o3);
// 8062
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8063
f637880758_541.returns.push(1373482802114);
// 8064
o3 = {};
// 8065
f637880758_0.returns.push(o3);
// 8066
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8067
f637880758_541.returns.push(1373482802114);
// 8068
o3 = {};
// 8069
f637880758_0.returns.push(o3);
// 8070
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8071
f637880758_541.returns.push(1373482802114);
// 8072
o3 = {};
// 8073
f637880758_0.returns.push(o3);
// 8074
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8075
f637880758_541.returns.push(1373482802114);
// 8076
o3 = {};
// 8077
f637880758_0.returns.push(o3);
// 8078
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8079
f637880758_541.returns.push(1373482802115);
// 8080
o3 = {};
// 8081
f637880758_0.returns.push(o3);
// 8082
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8083
f637880758_541.returns.push(1373482802116);
// 8084
o3 = {};
// 8085
f637880758_0.returns.push(o3);
// 8086
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8087
f637880758_541.returns.push(1373482802117);
// 8088
o3 = {};
// 8089
f637880758_0.returns.push(o3);
// 8090
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8091
f637880758_541.returns.push(1373482802117);
// 8092
o3 = {};
// 8093
f637880758_0.returns.push(o3);
// 8094
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8095
f637880758_541.returns.push(1373482802117);
// 8096
o3 = {};
// 8097
f637880758_0.returns.push(o3);
// 8098
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8099
f637880758_541.returns.push(1373482802117);
// 8100
o3 = {};
// 8101
f637880758_0.returns.push(o3);
// 8102
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8103
f637880758_541.returns.push(1373482802118);
// 8104
o3 = {};
// 8105
f637880758_0.returns.push(o3);
// 8106
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8107
f637880758_541.returns.push(1373482802118);
// 8108
o3 = {};
// 8109
f637880758_0.returns.push(o3);
// 8110
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8111
f637880758_541.returns.push(1373482802118);
// 8112
o3 = {};
// 8113
f637880758_0.returns.push(o3);
// 8114
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8115
f637880758_541.returns.push(1373482802122);
// 8116
o3 = {};
// 8117
f637880758_0.returns.push(o3);
// 8118
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8119
f637880758_541.returns.push(1373482802123);
// 8120
o3 = {};
// 8121
f637880758_0.returns.push(o3);
// 8122
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8123
f637880758_541.returns.push(1373482802124);
// 8124
o3 = {};
// 8125
f637880758_0.returns.push(o3);
// 8126
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8127
f637880758_541.returns.push(1373482802124);
// 8128
o3 = {};
// 8129
f637880758_0.returns.push(o3);
// 8130
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8131
f637880758_541.returns.push(1373482802124);
// 8132
o3 = {};
// 8133
f637880758_0.returns.push(o3);
// 8134
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8135
f637880758_541.returns.push(1373482802124);
// 8136
o3 = {};
// 8137
f637880758_0.returns.push(o3);
// 8138
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8139
f637880758_541.returns.push(1373482802125);
// 8140
o3 = {};
// 8141
f637880758_0.returns.push(o3);
// 8142
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8143
f637880758_541.returns.push(1373482802125);
// 8144
o3 = {};
// 8145
f637880758_0.returns.push(o3);
// 8146
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8147
f637880758_541.returns.push(1373482802125);
// 8148
o3 = {};
// 8149
f637880758_0.returns.push(o3);
// 8150
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8151
f637880758_541.returns.push(1373482802126);
// 8152
o3 = {};
// 8153
f637880758_0.returns.push(o3);
// 8154
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8155
f637880758_541.returns.push(1373482802126);
// 8156
o3 = {};
// 8157
f637880758_0.returns.push(o3);
// 8158
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8159
f637880758_541.returns.push(1373482802126);
// 8160
o3 = {};
// 8161
f637880758_0.returns.push(o3);
// 8162
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8163
f637880758_541.returns.push(1373482802126);
// 8164
o3 = {};
// 8165
f637880758_0.returns.push(o3);
// 8166
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8167
f637880758_541.returns.push(1373482802127);
// 8168
o3 = {};
// 8169
f637880758_0.returns.push(o3);
// 8170
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8171
f637880758_541.returns.push(1373482802127);
// 8172
o3 = {};
// 8173
f637880758_0.returns.push(o3);
// 8174
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8175
f637880758_541.returns.push(1373482802128);
// 8176
o3 = {};
// 8177
f637880758_0.returns.push(o3);
// 8178
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8179
f637880758_541.returns.push(1373482802129);
// 8180
o3 = {};
// 8181
f637880758_0.returns.push(o3);
// 8182
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8183
f637880758_541.returns.push(1373482802129);
// 8184
o3 = {};
// 8185
f637880758_0.returns.push(o3);
// 8186
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8187
f637880758_541.returns.push(1373482802129);
// 8188
o3 = {};
// 8189
f637880758_0.returns.push(o3);
// 8190
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8191
f637880758_541.returns.push(1373482802129);
// 8192
o3 = {};
// 8193
f637880758_0.returns.push(o3);
// 8194
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8195
f637880758_541.returns.push(1373482802130);
// 8196
o3 = {};
// 8197
f637880758_0.returns.push(o3);
// 8198
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8199
f637880758_541.returns.push(1373482802131);
// 8200
o3 = {};
// 8201
f637880758_0.returns.push(o3);
// 8202
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8203
f637880758_541.returns.push(1373482802131);
// 8204
o3 = {};
// 8205
f637880758_0.returns.push(o3);
// 8206
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8207
f637880758_541.returns.push(1373482802131);
// 8208
o3 = {};
// 8209
f637880758_0.returns.push(o3);
// 8210
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8211
f637880758_541.returns.push(1373482802131);
// 8212
o3 = {};
// 8213
f637880758_0.returns.push(o3);
// 8214
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8215
f637880758_541.returns.push(1373482802132);
// 8216
o3 = {};
// 8217
f637880758_0.returns.push(o3);
// 8218
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8219
f637880758_541.returns.push(1373482802133);
// 8220
o3 = {};
// 8221
f637880758_0.returns.push(o3);
// 8222
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8223
f637880758_541.returns.push(1373482802136);
// 8224
o3 = {};
// 8225
f637880758_0.returns.push(o3);
// 8226
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8227
f637880758_541.returns.push(1373482802136);
// 8228
o3 = {};
// 8229
f637880758_0.returns.push(o3);
// 8230
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8231
f637880758_541.returns.push(1373482802137);
// 8232
o5.protocol = "https:";
// 8233
o3 = {};
// 8234
f637880758_0.returns.push(o3);
// 8235
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8236
f637880758_541.returns.push(1373482802137);
// 8237
o3 = {};
// 8238
f637880758_0.returns.push(o3);
// 8239
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8240
f637880758_541.returns.push(1373482802137);
// 8241
o3 = {};
// 8242
f637880758_0.returns.push(o3);
// 8243
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8244
f637880758_541.returns.push(1373482802138);
// 8245
o3 = {};
// 8246
f637880758_0.returns.push(o3);
// 8247
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8248
f637880758_541.returns.push(1373482802140);
// 8249
o3 = {};
// 8250
f637880758_0.returns.push(o3);
// 8251
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8252
f637880758_541.returns.push(1373482802140);
// 8253
o3 = {};
// 8254
f637880758_0.returns.push(o3);
// 8255
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8256
f637880758_541.returns.push(1373482802140);
// 8257
o3 = {};
// 8258
f637880758_0.returns.push(o3);
// 8259
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8260
f637880758_541.returns.push(1373482802141);
// 8261
o3 = {};
// 8262
f637880758_0.returns.push(o3);
// 8263
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8264
f637880758_541.returns.push(1373482802141);
// 8265
o3 = {};
// 8266
f637880758_0.returns.push(o3);
// 8267
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8268
f637880758_541.returns.push(1373482802141);
// 8269
o3 = {};
// 8270
f637880758_0.returns.push(o3);
// 8271
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8272
f637880758_541.returns.push(1373482802141);
// 8273
o3 = {};
// 8274
f637880758_0.returns.push(o3);
// 8275
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8276
f637880758_541.returns.push(1373482802142);
// 8277
f637880758_470.returns.push(0.5062825882341713);
// 8280
o5.search = "?q=%23javascript";
// 8281
o5.hash = "";
// undefined
o5 = null;
// 8282
o3 = {};
// 8283
f637880758_0.returns.push(o3);
// 8284
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8285
f637880758_541.returns.push(1373482802143);
// 8286
o3 = {};
// 8287
f637880758_0.returns.push(o3);
// 8288
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8289
f637880758_541.returns.push(1373482802143);
// 8290
o3 = {};
// 8291
f637880758_0.returns.push(o3);
// 8292
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8293
f637880758_541.returns.push(1373482802143);
// 8294
o3 = {};
// 8295
f637880758_0.returns.push(o3);
// 8296
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8297
f637880758_541.returns.push(1373482802143);
// 8298
o3 = {};
// 8299
f637880758_0.returns.push(o3);
// 8300
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8301
f637880758_541.returns.push(1373482802144);
// 8302
o3 = {};
// 8303
f637880758_0.returns.push(o3);
// 8304
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8305
f637880758_541.returns.push(1373482802144);
// 8306
o3 = {};
// 8307
f637880758_0.returns.push(o3);
// 8308
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8309
f637880758_541.returns.push(1373482802144);
// 8310
o3 = {};
// 8311
f637880758_0.returns.push(o3);
// 8312
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8313
f637880758_541.returns.push(1373482802144);
// 8314
o3 = {};
// 8315
f637880758_0.returns.push(o3);
// 8316
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8317
f637880758_541.returns.push(1373482802145);
// 8318
o3 = {};
// 8319
f637880758_0.returns.push(o3);
// 8320
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8321
f637880758_541.returns.push(1373482802145);
// 8322
o3 = {};
// 8323
f637880758_0.returns.push(o3);
// 8324
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8325
f637880758_541.returns.push(1373482802145);
// 8326
o3 = {};
// 8327
f637880758_0.returns.push(o3);
// 8328
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8329
f637880758_541.returns.push(1373482802150);
// 8330
o3 = {};
// 8331
f637880758_0.returns.push(o3);
// 8332
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8333
f637880758_541.returns.push(1373482802150);
// 8334
o3 = {};
// 8335
f637880758_0.returns.push(o3);
// 8336
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8337
f637880758_541.returns.push(1373482802150);
// 8338
o3 = {};
// 8339
f637880758_0.returns.push(o3);
// 8340
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8341
f637880758_541.returns.push(1373482802151);
// 8342
o3 = {};
// 8343
f637880758_0.returns.push(o3);
// 8344
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8345
f637880758_541.returns.push(1373482802151);
// 8346
o3 = {};
// 8347
f637880758_0.returns.push(o3);
// 8348
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8349
f637880758_541.returns.push(1373482802152);
// 8350
o3 = {};
// 8351
f637880758_0.returns.push(o3);
// 8352
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8353
f637880758_541.returns.push(1373482802152);
// 8354
o3 = {};
// 8355
f637880758_0.returns.push(o3);
// 8356
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8357
f637880758_541.returns.push(1373482802152);
// 8358
o3 = {};
// 8359
f637880758_0.returns.push(o3);
// 8360
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8361
f637880758_541.returns.push(1373482802152);
// 8362
o3 = {};
// 8363
f637880758_0.returns.push(o3);
// 8364
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8365
f637880758_541.returns.push(1373482802153);
// 8366
o3 = {};
// 8367
f637880758_0.returns.push(o3);
// 8368
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8369
f637880758_541.returns.push(1373482802153);
// 8370
o3 = {};
// 8371
f637880758_0.returns.push(o3);
// 8372
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8373
f637880758_541.returns.push(1373482802154);
// 8374
o3 = {};
// 8375
f637880758_0.returns.push(o3);
// 8376
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8377
f637880758_541.returns.push(1373482802155);
// 8378
o3 = {};
// 8379
f637880758_0.returns.push(o3);
// 8380
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8381
f637880758_541.returns.push(1373482802155);
// 8382
o3 = {};
// 8383
f637880758_0.returns.push(o3);
// 8384
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8385
f637880758_541.returns.push(1373482802155);
// 8386
o3 = {};
// 8387
f637880758_0.returns.push(o3);
// 8388
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8389
f637880758_541.returns.push(1373482802155);
// 8390
o3 = {};
// 8391
f637880758_0.returns.push(o3);
// 8392
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8393
f637880758_541.returns.push(1373482802155);
// 8394
o3 = {};
// 8395
f637880758_0.returns.push(o3);
// 8396
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8397
f637880758_541.returns.push(1373482802155);
// 8398
o3 = {};
// 8399
f637880758_0.returns.push(o3);
// 8400
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8401
f637880758_541.returns.push(1373482802155);
// 8402
o3 = {};
// 8403
f637880758_0.returns.push(o3);
// 8404
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8405
f637880758_541.returns.push(1373482802156);
// 8406
o3 = {};
// 8407
f637880758_0.returns.push(o3);
// 8408
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8409
f637880758_541.returns.push(1373482802156);
// 8410
o3 = {};
// 8411
f637880758_0.returns.push(o3);
// 8412
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8413
f637880758_541.returns.push(1373482802156);
// 8414
o3 = {};
// 8415
f637880758_0.returns.push(o3);
// 8416
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8417
f637880758_541.returns.push(1373482802156);
// 8418
o3 = {};
// 8419
f637880758_0.returns.push(o3);
// 8420
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8421
f637880758_541.returns.push(1373482802156);
// 8422
o3 = {};
// 8423
f637880758_0.returns.push(o3);
// 8424
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8425
f637880758_541.returns.push(1373482802157);
// 8426
o3 = {};
// 8427
f637880758_0.returns.push(o3);
// 8428
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8429
f637880758_541.returns.push(1373482802157);
// 8430
o3 = {};
// 8431
f637880758_0.returns.push(o3);
// 8432
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8433
f637880758_541.returns.push(1373482802160);
// 8434
o3 = {};
// 8435
f637880758_0.returns.push(o3);
// 8436
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8437
f637880758_541.returns.push(1373482802160);
// 8438
o3 = {};
// 8439
f637880758_0.returns.push(o3);
// 8440
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8441
f637880758_541.returns.push(1373482802161);
// 8442
o3 = {};
// 8443
f637880758_0.returns.push(o3);
// 8444
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8445
f637880758_541.returns.push(1373482802161);
// 8446
o3 = {};
// 8447
f637880758_0.returns.push(o3);
// 8448
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8449
f637880758_541.returns.push(1373482802161);
// 8450
o3 = {};
// 8451
f637880758_0.returns.push(o3);
// 8452
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8453
f637880758_541.returns.push(1373482802161);
// 8454
o3 = {};
// 8455
f637880758_0.returns.push(o3);
// 8456
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8457
f637880758_541.returns.push(1373482802161);
// 8458
o3 = {};
// 8459
f637880758_0.returns.push(o3);
// 8460
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8461
f637880758_541.returns.push(1373482802161);
// 8462
o3 = {};
// 8463
f637880758_0.returns.push(o3);
// 8464
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8465
f637880758_541.returns.push(1373482802161);
// 8466
o3 = {};
// 8467
f637880758_0.returns.push(o3);
// 8468
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8469
f637880758_541.returns.push(1373482802162);
// 8470
o3 = {};
// 8471
f637880758_0.returns.push(o3);
// 8472
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8473
f637880758_541.returns.push(1373482802162);
// 8474
o3 = {};
// 8475
f637880758_0.returns.push(o3);
// 8476
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8477
f637880758_541.returns.push(1373482802162);
// 8478
o3 = {};
// 8479
f637880758_0.returns.push(o3);
// 8480
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8481
f637880758_541.returns.push(1373482802163);
// 8482
o3 = {};
// 8483
f637880758_0.returns.push(o3);
// 8484
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8485
f637880758_541.returns.push(1373482802163);
// 8486
o3 = {};
// 8487
f637880758_0.returns.push(o3);
// 8488
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8489
f637880758_541.returns.push(1373482802163);
// 8490
o3 = {};
// 8491
f637880758_0.returns.push(o3);
// 8492
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8493
f637880758_541.returns.push(1373482802163);
// 8494
o3 = {};
// 8495
f637880758_0.returns.push(o3);
// 8496
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8497
f637880758_541.returns.push(1373482802163);
// 8498
o3 = {};
// 8499
f637880758_0.returns.push(o3);
// 8500
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8501
f637880758_541.returns.push(1373482802164);
// 8502
o3 = {};
// 8503
f637880758_0.returns.push(o3);
// 8504
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8505
f637880758_541.returns.push(1373482802164);
// 8506
o3 = {};
// 8507
f637880758_0.returns.push(o3);
// 8508
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8509
f637880758_541.returns.push(1373482802164);
// 8510
o3 = {};
// 8511
f637880758_0.returns.push(o3);
// 8512
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8513
f637880758_541.returns.push(1373482802164);
// 8514
o3 = {};
// 8515
f637880758_0.returns.push(o3);
// 8516
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8517
f637880758_541.returns.push(1373482802164);
// 8518
o3 = {};
// 8519
f637880758_0.returns.push(o3);
// 8520
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8521
f637880758_541.returns.push(1373482802175);
// 8522
o3 = {};
// 8523
f637880758_0.returns.push(o3);
// 8524
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8525
f637880758_541.returns.push(1373482802176);
// 8526
o3 = {};
// 8527
f637880758_0.returns.push(o3);
// 8528
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8529
f637880758_541.returns.push(1373482802176);
// 8530
o3 = {};
// 8531
f637880758_0.returns.push(o3);
// 8532
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8533
f637880758_541.returns.push(1373482802176);
// 8534
o3 = {};
// 8535
f637880758_0.returns.push(o3);
// 8536
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8537
f637880758_541.returns.push(1373482802176);
// 8538
o3 = {};
// 8539
f637880758_0.returns.push(o3);
// 8540
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8541
f637880758_541.returns.push(1373482802181);
// 8542
o3 = {};
// 8543
f637880758_0.returns.push(o3);
// 8544
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8545
f637880758_541.returns.push(1373482802181);
// 8546
o3 = {};
// 8547
f637880758_0.returns.push(o3);
// 8548
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8549
f637880758_541.returns.push(1373482802183);
// 8550
o3 = {};
// 8551
f637880758_0.returns.push(o3);
// 8552
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8553
f637880758_541.returns.push(1373482802183);
// 8554
o3 = {};
// 8555
f637880758_0.returns.push(o3);
// 8556
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8557
f637880758_541.returns.push(1373482802183);
// 8558
o3 = {};
// 8559
f637880758_0.returns.push(o3);
// 8560
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8561
f637880758_541.returns.push(1373482802185);
// 8562
o3 = {};
// 8563
f637880758_0.returns.push(o3);
// 8564
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8565
f637880758_541.returns.push(1373482802186);
// 8566
o3 = {};
// 8567
f637880758_0.returns.push(o3);
// 8568
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8569
f637880758_541.returns.push(1373482802186);
// 8570
o3 = {};
// 8571
f637880758_0.returns.push(o3);
// 8572
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8573
f637880758_541.returns.push(1373482802186);
// 8574
o3 = {};
// 8575
f637880758_0.returns.push(o3);
// 8576
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8577
f637880758_541.returns.push(1373482802186);
// 8578
o3 = {};
// 8579
f637880758_0.returns.push(o3);
// 8580
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8581
f637880758_541.returns.push(1373482802186);
// 8582
o3 = {};
// 8583
f637880758_0.returns.push(o3);
// 8584
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8585
f637880758_541.returns.push(1373482802187);
// 8586
o3 = {};
// 8587
f637880758_0.returns.push(o3);
// 8588
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8589
f637880758_541.returns.push(1373482802187);
// 8590
o3 = {};
// 8591
f637880758_0.returns.push(o3);
// 8592
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8593
f637880758_541.returns.push(1373482802187);
// 8594
o3 = {};
// 8595
f637880758_0.returns.push(o3);
// 8596
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8597
f637880758_541.returns.push(1373482802188);
// 8598
o3 = {};
// 8599
f637880758_0.returns.push(o3);
// 8600
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8601
f637880758_541.returns.push(1373482802188);
// 8602
o3 = {};
// 8603
f637880758_0.returns.push(o3);
// 8604
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8605
f637880758_541.returns.push(1373482802189);
// 8606
o3 = {};
// 8607
f637880758_0.returns.push(o3);
// 8608
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8609
f637880758_541.returns.push(1373482802190);
// 8610
o3 = {};
// 8611
f637880758_0.returns.push(o3);
// 8612
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8613
f637880758_541.returns.push(1373482802190);
// 8614
o3 = {};
// 8615
f637880758_0.returns.push(o3);
// 8616
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8617
f637880758_541.returns.push(1373482802190);
// 8618
o3 = {};
// 8619
f637880758_0.returns.push(o3);
// 8620
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8621
f637880758_541.returns.push(1373482802191);
// 8622
o3 = {};
// 8623
f637880758_0.returns.push(o3);
// 8624
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8625
f637880758_541.returns.push(1373482802191);
// 8626
o3 = {};
// 8627
f637880758_0.returns.push(o3);
// 8628
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8629
f637880758_541.returns.push(1373482802194);
// 8630
o3 = {};
// 8631
f637880758_0.returns.push(o3);
// 8632
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8633
f637880758_541.returns.push(1373482802195);
// 8634
o3 = {};
// 8635
f637880758_0.returns.push(o3);
// 8636
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8637
f637880758_541.returns.push(1373482802196);
// 8638
o3 = {};
// 8639
f637880758_0.returns.push(o3);
// 8640
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8641
f637880758_541.returns.push(1373482802196);
// 8642
o3 = {};
// 8643
f637880758_0.returns.push(o3);
// 8644
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8645
f637880758_541.returns.push(1373482802200);
// 8646
o3 = {};
// 8647
f637880758_0.returns.push(o3);
// 8648
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8649
f637880758_541.returns.push(1373482802200);
// 8650
o3 = {};
// 8651
f637880758_0.returns.push(o3);
// 8652
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8653
f637880758_541.returns.push(1373482802200);
// 8654
o3 = {};
// 8655
f637880758_0.returns.push(o3);
// 8656
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8657
f637880758_541.returns.push(1373482802201);
// 8658
o3 = {};
// 8659
f637880758_0.returns.push(o3);
// 8660
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8661
f637880758_541.returns.push(1373482802201);
// 8662
o3 = {};
// 8663
f637880758_0.returns.push(o3);
// 8664
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8665
f637880758_541.returns.push(1373482802201);
// 8666
o3 = {};
// 8667
f637880758_0.returns.push(o3);
// 8668
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8669
f637880758_541.returns.push(1373482802201);
// 8670
o3 = {};
// 8671
f637880758_0.returns.push(o3);
// 8672
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8673
f637880758_541.returns.push(1373482802201);
// 8674
o3 = {};
// 8675
f637880758_0.returns.push(o3);
// 8676
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8677
f637880758_541.returns.push(1373482802203);
// 8678
o3 = {};
// 8679
f637880758_0.returns.push(o3);
// 8680
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8681
f637880758_541.returns.push(1373482802203);
// 8682
o3 = {};
// 8683
f637880758_0.returns.push(o3);
// 8684
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8685
f637880758_541.returns.push(1373482802204);
// 8686
o3 = {};
// 8687
f637880758_0.returns.push(o3);
// 8688
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8689
f637880758_541.returns.push(1373482802211);
// 8690
o3 = {};
// 8691
f637880758_0.returns.push(o3);
// 8692
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8693
f637880758_541.returns.push(1373482802211);
// 8694
o3 = {};
// 8695
f637880758_0.returns.push(o3);
// 8696
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8697
f637880758_541.returns.push(1373482802212);
// 8698
o3 = {};
// 8699
f637880758_0.returns.push(o3);
// 8700
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8701
f637880758_541.returns.push(1373482802213);
// 8702
o3 = {};
// 8703
f637880758_0.returns.push(o3);
// 8704
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8705
f637880758_541.returns.push(1373482802213);
// 8706
o3 = {};
// 8707
f637880758_0.returns.push(o3);
// 8708
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8709
f637880758_541.returns.push(1373482802213);
// 8710
o3 = {};
// 8711
f637880758_0.returns.push(o3);
// 8712
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8713
f637880758_541.returns.push(1373482802214);
// 8714
o3 = {};
// 8715
f637880758_0.returns.push(o3);
// 8716
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8717
f637880758_541.returns.push(1373482802214);
// 8718
o3 = {};
// 8719
f637880758_0.returns.push(o3);
// 8720
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8721
f637880758_541.returns.push(1373482802215);
// 8722
o3 = {};
// 8723
f637880758_0.returns.push(o3);
// 8724
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8725
f637880758_541.returns.push(1373482802217);
// 8726
o3 = {};
// 8727
f637880758_0.returns.push(o3);
// 8728
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8729
f637880758_541.returns.push(1373482802217);
// 8730
o3 = {};
// 8731
f637880758_0.returns.push(o3);
// 8732
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8733
f637880758_541.returns.push(1373482802217);
// 8734
o3 = {};
// 8735
f637880758_0.returns.push(o3);
// 8736
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8737
f637880758_541.returns.push(1373482802219);
// 8738
o3 = {};
// 8739
f637880758_0.returns.push(o3);
// 8740
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8741
f637880758_541.returns.push(1373482802219);
// 8742
o3 = {};
// 8743
f637880758_0.returns.push(o3);
// 8744
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8745
f637880758_541.returns.push(1373482802219);
// 8746
o3 = {};
// 8747
f637880758_0.returns.push(o3);
// 8748
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8749
f637880758_541.returns.push(1373482802219);
// 8750
o3 = {};
// 8751
f637880758_0.returns.push(o3);
// 8752
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8753
f637880758_541.returns.push(1373482802223);
// 8754
o3 = {};
// 8755
f637880758_0.returns.push(o3);
// 8756
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8757
f637880758_541.returns.push(1373482802227);
// 8758
o3 = {};
// 8759
f637880758_0.returns.push(o3);
// 8760
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8761
f637880758_541.returns.push(1373482802227);
// 8762
o3 = {};
// 8763
f637880758_0.returns.push(o3);
// 8764
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8765
f637880758_541.returns.push(1373482802227);
// 8766
o3 = {};
// 8767
f637880758_0.returns.push(o3);
// 8768
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8769
f637880758_541.returns.push(1373482802227);
// 8770
o3 = {};
// 8771
f637880758_0.returns.push(o3);
// 8772
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8773
f637880758_541.returns.push(1373482802228);
// 8774
o3 = {};
// 8775
f637880758_0.returns.push(o3);
// 8776
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8777
f637880758_541.returns.push(1373482802228);
// 8778
o3 = {};
// 8779
f637880758_0.returns.push(o3);
// 8780
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8781
f637880758_541.returns.push(1373482802228);
// 8782
o3 = {};
// 8783
f637880758_0.returns.push(o3);
// 8784
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8785
f637880758_541.returns.push(1373482802229);
// 8786
o3 = {};
// 8787
f637880758_0.returns.push(o3);
// 8788
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8789
f637880758_541.returns.push(1373482802229);
// 8790
o3 = {};
// 8791
f637880758_0.returns.push(o3);
// 8792
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8793
f637880758_541.returns.push(1373482802229);
// 8794
o3 = {};
// 8795
f637880758_0.returns.push(o3);
// 8796
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8797
f637880758_541.returns.push(1373482802229);
// 8798
o3 = {};
// 8799
f637880758_0.returns.push(o3);
// 8800
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8801
f637880758_541.returns.push(1373482802230);
// 8802
o3 = {};
// 8803
f637880758_0.returns.push(o3);
// 8804
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8805
f637880758_541.returns.push(1373482802230);
// 8806
o3 = {};
// 8807
f637880758_0.returns.push(o3);
// 8808
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8809
f637880758_541.returns.push(1373482802230);
// 8810
o3 = {};
// 8811
f637880758_0.returns.push(o3);
// 8812
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8813
f637880758_541.returns.push(1373482802230);
// 8814
o3 = {};
// 8815
f637880758_0.returns.push(o3);
// 8816
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8817
f637880758_541.returns.push(1373482802230);
// 8818
o3 = {};
// 8819
f637880758_0.returns.push(o3);
// 8820
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8821
f637880758_541.returns.push(1373482802230);
// 8822
o3 = {};
// 8823
f637880758_0.returns.push(o3);
// 8824
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8825
f637880758_541.returns.push(1373482802230);
// 8826
o3 = {};
// 8827
f637880758_0.returns.push(o3);
// 8828
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8829
f637880758_541.returns.push(1373482802230);
// 8830
o3 = {};
// 8831
f637880758_0.returns.push(o3);
// 8832
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8833
f637880758_541.returns.push(1373482802233);
// 8834
o3 = {};
// 8835
f637880758_0.returns.push(o3);
// 8836
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8837
f637880758_541.returns.push(1373482802233);
// 8838
o3 = {};
// 8839
f637880758_0.returns.push(o3);
// 8840
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8841
f637880758_541.returns.push(1373482802233);
// 8842
o3 = {};
// 8843
f637880758_0.returns.push(o3);
// 8844
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8845
f637880758_541.returns.push(1373482802233);
// 8846
o3 = {};
// 8847
f637880758_0.returns.push(o3);
// 8848
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8849
f637880758_541.returns.push(1373482802233);
// 8850
o3 = {};
// 8851
f637880758_0.returns.push(o3);
// 8852
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8853
f637880758_541.returns.push(1373482802234);
// 8854
o3 = {};
// 8855
f637880758_0.returns.push(o3);
// 8856
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8857
f637880758_541.returns.push(1373482802238);
// 8858
o3 = {};
// 8859
f637880758_0.returns.push(o3);
// 8860
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8861
f637880758_541.returns.push(1373482802239);
// 8862
o3 = {};
// 8863
f637880758_0.returns.push(o3);
// 8864
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8865
f637880758_541.returns.push(1373482802241);
// 8866
o3 = {};
// 8867
f637880758_0.returns.push(o3);
// 8868
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8869
f637880758_541.returns.push(1373482802241);
// 8870
o3 = {};
// 8871
f637880758_0.returns.push(o3);
// 8872
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8873
f637880758_541.returns.push(1373482802242);
// 8874
o3 = {};
// 8875
f637880758_0.returns.push(o3);
// 8876
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8877
f637880758_541.returns.push(1373482802243);
// 8878
o3 = {};
// 8879
f637880758_0.returns.push(o3);
// 8880
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8881
f637880758_541.returns.push(1373482802243);
// 8882
o3 = {};
// 8883
f637880758_0.returns.push(o3);
// 8884
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8885
f637880758_541.returns.push(1373482802243);
// 8886
o3 = {};
// 8887
f637880758_0.returns.push(o3);
// 8888
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8889
f637880758_541.returns.push(1373482802243);
// 8890
o3 = {};
// 8891
f637880758_0.returns.push(o3);
// 8892
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8893
f637880758_541.returns.push(1373482802243);
// 8894
o3 = {};
// 8895
f637880758_0.returns.push(o3);
// 8896
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8897
f637880758_541.returns.push(1373482802243);
// 8898
o3 = {};
// 8899
f637880758_0.returns.push(o3);
// 8900
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8901
f637880758_541.returns.push(1373482802246);
// 8902
o3 = {};
// 8903
f637880758_0.returns.push(o3);
// 8904
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8905
f637880758_541.returns.push(1373482802246);
// 8906
o3 = {};
// 8907
f637880758_0.returns.push(o3);
// 8908
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8909
f637880758_541.returns.push(1373482802251);
// 8910
o3 = {};
// 8911
f637880758_0.returns.push(o3);
// 8912
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8913
f637880758_541.returns.push(1373482802253);
// 8914
o3 = {};
// 8915
f637880758_0.returns.push(o3);
// 8916
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8917
f637880758_541.returns.push(1373482802254);
// 8918
o3 = {};
// 8919
f637880758_0.returns.push(o3);
// 8920
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8921
f637880758_541.returns.push(1373482802254);
// 8922
o3 = {};
// 8923
f637880758_0.returns.push(o3);
// 8924
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8925
f637880758_541.returns.push(1373482802254);
// 8926
o3 = {};
// 8927
f637880758_0.returns.push(o3);
// 8928
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8929
f637880758_541.returns.push(1373482802254);
// 8930
o3 = {};
// 8931
f637880758_0.returns.push(o3);
// 8932
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8933
f637880758_541.returns.push(1373482802263);
// 8934
o3 = {};
// 8935
f637880758_0.returns.push(o3);
// 8936
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8937
f637880758_541.returns.push(1373482802263);
// 8938
o3 = {};
// 8939
f637880758_0.returns.push(o3);
// 8940
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8941
f637880758_541.returns.push(1373482802264);
// 8942
o3 = {};
// 8943
f637880758_0.returns.push(o3);
// 8944
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8945
f637880758_541.returns.push(1373482802264);
// 8946
o3 = {};
// 8947
f637880758_0.returns.push(o3);
// 8948
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8949
f637880758_541.returns.push(1373482802264);
// 8950
o3 = {};
// 8951
f637880758_0.returns.push(o3);
// 8952
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8953
f637880758_541.returns.push(1373482802264);
// 8954
o3 = {};
// 8955
f637880758_0.returns.push(o3);
// 8956
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8957
f637880758_541.returns.push(1373482802264);
// 8958
o3 = {};
// 8959
f637880758_0.returns.push(o3);
// 8960
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8961
f637880758_541.returns.push(1373482802266);
// 8962
o3 = {};
// 8963
f637880758_0.returns.push(o3);
// 8964
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8965
f637880758_541.returns.push(1373482802270);
// 8966
o3 = {};
// 8967
f637880758_0.returns.push(o3);
// 8968
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8969
f637880758_541.returns.push(1373482802271);
// 8970
o3 = {};
// 8971
f637880758_0.returns.push(o3);
// 8972
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8973
f637880758_541.returns.push(1373482802271);
// 8974
o3 = {};
// 8975
f637880758_0.returns.push(o3);
// 8976
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8977
f637880758_541.returns.push(1373482802271);
// 8978
o3 = {};
// 8979
f637880758_0.returns.push(o3);
// 8980
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8981
f637880758_541.returns.push(1373482802276);
// 8982
o3 = {};
// 8983
f637880758_0.returns.push(o3);
// 8984
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8985
f637880758_541.returns.push(1373482802276);
// 8986
o3 = {};
// 8987
f637880758_0.returns.push(o3);
// 8988
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8989
f637880758_541.returns.push(1373482802277);
// 8990
o3 = {};
// 8991
f637880758_0.returns.push(o3);
// 8992
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8993
f637880758_541.returns.push(1373482802277);
// 8994
o3 = {};
// 8995
f637880758_0.returns.push(o3);
// 8996
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 8997
f637880758_541.returns.push(1373482802277);
// 8998
o3 = {};
// 8999
f637880758_0.returns.push(o3);
// 9000
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9001
f637880758_541.returns.push(1373482802279);
// 9002
o3 = {};
// 9003
f637880758_0.returns.push(o3);
// 9004
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9005
f637880758_541.returns.push(1373482802279);
// 9006
o3 = {};
// 9007
f637880758_0.returns.push(o3);
// 9008
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9009
f637880758_541.returns.push(1373482802279);
// 9010
o3 = {};
// 9011
f637880758_0.returns.push(o3);
// 9012
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9013
f637880758_541.returns.push(1373482802282);
// 9014
o3 = {};
// 9015
f637880758_0.returns.push(o3);
// 9016
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9017
f637880758_541.returns.push(1373482802282);
// 9018
o3 = {};
// 9019
f637880758_0.returns.push(o3);
// 9020
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9021
f637880758_541.returns.push(1373482802282);
// 9022
o3 = {};
// 9023
f637880758_0.returns.push(o3);
// 9024
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9025
f637880758_541.returns.push(1373482802282);
// 9026
o3 = {};
// 9027
f637880758_0.returns.push(o3);
// 9028
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9029
f637880758_541.returns.push(1373482802283);
// 9030
o3 = {};
// 9031
f637880758_0.returns.push(o3);
// 9032
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9033
f637880758_541.returns.push(1373482802283);
// 9034
o3 = {};
// 9035
f637880758_0.returns.push(o3);
// 9036
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9037
f637880758_541.returns.push(1373482802284);
// 9038
o3 = {};
// 9039
f637880758_0.returns.push(o3);
// 9040
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9041
f637880758_541.returns.push(1373482802284);
// 9042
o3 = {};
// 9043
f637880758_0.returns.push(o3);
// 9044
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9045
f637880758_541.returns.push(1373482802287);
// 9046
o3 = {};
// 9047
f637880758_0.returns.push(o3);
// 9048
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9049
f637880758_541.returns.push(1373482802287);
// 9050
o3 = {};
// 9051
f637880758_0.returns.push(o3);
// 9052
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9053
f637880758_541.returns.push(1373482802288);
// 9054
o3 = {};
// 9055
f637880758_0.returns.push(o3);
// 9056
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9057
f637880758_541.returns.push(1373482802288);
// 9058
o3 = {};
// 9059
f637880758_0.returns.push(o3);
// 9060
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9061
f637880758_541.returns.push(1373482802288);
// 9062
o3 = {};
// 9063
f637880758_0.returns.push(o3);
// 9064
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9065
f637880758_541.returns.push(1373482802288);
// 9066
o3 = {};
// 9067
f637880758_0.returns.push(o3);
// 9068
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9069
f637880758_541.returns.push(1373482802292);
// 9070
o3 = {};
// 9071
f637880758_0.returns.push(o3);
// 9072
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9073
f637880758_541.returns.push(1373482802292);
// 9074
o3 = {};
// 9075
f637880758_0.returns.push(o3);
// 9076
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9077
f637880758_541.returns.push(1373482802293);
// 9078
o3 = {};
// 9079
f637880758_0.returns.push(o3);
// 9080
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9081
f637880758_541.returns.push(1373482802295);
// 9082
o3 = {};
// 9083
f637880758_0.returns.push(o3);
// 9084
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9085
f637880758_541.returns.push(1373482802295);
// 9086
o3 = {};
// 9087
f637880758_0.returns.push(o3);
// 9088
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9089
f637880758_541.returns.push(1373482802295);
// 9090
o3 = {};
// 9091
f637880758_0.returns.push(o3);
// 9092
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9093
f637880758_541.returns.push(1373482802295);
// 9094
o3 = {};
// 9095
f637880758_0.returns.push(o3);
// 9096
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9097
f637880758_541.returns.push(1373482802296);
// 9098
o3 = {};
// 9099
f637880758_0.returns.push(o3);
// 9100
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9101
f637880758_541.returns.push(1373482802296);
// 9102
o3 = {};
// 9103
f637880758_0.returns.push(o3);
// 9104
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9105
f637880758_541.returns.push(1373482802296);
// 9106
o3 = {};
// 9107
f637880758_0.returns.push(o3);
// 9108
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9109
f637880758_541.returns.push(1373482802296);
// 9110
o3 = {};
// 9111
f637880758_0.returns.push(o3);
// 9112
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9113
f637880758_541.returns.push(1373482802296);
// 9114
o3 = {};
// 9115
f637880758_0.returns.push(o3);
// 9116
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9117
f637880758_541.returns.push(1373482802297);
// 9118
o3 = {};
// 9119
f637880758_0.returns.push(o3);
// 9120
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9121
f637880758_541.returns.push(1373482802297);
// 9122
o3 = {};
// 9123
f637880758_0.returns.push(o3);
// 9124
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9125
f637880758_541.returns.push(1373482802297);
// 9126
o3 = {};
// 9127
f637880758_0.returns.push(o3);
// 9128
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9129
f637880758_541.returns.push(1373482802297);
// 9130
o3 = {};
// 9131
f637880758_0.returns.push(o3);
// 9132
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9133
f637880758_541.returns.push(1373482802297);
// 9134
o3 = {};
// 9135
f637880758_0.returns.push(o3);
// 9136
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9137
f637880758_541.returns.push(1373482802297);
// 9138
o3 = {};
// 9139
f637880758_0.returns.push(o3);
// 9140
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9141
f637880758_541.returns.push(1373482802300);
// 9142
o3 = {};
// 9143
f637880758_0.returns.push(o3);
// 9144
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9145
f637880758_541.returns.push(1373482802300);
// 9146
o3 = {};
// 9147
f637880758_0.returns.push(o3);
// 9148
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9149
f637880758_541.returns.push(1373482802300);
// 9150
o3 = {};
// 9151
f637880758_0.returns.push(o3);
// 9152
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9153
f637880758_541.returns.push(1373482802301);
// 9154
o3 = {};
// 9155
f637880758_0.returns.push(o3);
// 9156
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9157
f637880758_541.returns.push(1373482802301);
// 9158
o3 = {};
// 9159
f637880758_0.returns.push(o3);
// 9160
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9161
f637880758_541.returns.push(1373482802301);
// 9162
o3 = {};
// 9163
f637880758_0.returns.push(o3);
// 9164
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9165
f637880758_541.returns.push(1373482802301);
// 9166
o3 = {};
// 9167
f637880758_0.returns.push(o3);
// 9168
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9169
f637880758_541.returns.push(1373482802301);
// 9170
o3 = {};
// 9171
f637880758_0.returns.push(o3);
// 9172
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9173
f637880758_541.returns.push(1373482802312);
// 9174
o3 = {};
// 9175
f637880758_0.returns.push(o3);
// 9176
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9177
f637880758_541.returns.push(1373482802317);
// 9178
o3 = {};
// 9179
f637880758_0.returns.push(o3);
// 9180
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9181
f637880758_541.returns.push(1373482802317);
// 9182
o3 = {};
// 9183
f637880758_0.returns.push(o3);
// 9184
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9185
f637880758_541.returns.push(1373482802317);
// 9186
o3 = {};
// 9187
f637880758_0.returns.push(o3);
// 9188
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9189
f637880758_541.returns.push(1373482802319);
// 9190
o3 = {};
// 9191
f637880758_0.returns.push(o3);
// 9192
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9193
f637880758_541.returns.push(1373482802320);
// 9194
o3 = {};
// 9195
f637880758_0.returns.push(o3);
// 9196
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9197
f637880758_541.returns.push(1373482802320);
// 9198
o3 = {};
// 9199
f637880758_0.returns.push(o3);
// 9200
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9201
f637880758_541.returns.push(1373482802320);
// 9202
o3 = {};
// 9203
f637880758_0.returns.push(o3);
// 9204
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9205
f637880758_541.returns.push(1373482802322);
// 9206
o3 = {};
// 9207
f637880758_0.returns.push(o3);
// 9208
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9209
f637880758_541.returns.push(1373482802322);
// 9210
o3 = {};
// 9211
f637880758_0.returns.push(o3);
// 9212
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9213
f637880758_541.returns.push(1373482802322);
// 9214
o3 = {};
// 9215
f637880758_0.returns.push(o3);
// 9216
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9217
f637880758_541.returns.push(1373482802323);
// 9218
o3 = {};
// 9219
f637880758_0.returns.push(o3);
// 9220
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9221
f637880758_541.returns.push(1373482802323);
// 9222
o3 = {};
// 9223
f637880758_0.returns.push(o3);
// 9224
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9225
f637880758_541.returns.push(1373482802323);
// 9226
o3 = {};
// 9227
f637880758_0.returns.push(o3);
// 9228
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9229
f637880758_541.returns.push(1373482802324);
// 9230
o3 = {};
// 9231
f637880758_0.returns.push(o3);
// 9232
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9233
f637880758_541.returns.push(1373482802324);
// 9234
o3 = {};
// 9235
f637880758_0.returns.push(o3);
// 9236
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9237
f637880758_541.returns.push(1373482802325);
// 9238
o3 = {};
// 9239
f637880758_0.returns.push(o3);
// 9240
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9241
f637880758_541.returns.push(1373482802325);
// 9242
o3 = {};
// 9243
f637880758_0.returns.push(o3);
// 9244
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9245
f637880758_541.returns.push(1373482802325);
// 9246
o3 = {};
// 9247
f637880758_0.returns.push(o3);
// 9248
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9249
f637880758_541.returns.push(1373482802325);
// 9250
o3 = {};
// 9251
f637880758_0.returns.push(o3);
// 9252
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9253
f637880758_541.returns.push(1373482802325);
// 9254
o3 = {};
// 9255
f637880758_0.returns.push(o3);
// 9256
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9257
f637880758_541.returns.push(1373482802326);
// 9258
o3 = {};
// 9259
f637880758_0.returns.push(o3);
// 9260
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9261
f637880758_541.returns.push(1373482802326);
// 9262
o3 = {};
// 9263
f637880758_0.returns.push(o3);
// 9264
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9265
f637880758_541.returns.push(1373482802326);
// 9266
o3 = {};
// 9267
f637880758_0.returns.push(o3);
// 9268
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9269
f637880758_541.returns.push(1373482802326);
// 9270
o3 = {};
// 9271
f637880758_0.returns.push(o3);
// 9272
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9273
f637880758_541.returns.push(1373482802327);
// 9274
o3 = {};
// 9275
f637880758_0.returns.push(o3);
// 9276
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9277
f637880758_541.returns.push(1373482802327);
// 9278
o3 = {};
// 9279
f637880758_0.returns.push(o3);
// 9280
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9281
f637880758_541.returns.push(1373482802332);
// 9282
o3 = {};
// 9283
f637880758_0.returns.push(o3);
// 9284
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9285
f637880758_541.returns.push(1373482802332);
// 9286
o3 = {};
// 9287
f637880758_0.returns.push(o3);
// 9288
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9289
f637880758_541.returns.push(1373482802332);
// 9290
o3 = {};
// 9291
f637880758_0.returns.push(o3);
// 9292
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9293
f637880758_541.returns.push(1373482802332);
// 9294
o3 = {};
// 9295
f637880758_0.returns.push(o3);
// 9296
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9297
f637880758_541.returns.push(1373482802332);
// 9298
o3 = {};
// 9299
f637880758_0.returns.push(o3);
// 9300
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9301
f637880758_541.returns.push(1373482802332);
// 9302
o3 = {};
// 9303
f637880758_0.returns.push(o3);
// 9304
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9305
f637880758_541.returns.push(1373482802333);
// 9306
o3 = {};
// 9307
f637880758_0.returns.push(o3);
// 9308
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9309
f637880758_541.returns.push(1373482802333);
// 9310
o3 = {};
// 9311
f637880758_0.returns.push(o3);
// 9312
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9313
f637880758_541.returns.push(1373482802333);
// 9314
o3 = {};
// 9315
f637880758_0.returns.push(o3);
// 9316
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9317
f637880758_541.returns.push(1373482802334);
// 9318
o3 = {};
// 9319
f637880758_0.returns.push(o3);
// 9320
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9321
f637880758_541.returns.push(1373482802334);
// 9322
o3 = {};
// 9323
f637880758_0.returns.push(o3);
// 9324
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9325
f637880758_541.returns.push(1373482802334);
// 9326
o3 = {};
// 9327
f637880758_0.returns.push(o3);
// 9328
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9329
f637880758_541.returns.push(1373482802334);
// 9330
o3 = {};
// 9331
f637880758_0.returns.push(o3);
// 9332
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9333
f637880758_541.returns.push(1373482802334);
// 9334
o3 = {};
// 9335
f637880758_0.returns.push(o3);
// 9336
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9337
f637880758_541.returns.push(1373482802335);
// 9338
o3 = {};
// 9339
f637880758_0.returns.push(o3);
// 9340
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9341
f637880758_541.returns.push(1373482802335);
// 9342
o3 = {};
// 9343
f637880758_0.returns.push(o3);
// 9344
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9345
f637880758_541.returns.push(1373482802361);
// 9346
o3 = {};
// 9347
f637880758_0.returns.push(o3);
// 9348
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9349
f637880758_541.returns.push(1373482802361);
// 9350
o3 = {};
// 9351
f637880758_0.returns.push(o3);
// 9352
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9353
f637880758_541.returns.push(1373482802361);
// 9354
o3 = {};
// 9355
f637880758_0.returns.push(o3);
// 9356
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9357
f637880758_541.returns.push(1373482802361);
// 9358
o3 = {};
// 9359
f637880758_0.returns.push(o3);
// 9360
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9361
f637880758_541.returns.push(1373482802361);
// 9362
o3 = {};
// 9363
f637880758_0.returns.push(o3);
// 9364
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9365
f637880758_541.returns.push(1373482802361);
// 9366
o3 = {};
// 9367
f637880758_0.returns.push(o3);
// 9368
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9369
f637880758_541.returns.push(1373482802362);
// 9370
o3 = {};
// 9371
f637880758_0.returns.push(o3);
// 9372
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9373
f637880758_541.returns.push(1373482802362);
// 9374
o3 = {};
// 9375
f637880758_0.returns.push(o3);
// 9376
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9377
f637880758_541.returns.push(1373482802363);
// 9378
o3 = {};
// 9379
f637880758_0.returns.push(o3);
// 9380
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9381
f637880758_541.returns.push(1373482802363);
// 9382
o3 = {};
// 9383
f637880758_0.returns.push(o3);
// 9384
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9385
f637880758_541.returns.push(1373482802363);
// 9386
o3 = {};
// 9387
f637880758_0.returns.push(o3);
// 9388
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9389
f637880758_541.returns.push(1373482802366);
// 9390
o3 = {};
// 9391
f637880758_0.returns.push(o3);
// 9392
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9393
f637880758_541.returns.push(1373482802366);
// 9394
o3 = {};
// 9395
f637880758_0.returns.push(o3);
// 9396
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9397
f637880758_541.returns.push(1373482802366);
// 9398
o3 = {};
// 9399
f637880758_0.returns.push(o3);
// 9400
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9401
f637880758_541.returns.push(1373482802379);
// 9402
o3 = {};
// 9403
f637880758_0.returns.push(o3);
// 9404
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9405
f637880758_541.returns.push(1373482802379);
// 9406
o3 = {};
// 9407
f637880758_0.returns.push(o3);
// 9408
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9409
f637880758_541.returns.push(1373482802379);
// 9410
o3 = {};
// 9411
f637880758_0.returns.push(o3);
// 9412
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9413
f637880758_541.returns.push(1373482802380);
// 9414
o3 = {};
// 9415
f637880758_0.returns.push(o3);
// 9416
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9417
f637880758_541.returns.push(1373482802380);
// 9418
o3 = {};
// 9419
f637880758_0.returns.push(o3);
// 9420
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9421
f637880758_541.returns.push(1373482802381);
// 9422
o3 = {};
// 9423
f637880758_0.returns.push(o3);
// 9424
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9425
f637880758_541.returns.push(1373482802381);
// 9426
o3 = {};
// 9427
f637880758_0.returns.push(o3);
// 9428
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9429
f637880758_541.returns.push(1373482802384);
// 9430
o3 = {};
// 9431
f637880758_0.returns.push(o3);
// 9432
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9433
f637880758_541.returns.push(1373482802384);
// 9434
o3 = {};
// 9435
f637880758_0.returns.push(o3);
// 9436
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9437
f637880758_541.returns.push(1373482802384);
// 9438
o3 = {};
// 9439
f637880758_0.returns.push(o3);
// 9440
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9441
f637880758_541.returns.push(1373482802384);
// 9442
o3 = {};
// 9443
f637880758_0.returns.push(o3);
// 9444
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9445
f637880758_541.returns.push(1373482802388);
// 9446
o3 = {};
// 9447
f637880758_0.returns.push(o3);
// 9448
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9449
f637880758_541.returns.push(1373482802389);
// 9450
o3 = {};
// 9451
f637880758_0.returns.push(o3);
// 9452
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9453
f637880758_541.returns.push(1373482802389);
// 9454
o3 = {};
// 9455
f637880758_0.returns.push(o3);
// 9456
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9457
f637880758_541.returns.push(1373482802390);
// 9458
o3 = {};
// 9459
f637880758_0.returns.push(o3);
// 9460
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9461
f637880758_541.returns.push(1373482802391);
// 9462
o3 = {};
// 9463
f637880758_0.returns.push(o3);
// 9464
o3.getTime = f637880758_541;
// undefined
o3 = null;
// 9465
f637880758_541.returns.push(1373482802391);
// 9467
o3 = {};
// 9468
f637880758_522.returns.push(o3);
// 9469
o3.parentNode = o10;
// 9470
o3.id = "init-data";
// 9471
o3.type = "hidden";
// 9472
o3.nodeName = "INPUT";
// 9473
o3.value = "{\"baseFoucClass\":\"swift-loading\",\"htmlFoucClassNames\":\"swift-loading\",\"htmlClassNames\":\"\",\"macawSwift\":true,\"assetsBasePath\":\"https:\\/\\/abs.twimg.com\\/a\\/1373252541\\/\",\"environment\":\"production\",\"sandboxes\":{\"jsonp\":\"https:\\/\\/abs.twimg.com\\/a\\/1373252541\\/jsonp_sandbox.html\",\"detailsPane\":\"https:\\/\\/abs.twimg.com\\/a\\/1373252541\\/details_pane_content_sandbox.html\"},\"formAuthenticityToken\":\"965ea2b8839017a58e9a645d5e1562d0329b13b9\",\"loggedIn\":false,\"screenName\":null,\"userId\":null,\"scribeBufferSize\":3,\"pageName\":\"search\",\"sectionName\":\"search\",\"scribeParameters\":{},\"internalReferer\":\"\\/search-home\",\"experiments\":{},\"geoEnabled\":false,\"typeaheadData\":{\"accounts\":{\"localQueriesEnabled\":false,\"remoteQueriesEnabled\":false,\"enabled\":false,\"limit\":6},\"trendLocations\":{\"enabled\":false},\"savedSearches\":{\"enabled\":false,\"items\":[]},\"dmAccounts\":{\"enabled\":false,\"localQueriesEnabled\":false,\"onlyDMable\":true,\"remoteQueriesEnabled\":false},\"topics\":{\"enabled\":false,\"localQueriesEnabled\":false,\"prefetchLimit\":500,\"remoteQueriesEnabled\":false,\"remoteQueriesOverrideLocal\":false,\"limit\":4},\"recentSearches\":{\"enabled\":false},\"contextHelpers\":{\"enabled\":false,\"page_name\":\"search\",\"section_name\":\"search\",\"screen_name\":null},\"hashtags\":{\"enabled\":false,\"localQueriesEnabled\":false,\"prefetchLimit\":500,\"remoteQueriesEnabled\":false},\"showSearchAccountSocialContext\":false,\"showTweetComposeAccountSocialContext\":false,\"showDMAccountSocialContext\":false,\"showTypeaheadTopicSocialContext\":false,\"showDebugInfo\":false,\"useThrottle\":true,\"accountsOnTop\":false,\"remoteDebounceInterval\":300,\"remoteThrottleInterval\":300,\"tweetContextEnabled\":false},\"pushStatePageLimit\":500000,\"routes\":{\"profile\":\"\\/\"},\"pushState\":true,\"viewContainer\":\"#page-container\",\"asyncSocialProof\":true,\"dragAndDropPhotoUpload\":true,\"href\":\"\\/search?q=%23javascript\",\"searchPathWithQuery\":\"\\/search?q=query&src=typd\",\"mark_old_dms_read\":false,\"dmReadStateSync\":false,\"timelineCardsGallery\":true,\"mediaGrid\":true,\"deciders\":{\"oembed_use_macaw_syndication\":true,\"preserve_scroll_position\":false,\"pushState\":true},\"permalinkCardsGallery\":false,\"notifications_dm\":false,\"notifications_spoonbill\":false,\"notifications_timeline\":false,\"notifications_dm_poll_scale\":60,\"researchExperiments\":{},\"latest_incoming_direct_message_id\":null,\"smsDeviceVerified\":null,\"deviceEnabled\":false,\"hasPushDevice\":null,\"universalSearch\":false,\"query\":\"#javascript\",\"showAllInlineMedia\":false,\"search_endpoint\":\"\\/i\\/search\\/timeline?type=relevance\",\"help_pips_decider\":false,\"cardsGallery\":true,\"oneboxType\":\"\",\"wtfRefreshOnNewTweets\":false,\"wtfOptions\":{\"pc\":true,\"connections\":true,\"limit\":3,\"display_location\":\"wtf-component\",\"dismissable\":true},\"trendsCacheKey\":null,\"decider_personalized_trends\":true,\"trendsLocationDialogEnabled\":true,\"pollingOptions\":{\"focusedInterval\":30000,\"blurredInterval\":300000,\"backoffFactor\":2,\"backoffEmptyResponseLimit\":2,\"pauseAfterBackoff\":true,\"resumeItemCount\":40},\"initialState\":{\"title\":\"Twitter \\/ Search - #javascript\",\"section\":null,\"module\":\"app\\/pages\\/search\\/search\",\"cache_ttl\":300,\"body_class_names\":\"t1 logged-out\",\"doc_class_names\":null,\"page_container_class_names\":\"wrapper wrapper-search white\",\"ttft_navigation\":false}}";
// undefined
o3 = null;
// 9474
// 9475
// 9476
// 9477
// undefined
o7 = null;
// 9479
o0.jQuery = void 0;
// 9480
o0.jquery = void 0;
// 9484
o0.nodeName = "#document";
// undefined
fo637880758_1_jQuery18309834662606008351 = function() { return fo637880758_1_jQuery18309834662606008351.returns[fo637880758_1_jQuery18309834662606008351.inst++]; };
fo637880758_1_jQuery18309834662606008351.returns = [];
fo637880758_1_jQuery18309834662606008351.inst = 0;
defineGetter(o0, "jQuery18309834662606008351", fo637880758_1_jQuery18309834662606008351, undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(void 0);
// 9488
// 9491
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9500
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9513
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9522
f637880758_473.returns.push(undefined);
// 9523
o1.setItem = f637880758_746;
// 9524
f637880758_746.returns.push(undefined);
// 9525
o1.getItem = f637880758_579;
// 9526
f637880758_579.returns.push("test");
// 9527
o1.removeItem = f637880758_747;
// undefined
o1 = null;
// 9528
f637880758_747.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9539
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9548
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9557
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9566
f637880758_473.returns.push(undefined);
// 9567
f637880758_7.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9580
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9589
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9598
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9607
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9616
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9625
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9634
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9643
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9652
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9666
f637880758_473.returns.push(undefined);
// 9669
f637880758_473.returns.push(undefined);
// 9672
f637880758_473.returns.push(undefined);
// 9675
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9685
f637880758_473.returns.push(undefined);
// 9688
f637880758_473.returns.push(undefined);
// 9691
f637880758_473.returns.push(undefined);
// 9694
f637880758_473.returns.push(undefined);
// 9697
f637880758_473.returns.push(undefined);
// 9700
f637880758_473.returns.push(undefined);
// 9703
f637880758_473.returns.push(undefined);
// 9706
f637880758_473.returns.push(undefined);
// 9709
f637880758_473.returns.push(undefined);
// 9712
f637880758_473.returns.push(undefined);
// 9715
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9729
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9739
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9749
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9759
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9769
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9779
f637880758_473.returns.push(undefined);
// 9782
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9792
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9802
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9812
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9836
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9846
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9856
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9871
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9890
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9899
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9912
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9921
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9930
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9945
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9954
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9969
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9978
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9987
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 9997
f637880758_473.returns.push(undefined);
// 9998
f637880758_2577 = function() { return f637880758_2577.returns[f637880758_2577.inst++]; };
f637880758_2577.returns = [];
f637880758_2577.inst = 0;
// 9999
o4.pushState = f637880758_2577;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10010
f637880758_7.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10025
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10034
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10060
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10069
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10079
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10089
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10123
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10132
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10151
f637880758_473.returns.push(undefined);
// 10153
o1 = {};
// 10154
f637880758_522.returns.push(o1);
// 10155
o1.parentNode = o10;
// 10156
o1.id = "message-drawer";
// 10157
o1.jQuery = void 0;
// 10158
o1.jquery = void 0;
// 10159
o1.nodeType = 1;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10169
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10179
f637880758_473.returns.push(undefined);
// 10182
o1.nodeName = "DIV";
// 10185
o1.jQuery18309834662606008351 = void 0;
// 10186
// 10187
o1.JSBNG__addEventListener = f637880758_473;
// undefined
o1 = null;
// 10189
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10217
f637880758_473.returns.push(undefined);
// 10220
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10230
f637880758_473.returns.push(undefined);
// 10233
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10243
f637880758_473.returns.push(undefined);
// 10246
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10256
f637880758_473.returns.push(undefined);
// 10259
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10276
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10286
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10296
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10306
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10316
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10326
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10336
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10346
f637880758_473.returns.push(undefined);
// 10349
f637880758_473.returns.push(undefined);
// 10352
f637880758_473.returns.push(undefined);
// 10355
f637880758_473.returns.push(undefined);
// 10358
f637880758_473.returns.push(undefined);
// 10361
f637880758_473.returns.push(undefined);
// 10368
o1 = {};
// 10369
f637880758_562.returns.push(o1);
// 10370
o3 = {};
// 10371
o1["0"] = o3;
// 10372
o1["1"] = void 0;
// undefined
o1 = null;
// 10373
o3.jQuery = void 0;
// 10374
o3.jquery = void 0;
// 10375
o3.nodeType = 1;
// 10378
o3.nodeName = "LI";
// 10381
o3.jQuery18309834662606008351 = void 0;
// 10382
// 10383
o3.JSBNG__addEventListener = f637880758_473;
// 10385
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10402
f637880758_473.returns.push(undefined);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10412
f637880758_473.returns.push(undefined);
// 10414
f637880758_522.returns.push(null);
// 10416
o1 = {};
// 10417
f637880758_522.returns.push(o1);
// 10418
o5 = {};
// 10419
o1.parentNode = o5;
// 10420
o1.id = "global-nav-search";
// 10421
o1.jQuery = void 0;
// 10422
o1.jquery = void 0;
// 10423
o1.nodeType = 1;
// 10425
o1.ownerDocument = o0;
// 10431
o7 = {};
// 10432
f637880758_522.returns.push(o7);
// 10434
o7.parentNode = o1;
// 10435
o7.id = "search-query";
// 10443
o8 = {};
// 10444
f637880758_522.returns.push(o8);
// 10446
o8.parentNode = o1;
// 10447
o8.id = "search-query-hint";
// undefined
o8 = null;
// 10448
o7.nodeType = 1;
// 10450
o7.type = "text";
// 10451
o7.nodeName = "INPUT";
// 10452
// 10455
o1.nodeName = "FORM";
// undefined
fo637880758_2581_jQuery18309834662606008351 = function() { return fo637880758_2581_jQuery18309834662606008351.returns[fo637880758_2581_jQuery18309834662606008351.inst++]; };
fo637880758_2581_jQuery18309834662606008351.returns = [];
fo637880758_2581_jQuery18309834662606008351.inst = 0;
defineGetter(o1, "jQuery18309834662606008351", fo637880758_2581_jQuery18309834662606008351, undefined);
// undefined
fo637880758_2581_jQuery18309834662606008351.returns.push(void 0);
// 10459
// 10460
o1.JSBNG__addEventListener = f637880758_473;
// 10462
f637880758_473.returns.push(undefined);
// undefined
fo637880758_2581_jQuery18309834662606008351.returns.push(90);
// 10471
f637880758_473.returns.push(undefined);
// undefined
fo637880758_2583_jQuery18309834662606008351 = function() { return fo637880758_2583_jQuery18309834662606008351.returns[fo637880758_2583_jQuery18309834662606008351.inst++]; };
fo637880758_2583_jQuery18309834662606008351.returns = [];
fo637880758_2583_jQuery18309834662606008351.inst = 0;
defineGetter(o7, "jQuery18309834662606008351", fo637880758_2583_jQuery18309834662606008351, undefined);
// undefined
fo637880758_2583_jQuery18309834662606008351.returns.push(void 0);
// 10478
// 10479
o7.JSBNG__addEventListener = f637880758_473;
// 10481
f637880758_473.returns.push(undefined);
// undefined
fo637880758_2583_jQuery18309834662606008351.returns.push(93);
// 10490
f637880758_473.returns.push(undefined);
// undefined
fo637880758_2581_jQuery18309834662606008351.returns.push(90);
// 10499
f637880758_473.returns.push(undefined);
// 10504
o1.getElementsByClassName = f637880758_512;
// 10506
o8 = {};
// 10507
f637880758_512.returns.push(o8);
// 10508
o9 = {};
// 10509
o8["0"] = o9;
// 10510
o8["1"] = void 0;
// undefined
o8 = null;
// 10511
o9.nodeType = 1;
// 10513
o9.nodeName = "SPAN";
// 10516
o9.jQuery18309834662606008351 = void 0;
// 10517
// 10518
o9.JSBNG__addEventListener = f637880758_473;
// undefined
o9 = null;
// 10520
f637880758_473.returns.push(undefined);
// 10522
f637880758_522.returns.push(o1);
// undefined
fo637880758_2581_jQuery18309834662606008351.returns.push(90);
// 10536
f637880758_473.returns.push(undefined);
// undefined
fo637880758_2581_jQuery18309834662606008351.returns.push(90);
// 10545
f637880758_473.returns.push(undefined);
// 10548
f637880758_473.returns.push(undefined);
// 10550
f637880758_522.returns.push(o1);
// 10563
f637880758_522.returns.push(o7);
// 10567
o7.ownerDocument = o0;
// 10570
f637880758_529.returns.push(true);
// 10574
f637880758_529.returns.push(false);
// 10581
o8 = {};
// 10582
f637880758_512.returns.push(o8);
// 10583
o9 = {};
// 10584
o8["0"] = o9;
// 10585
o8["1"] = void 0;
// undefined
o8 = null;
// 10587
o8 = {};
// 10588
f637880758_474.returns.push(o8);
// 10589
o8.setAttribute = f637880758_476;
// 10590
f637880758_476.returns.push(undefined);
// 10591
o8.JSBNG__oninput = null;
// undefined
o8 = null;
// 10592
o9.nodeType = 1;
// 10593
o9.getAttribute = f637880758_472;
// 10594
o9.ownerDocument = o0;
// 10597
o9.setAttribute = f637880758_476;
// undefined
o9 = null;
// 10598
f637880758_476.returns.push(undefined);
// undefined
fo637880758_2583_jQuery18309834662606008351.returns.push(93);
// 10607
f637880758_473.returns.push(undefined);
// 10610
f637880758_473.returns.push(undefined);
// 10613
f637880758_473.returns.push(undefined);
// 10616
f637880758_473.returns.push(undefined);
// undefined
fo637880758_2583_jQuery18309834662606008351.returns.push(93);
// 10625
f637880758_473.returns.push(undefined);
// undefined
fo637880758_2581_jQuery18309834662606008351.returns.push(90);
// 10634
f637880758_473.returns.push(undefined);
// undefined
fo637880758_2583_jQuery18309834662606008351.returns.push(93);
// undefined
fo637880758_2581_jQuery18309834662606008351.returns.push(90);
// 10649
f637880758_473.returns.push(undefined);
// 10657
// 10658
o8 = {};
// undefined
o8 = null;
// 10659
o0.body = o10;
// 10661
o8 = {};
// 10662
f637880758_550.returns.push(o8);
// 10663
o8["0"] = o10;
// undefined
o8 = null;
// 10665
o8 = {};
// 10666
f637880758_474.returns.push(o8);
// 10667
o9 = {};
// 10668
o8.style = o9;
// 10669
// 10670
o10.insertBefore = f637880758_517;
// 10671
o11 = {};
// 10672
o10.firstChild = o11;
// undefined
o11 = null;
// 10673
f637880758_517.returns.push(o8);
// 10675
o11 = {};
// 10676
f637880758_474.returns.push(o11);
// 10677
o8.appendChild = f637880758_482;
// 10678
f637880758_482.returns.push(o11);
// 10679
// 10680
o11.getElementsByTagName = f637880758_477;
// 10681
o12 = {};
// 10682
f637880758_477.returns.push(o12);
// 10683
o13 = {};
// 10684
o12["0"] = o13;
// 10685
o14 = {};
// 10686
o13.style = o14;
// 10687
// 10689
o13.offsetHeight = 0;
// undefined
o13 = null;
// 10692
// undefined
o14 = null;
// 10693
o13 = {};
// 10694
o12["1"] = o13;
// undefined
o12 = null;
// 10695
o12 = {};
// 10696
o13.style = o12;
// undefined
o13 = null;
// 10697
// undefined
o12 = null;
// 10700
// 10701
o12 = {};
// 10702
o11.style = o12;
// 10703
// undefined
fo637880758_2595_offsetWidth = function() { return fo637880758_2595_offsetWidth.returns[fo637880758_2595_offsetWidth.inst++]; };
fo637880758_2595_offsetWidth.returns = [];
fo637880758_2595_offsetWidth.inst = 0;
defineGetter(o11, "offsetWidth", fo637880758_2595_offsetWidth, undefined);
// undefined
fo637880758_2595_offsetWidth.returns.push(4);
// 10705
o10.offsetTop = 0;
// 10706
o13 = {};
// 10707
f637880758_4.returns.push(o13);
// 10708
o13.JSBNG__top = "1%";
// undefined
o13 = null;
// 10709
o13 = {};
// 10710
f637880758_4.returns.push(o13);
// 10711
o13.width = "4px";
// undefined
o13 = null;
// 10713
o13 = {};
// 10714
f637880758_474.returns.push(o13);
// 10715
o14 = {};
// 10716
o13.style = o14;
// 10718
// 10719
// 10722
// 10723
// undefined
o14 = null;
// 10725
// 10726
o11.appendChild = f637880758_482;
// 10727
f637880758_482.returns.push(o13);
// undefined
o13 = null;
// 10728
o13 = {};
// 10729
f637880758_4.returns.push(o13);
// 10730
o13.marginRight = "0px";
// undefined
o13 = null;
// 10732
o12.zoom = "";
// 10733
// 10735
// undefined
fo637880758_2595_offsetWidth.returns.push(2);
// 10738
// 10740
// undefined
o12 = null;
// 10741
// 10742
o12 = {};
// 10743
o11.firstChild = o12;
// undefined
o11 = null;
// 10744
o11 = {};
// 10745
o12.style = o11;
// undefined
o12 = null;
// 10746
// undefined
o11 = null;
// undefined
fo637880758_2595_offsetWidth.returns.push(3);
// 10749
// undefined
o9 = null;
// 10750
o10.removeChild = f637880758_501;
// 10751
f637880758_501.returns.push(o8);
// undefined
o8 = null;
// 10755
o8 = {};
// 10756
f637880758_0.returns.push(o8);
// 10757
o8.getTime = f637880758_541;
// undefined
o8 = null;
// 10758
f637880758_541.returns.push(1373482802558);
// 10759
o0.window = void 0;
// 10760
o0.parentNode = null;
// 10762
o0.defaultView = ow637880758;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10767
o0.JSBNG__onready = void 0;
// 10768
ow637880758.JSBNG__onready = undefined;
// 10771
o0.ready = void 0;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10778
o8 = {};
// 10779
o8.type = "popstate";
// 10780
o8.jQuery18309834662606008351 = void 0;
// 10784
o8.defaultPrevented = false;
// 10785
o8.returnValue = true;
// 10786
o8.getPreventDefault = void 0;
// 10787
o8.timeStamp = 1373482802561;
// 10788
o8.which = void 0;
// 10789
o8.view = void 0;
// 10791
o8.target = ow637880758;
// 10792
o8.shiftKey = void 0;
// 10793
o8.relatedTarget = void 0;
// 10794
o8.metaKey = void 0;
// 10795
o8.eventPhase = 2;
// 10796
o8.currentTarget = ow637880758;
// 10797
o8.ctrlKey = void 0;
// 10798
o8.cancelable = true;
// 10799
o8.bubbles = false;
// 10800
o8.altKey = void 0;
// 10801
o8.srcElement = ow637880758;
// 10802
o8.relatedNode = void 0;
// 10803
o8.attrName = void 0;
// 10804
o8.attrChange = void 0;
// 10805
o8.state = null;
// undefined
o8 = null;
// 10806
o8 = {};
// 10807
o8.type = "mouseover";
// 10808
o8.jQuery18309834662606008351 = void 0;
// 10812
o8.defaultPrevented = false;
// 10813
o8.returnValue = true;
// 10814
o8.getPreventDefault = void 0;
// 10815
o8.timeStamp = 1373482818186;
// 10816
o9 = {};
// 10817
o8.toElement = o9;
// 10818
o8.screenY = 669;
// 10819
o8.screenX = 163;
// 10820
o8.pageY = 570;
// 10821
o8.pageX = 151;
// 10822
o8.offsetY = 516;
// 10823
o8.offsetX = 45;
// 10824
o8.fromElement = null;
// 10825
o8.clientY = 570;
// 10826
o8.clientX = 151;
// 10827
o8.buttons = void 0;
// 10828
o8.button = 0;
// 10829
o8.which = 0;
// 10830
o8.view = ow637880758;
// 10832
o8.target = o9;
// 10833
o8.shiftKey = false;
// 10834
o8.relatedTarget = null;
// 10835
o8.metaKey = false;
// 10836
o8.eventPhase = 3;
// 10837
o8.currentTarget = o0;
// 10838
o8.ctrlKey = false;
// 10839
o8.cancelable = true;
// 10840
o8.bubbles = true;
// 10841
o8.altKey = false;
// 10842
o8.srcElement = o9;
// 10843
o8.relatedNode = void 0;
// 10844
o8.attrName = void 0;
// 10845
o8.attrChange = void 0;
// undefined
o8 = null;
// 10846
o9.nodeType = 1;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10853
o9.disabled = void 0;
// 10858
o9.className = "dashboard";
// 10859
o8 = {};
// 10860
o9.parentNode = o8;
// 10861
o8.disabled = void 0;
// 10866
o8.className = "wrapper wrapper-search white";
// 10867
o11 = {};
// 10868
o8.parentNode = o11;
// 10869
o11.disabled = void 0;
// 10874
o11.className = "";
// 10875
o11.getAttribute = f637880758_472;
// 10877
f637880758_472.returns.push(null);
// 10878
o12 = {};
// 10879
o11.parentNode = o12;
// 10880
o12.disabled = void 0;
// 10885
o12.className = "";
// 10886
o12.getAttribute = f637880758_472;
// 10888
f637880758_472.returns.push("");
// 10889
o12.parentNode = o10;
// 10890
o10.disabled = void 0;
// 10895
o10.className = "t1 logged-out";
// 10896
o10.parentNode = o6;
// 10897
o6.disabled = void 0;
// 10902
o6.parentNode = o0;
// 10903
o13 = {};
// 10904
o13.type = "mouseout";
// 10905
o13.jQuery18309834662606008351 = void 0;
// 10909
o13.defaultPrevented = false;
// 10910
o13.returnValue = true;
// 10911
o13.getPreventDefault = void 0;
// 10912
o13.timeStamp = 1373482818196;
// 10913
o14 = {};
// 10914
o13.toElement = o14;
// 10915
o13.screenY = 630;
// 10916
o13.screenX = 174;
// 10917
o13.pageY = 531;
// 10918
o13.pageX = 162;
// 10919
o13.offsetY = 477;
// 10920
o13.offsetX = 56;
// 10921
o13.fromElement = o9;
// 10922
o13.clientY = 531;
// 10923
o13.clientX = 162;
// 10924
o13.buttons = void 0;
// 10925
o13.button = 0;
// 10926
o13.which = 0;
// 10927
o13.view = ow637880758;
// 10929
o13.target = o9;
// 10930
o13.shiftKey = false;
// 10931
o13.relatedTarget = o14;
// 10932
o13.metaKey = false;
// 10933
o13.eventPhase = 3;
// 10934
o13.currentTarget = o0;
// 10935
o13.ctrlKey = false;
// 10936
o13.cancelable = true;
// 10937
o13.bubbles = true;
// 10938
o13.altKey = false;
// 10939
o13.srcElement = o9;
// 10940
o13.relatedNode = void 0;
// 10941
o13.attrName = void 0;
// 10942
o13.attrChange = void 0;
// undefined
o13 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 10972
f637880758_472.returns.push(null);
// 10982
f637880758_472.returns.push("");
// 10997
o13 = {};
// 10998
o13.type = "mouseover";
// 10999
o13.jQuery18309834662606008351 = void 0;
// 11003
o13.defaultPrevented = false;
// 11004
o13.returnValue = true;
// 11005
o13.getPreventDefault = void 0;
// 11006
o13.timeStamp = 1373482818237;
// 11007
o13.toElement = o14;
// 11008
o13.screenY = 630;
// 11009
o13.screenX = 174;
// 11010
o13.pageY = 531;
// 11011
o13.pageX = 162;
// 11012
o13.offsetY = 10;
// 11013
o13.offsetX = 43;
// 11014
o13.fromElement = o9;
// 11015
o13.clientY = 531;
// 11016
o13.clientX = 162;
// 11017
o13.buttons = void 0;
// 11018
o13.button = 0;
// 11019
o13.which = 0;
// 11020
o13.view = ow637880758;
// 11022
o13.target = o14;
// 11023
o13.shiftKey = false;
// 11024
o13.relatedTarget = o9;
// 11025
o13.metaKey = false;
// 11026
o13.eventPhase = 3;
// 11027
o13.currentTarget = o0;
// 11028
o13.ctrlKey = false;
// 11029
o13.cancelable = true;
// 11030
o13.bubbles = true;
// 11031
o13.altKey = false;
// 11032
o13.srcElement = o14;
// 11033
o13.relatedNode = void 0;
// 11034
o13.attrName = void 0;
// 11035
o13.attrChange = void 0;
// undefined
o13 = null;
// 11036
o14.nodeType = 1;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 11043
o14.disabled = void 0;
// 11048
o14.className = "";
// 11049
o14.getAttribute = f637880758_472;
// 11051
f637880758_472.returns.push(null);
// 11052
o13 = {};
// 11053
o14.parentNode = o13;
// 11054
o13.disabled = void 0;
// 11059
o13.className = "";
// 11060
o13.getAttribute = f637880758_472;
// 11062
f637880758_472.returns.push(null);
// 11063
o15 = {};
// 11064
o13.parentNode = o15;
// undefined
o13 = null;
// 11065
o15.disabled = void 0;
// 11070
o15.className = "clearfix";
// 11071
o13 = {};
// 11072
o15.parentNode = o13;
// undefined
o15 = null;
// 11073
o13.disabled = void 0;
// 11078
o13.className = "flex-module-inner js-items-container";
// 11079
o15 = {};
// 11080
o13.parentNode = o15;
// undefined
o13 = null;
// 11081
o15.disabled = void 0;
// 11086
o15.className = "flex-module";
// 11087
o13 = {};
// 11088
o15.parentNode = o13;
// undefined
o15 = null;
// 11089
o13.disabled = void 0;
// 11094
o13.className = "module site-footer ";
// 11095
o13.parentNode = o9;
// undefined
o13 = null;
// 11118
f637880758_472.returns.push(null);
// 11128
f637880758_472.returns.push("");
// 11143
o13 = {};
// 11144
o13.type = "mouseout";
// 11145
o13.jQuery18309834662606008351 = void 0;
// 11149
o13.defaultPrevented = false;
// 11150
o13.returnValue = true;
// 11151
o13.getPreventDefault = void 0;
// 11152
o13.timeStamp = 1373482818270;
// 11153
o15 = {};
// 11154
o13.toElement = o15;
// 11155
o13.screenY = 435;
// 11156
o13.screenX = 217;
// 11157
o13.pageY = 336;
// 11158
o13.pageX = 205;
// 11159
o13.offsetY = -185;
// 11160
o13.offsetX = 86;
// 11161
o13.fromElement = o14;
// 11162
o13.clientY = 336;
// 11163
o13.clientX = 205;
// 11164
o13.buttons = void 0;
// 11165
o13.button = 0;
// 11166
o13.which = 0;
// 11167
o13.view = ow637880758;
// 11169
o13.target = o14;
// 11170
o13.shiftKey = false;
// 11171
o13.relatedTarget = o15;
// 11172
o13.metaKey = false;
// 11173
o13.eventPhase = 3;
// 11174
o13.currentTarget = o0;
// 11175
o13.ctrlKey = false;
// 11176
o13.cancelable = true;
// 11177
o13.bubbles = true;
// 11178
o13.altKey = false;
// 11179
o13.srcElement = o14;
// 11180
o13.relatedNode = void 0;
// 11181
o13.attrName = void 0;
// 11182
o13.attrChange = void 0;
// undefined
o13 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 11198
f637880758_472.returns.push(null);
// 11208
f637880758_472.returns.push(null);
// 11260
f637880758_472.returns.push(null);
// 11270
f637880758_472.returns.push("");
// 11285
o13 = {};
// 11286
o13.type = "mouseover";
// 11287
o13.jQuery18309834662606008351 = void 0;
// 11291
o13.defaultPrevented = false;
// 11292
o13.returnValue = true;
// 11293
o13.getPreventDefault = void 0;
// 11294
o13.timeStamp = 1373482818277;
// 11295
o13.toElement = o15;
// 11296
o13.screenY = 435;
// 11297
o13.screenX = 217;
// 11298
o13.pageY = 336;
// 11299
o13.pageX = 205;
// 11300
o13.offsetY = 1;
// 11301
o13.offsetX = 98;
// 11302
o13.fromElement = o14;
// 11303
o13.clientY = 336;
// 11304
o13.clientX = 205;
// 11305
o13.buttons = void 0;
// 11306
o13.button = 0;
// 11307
o13.which = 0;
// 11308
o13.view = ow637880758;
// 11310
o13.target = o15;
// 11311
o13.shiftKey = false;
// 11312
o13.relatedTarget = o14;
// undefined
o14 = null;
// 11313
o13.metaKey = false;
// 11314
o13.eventPhase = 3;
// 11315
o13.currentTarget = o0;
// 11316
o13.ctrlKey = false;
// 11317
o13.cancelable = true;
// 11318
o13.bubbles = true;
// 11319
o13.altKey = false;
// 11320
o13.srcElement = o15;
// 11321
o13.relatedNode = void 0;
// 11322
o13.attrName = void 0;
// 11323
o13.attrChange = void 0;
// undefined
o13 = null;
// 11324
o15.nodeType = 1;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 11331
o15.disabled = void 0;
// 11336
o15.className = "list-link js-nav";
// 11337
o13 = {};
// 11338
o15.parentNode = o13;
// 11339
o13.disabled = void 0;
// 11344
o13.className = "people ";
// 11345
o14 = {};
// 11346
o13.parentNode = o14;
// undefined
o13 = null;
// 11347
o14.disabled = void 0;
// 11352
o14.className = "js-nav-links";
// 11353
o13 = {};
// 11354
o14.parentNode = o13;
// undefined
o14 = null;
// 11355
o13.disabled = void 0;
// 11360
o13.className = "module";
// 11361
o13.parentNode = o9;
// undefined
o13 = null;
// 11384
f637880758_472.returns.push(null);
// 11394
f637880758_472.returns.push("");
// 11409
o13 = {};
// 11410
o13.type = "mouseout";
// 11411
o13.jQuery18309834662606008351 = void 0;
// 11415
o13.defaultPrevented = false;
// 11416
o13.returnValue = true;
// 11417
o13.getPreventDefault = void 0;
// 11418
o13.timeStamp = 1373482818286;
// 11419
o14 = {};
// 11420
o13.toElement = o14;
// 11421
o13.screenY = 321;
// 11422
o13.screenX = 254;
// 11423
o13.pageY = 222;
// 11424
o13.pageX = 242;
// 11425
o13.offsetY = -113;
// 11426
o13.offsetX = 135;
// 11427
o13.fromElement = o15;
// 11428
o13.clientY = 222;
// 11429
o13.clientX = 242;
// 11430
o13.buttons = void 0;
// 11431
o13.button = 0;
// 11432
o13.which = 0;
// 11433
o13.view = ow637880758;
// 11435
o13.target = o15;
// 11436
o13.shiftKey = false;
// 11437
o13.relatedTarget = o14;
// 11438
o13.metaKey = false;
// 11439
o13.eventPhase = 3;
// 11440
o13.currentTarget = o0;
// 11441
o13.ctrlKey = false;
// 11442
o13.cancelable = true;
// 11443
o13.bubbles = true;
// 11444
o13.altKey = false;
// 11445
o13.srcElement = o15;
// 11446
o13.relatedNode = void 0;
// 11447
o13.attrName = void 0;
// 11448
o13.attrChange = void 0;
// undefined
o13 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 11506
f637880758_472.returns.push(null);
// 11516
f637880758_472.returns.push("");
// 11531
o13 = {};
// 11532
o13.type = "mouseover";
// 11533
o13.jQuery18309834662606008351 = void 0;
// 11537
o13.defaultPrevented = false;
// 11538
o13.returnValue = true;
// 11539
o13.getPreventDefault = void 0;
// 11540
o13.timeStamp = 1373482818293;
// 11541
o13.toElement = o14;
// 11542
o13.screenY = 321;
// 11543
o13.screenX = 254;
// 11544
o13.pageY = 222;
// 11545
o13.pageX = 242;
// 11546
o13.offsetY = 11;
// 11547
o13.offsetX = 123;
// 11548
o13.fromElement = o15;
// 11549
o13.clientY = 222;
// 11550
o13.clientX = 242;
// 11551
o13.buttons = void 0;
// 11552
o13.button = 0;
// 11553
o13.which = 0;
// 11554
o13.view = ow637880758;
// 11556
o13.target = o14;
// 11557
o13.shiftKey = false;
// 11558
o13.relatedTarget = o15;
// undefined
o15 = null;
// 11559
o13.metaKey = false;
// 11560
o13.eventPhase = 3;
// 11561
o13.currentTarget = o0;
// 11562
o13.ctrlKey = false;
// 11563
o13.cancelable = true;
// 11564
o13.bubbles = true;
// 11565
o13.altKey = false;
// 11566
o13.srcElement = o14;
// 11567
o13.relatedNode = void 0;
// 11568
o13.attrName = void 0;
// 11569
o13.attrChange = void 0;
// undefined
o13 = null;
// 11570
o14.nodeType = 1;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 11577
o14.disabled = false;
// 11582
o14.className = "";
// 11583
o14.getAttribute = f637880758_472;
// 11585
f637880758_472.returns.push(null);
// 11586
o13 = {};
// 11587
o14.parentNode = o13;
// 11588
o13.disabled = void 0;
// 11593
o13.className = "holding password";
// 11594
o15 = {};
// 11595
o13.parentNode = o15;
// undefined
o13 = null;
// 11596
o15.disabled = void 0;
// 11601
o15.className = "clearfix signup";
// 11602
o13 = {};
// 11603
o15.parentNode = o13;
// 11604
o13.disabled = void 0;
// 11609
o13.className = "flex-module";
// 11610
o16 = {};
// 11611
o13.parentNode = o16;
// 11612
o16.disabled = void 0;
// 11617
o16.className = "module signup-call-out search-signup-call-out";
// 11618
o16.parentNode = o9;
// undefined
o16 = null;
// undefined
o9 = null;
// 11641
f637880758_472.returns.push(null);
// 11651
f637880758_472.returns.push("");
// 11666
o9 = {};
// 11667
o9.type = "mouseout";
// 11668
o9.jQuery18309834662606008351 = void 0;
// 11672
o9.defaultPrevented = false;
// 11673
o9.returnValue = true;
// 11674
o9.getPreventDefault = void 0;
// 11675
o9.timeStamp = 1373482818321;
// 11676
o16 = {};
// 11677
o9.toElement = o16;
// 11678
o9.screenY = 237;
// 11679
o9.screenX = 342;
// 11680
o9.pageY = 138;
// 11681
o9.pageX = 330;
// 11682
o9.offsetY = -73;
// 11683
o9.offsetX = 211;
// 11684
o9.fromElement = o14;
// 11685
o9.clientY = 138;
// 11686
o9.clientX = 330;
// 11687
o9.buttons = void 0;
// 11688
o9.button = 0;
// 11689
o9.which = 0;
// 11690
o9.view = ow637880758;
// 11692
o9.target = o14;
// 11693
o9.shiftKey = false;
// 11694
o9.relatedTarget = o16;
// 11695
o9.metaKey = false;
// 11696
o9.eventPhase = 3;
// 11697
o9.currentTarget = o0;
// 11698
o9.ctrlKey = false;
// 11699
o9.cancelable = true;
// 11700
o9.bubbles = true;
// 11701
o9.altKey = false;
// 11702
o9.srcElement = o14;
// 11703
o9.relatedNode = void 0;
// 11704
o9.attrName = void 0;
// 11705
o9.attrChange = void 0;
// undefined
o9 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 11721
f637880758_472.returns.push(null);
// 11773
f637880758_472.returns.push(null);
// 11783
f637880758_472.returns.push("");
// 11798
o9 = {};
// 11799
o9.type = "mouseover";
// 11800
o9.jQuery18309834662606008351 = void 0;
// 11804
o9.defaultPrevented = false;
// 11805
o9.returnValue = true;
// 11806
o9.getPreventDefault = void 0;
// 11807
o9.timeStamp = 1373482818332;
// 11808
o9.toElement = o16;
// 11809
o9.screenY = 237;
// 11810
o9.screenX = 342;
// 11811
o9.pageY = 138;
// 11812
o9.pageX = 330;
// 11813
o9.offsetY = 3;
// 11814
o9.offsetX = 211;
// 11815
o9.fromElement = o14;
// 11816
o9.clientY = 138;
// 11817
o9.clientX = 330;
// 11818
o9.buttons = void 0;
// 11819
o9.button = 0;
// 11820
o9.which = 0;
// 11821
o9.view = ow637880758;
// 11823
o9.target = o16;
// 11824
o9.shiftKey = false;
// 11825
o9.relatedTarget = o14;
// undefined
o14 = null;
// 11826
o9.metaKey = false;
// 11827
o9.eventPhase = 3;
// 11828
o9.currentTarget = o0;
// 11829
o9.ctrlKey = false;
// 11830
o9.cancelable = true;
// 11831
o9.bubbles = true;
// 11832
o9.altKey = false;
// 11833
o9.srcElement = o16;
// 11834
o9.relatedNode = void 0;
// 11835
o9.attrName = void 0;
// 11836
o9.attrChange = void 0;
// undefined
o9 = null;
// 11837
o16.nodeType = 1;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 11844
o16.disabled = false;
// 11849
o16.className = "";
// 11850
o16.getAttribute = f637880758_472;
// 11852
f637880758_472.returns.push(null);
// 11853
o9 = {};
// 11854
o16.parentNode = o9;
// 11855
o9.disabled = void 0;
// 11860
o9.className = "holding name";
// 11861
o9.parentNode = o15;
// undefined
o9 = null;
// undefined
o15 = null;
// 11905
f637880758_472.returns.push(null);
// 11915
f637880758_472.returns.push("");
// 11930
o9 = {};
// 11931
o9.type = "mouseout";
// 11932
o9.jQuery18309834662606008351 = void 0;
// 11936
o9.defaultPrevented = false;
// 11937
o9.returnValue = true;
// 11938
o9.getPreventDefault = void 0;
// 11939
o9.timeStamp = 1373482818345;
// 11940
o9.toElement = o13;
// 11941
o9.screenY = 194;
// 11942
o9.screenX = 415;
// 11943
o9.pageY = 95;
// 11944
o9.pageX = 403;
// 11945
o9.offsetY = -40;
// 11946
o9.offsetX = 284;
// 11947
o9.fromElement = o16;
// 11948
o9.clientY = 95;
// 11949
o9.clientX = 403;
// 11950
o9.buttons = void 0;
// 11951
o9.button = 0;
// 11952
o9.which = 0;
// 11953
o9.view = ow637880758;
// 11955
o9.target = o16;
// 11956
o9.shiftKey = false;
// 11957
o9.relatedTarget = o13;
// 11958
o9.metaKey = false;
// 11959
o9.eventPhase = 3;
// 11960
o9.currentTarget = o0;
// 11961
o9.ctrlKey = false;
// 11962
o9.cancelable = true;
// 11963
o9.bubbles = true;
// 11964
o9.altKey = false;
// 11965
o9.srcElement = o16;
// 11966
o9.relatedNode = void 0;
// 11967
o9.attrName = void 0;
// 11968
o9.attrChange = void 0;
// undefined
o9 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 11984
f637880758_472.returns.push(null);
// 12036
f637880758_472.returns.push(null);
// 12046
f637880758_472.returns.push("");
// 12061
o9 = {};
// 12062
o9.type = "mouseover";
// 12063
o9.jQuery18309834662606008351 = void 0;
// 12067
o9.defaultPrevented = false;
// 12068
o9.returnValue = true;
// 12069
o9.getPreventDefault = void 0;
// 12070
o9.timeStamp = 1373482818355;
// 12071
o9.toElement = o13;
// 12072
o9.screenY = 194;
// 12073
o9.screenX = 415;
// 12074
o9.pageY = 95;
// 12075
o9.pageX = 403;
// 12076
o9.offsetY = 40;
// 12077
o9.offsetX = 296;
// 12078
o9.fromElement = o16;
// 12079
o9.clientY = 95;
// 12080
o9.clientX = 403;
// 12081
o9.buttons = void 0;
// 12082
o9.button = 0;
// 12083
o9.which = 0;
// 12084
o9.view = ow637880758;
// 12086
o9.target = o13;
// 12087
o9.shiftKey = false;
// 12088
o9.relatedTarget = o16;
// undefined
o16 = null;
// 12089
o9.metaKey = false;
// 12090
o9.eventPhase = 3;
// 12091
o9.currentTarget = o0;
// 12092
o9.ctrlKey = false;
// 12093
o9.cancelable = true;
// 12094
o9.bubbles = true;
// 12095
o9.altKey = false;
// 12096
o9.srcElement = o13;
// 12097
o9.relatedNode = void 0;
// 12098
o9.attrName = void 0;
// 12099
o9.attrChange = void 0;
// undefined
o9 = null;
// 12100
o13.nodeType = 1;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 12143
f637880758_472.returns.push(null);
// 12153
f637880758_472.returns.push("");
// 12168
o9 = {};
// 12169
o9.type = "mouseout";
// 12170
o9.jQuery18309834662606008351 = void 0;
// 12174
o9.defaultPrevented = false;
// 12175
o9.returnValue = true;
// 12176
o9.getPreventDefault = void 0;
// 12177
o9.timeStamp = 1373482818372;
// 12178
o14 = {};
// 12179
o9.toElement = o14;
// 12180
o9.screenY = 159;
// 12181
o9.screenX = 480;
// 12182
o9.pageY = 60;
// 12183
o9.pageX = 468;
// 12184
o9.offsetY = 5;
// 12185
o9.offsetX = 361;
// 12186
o9.fromElement = o13;
// 12187
o9.clientY = 60;
// 12188
o9.clientX = 468;
// 12189
o9.buttons = void 0;
// 12190
o9.button = 0;
// 12191
o9.which = 0;
// 12192
o9.view = ow637880758;
// 12194
o9.target = o13;
// 12195
o9.shiftKey = false;
// 12196
o9.relatedTarget = o14;
// 12197
o9.metaKey = false;
// 12198
o9.eventPhase = 3;
// 12199
o9.currentTarget = o0;
// 12200
o9.ctrlKey = false;
// 12201
o9.cancelable = true;
// 12202
o9.bubbles = true;
// 12203
o9.altKey = false;
// 12204
o9.srcElement = o13;
// 12205
o9.relatedNode = void 0;
// 12206
o9.attrName = void 0;
// 12207
o9.attrChange = void 0;
// undefined
o9 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 12251
f637880758_472.returns.push(null);
// 12261
f637880758_472.returns.push("");
// 12276
o9 = {};
// 12277
o9.type = "mouseover";
// 12278
o9.jQuery18309834662606008351 = void 0;
// 12282
o9.defaultPrevented = false;
// 12283
o9.returnValue = true;
// 12284
o9.getPreventDefault = void 0;
// 12285
o9.timeStamp = 1373482818378;
// 12286
o9.toElement = o14;
// 12287
o9.screenY = 159;
// 12288
o9.screenX = 480;
// 12289
o9.pageY = 60;
// 12290
o9.pageX = 468;
// 12291
o9.offsetY = 5;
// 12292
o9.offsetX = 46;
// 12293
o9.fromElement = o13;
// 12294
o9.clientY = 60;
// 12295
o9.clientX = 468;
// 12296
o9.buttons = void 0;
// 12297
o9.button = 0;
// 12298
o9.which = 0;
// 12299
o9.view = ow637880758;
// 12301
o9.target = o14;
// 12302
o9.shiftKey = false;
// 12303
o9.relatedTarget = o13;
// undefined
o13 = null;
// 12304
o9.metaKey = false;
// 12305
o9.eventPhase = 3;
// 12306
o9.currentTarget = o0;
// 12307
o9.ctrlKey = false;
// 12308
o9.cancelable = true;
// 12309
o9.bubbles = true;
// 12310
o9.altKey = false;
// 12311
o9.srcElement = o14;
// 12312
o9.relatedNode = void 0;
// 12313
o9.attrName = void 0;
// 12314
o9.attrChange = void 0;
// undefined
o9 = null;
// 12315
o14.nodeType = 1;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 12322
o14.disabled = void 0;
// 12327
o14.className = "header-inner";
// 12328
o9 = {};
// 12329
o14.parentNode = o9;
// 12330
o9.disabled = void 0;
// 12335
o9.className = "content-header";
// 12336
o13 = {};
// 12337
o9.parentNode = o13;
// undefined
o9 = null;
// 12338
o13.disabled = void 0;
// 12343
o13.className = "content-main";
// 12344
o13.parentNode = o8;
// undefined
o13 = null;
// 12360
f637880758_472.returns.push(null);
// 12370
f637880758_472.returns.push("");
// 12385
o9 = {};
// 12386
o9.type = "mouseout";
// 12387
o9.jQuery18309834662606008351 = void 0;
// 12391
o9.defaultPrevented = false;
// 12392
o9.returnValue = true;
// 12393
o9.getPreventDefault = void 0;
// 12394
o9.timeStamp = 1373482818384;
// 12395
o9.toElement = o8;
// 12396
o9.screenY = 150;
// 12397
o9.screenX = 497;
// 12398
o9.pageY = 51;
// 12399
o9.pageX = 485;
// 12400
o9.offsetY = -4;
// 12401
o9.offsetX = 63;
// 12402
o9.fromElement = o14;
// 12403
o9.clientY = 51;
// 12404
o9.clientX = 485;
// 12405
o9.buttons = void 0;
// 12406
o9.button = 0;
// 12407
o9.which = 0;
// 12408
o9.view = ow637880758;
// 12410
o9.target = o14;
// 12411
o9.shiftKey = false;
// 12412
o9.relatedTarget = o8;
// 12413
o9.metaKey = false;
// 12414
o9.eventPhase = 3;
// 12415
o9.currentTarget = o0;
// 12416
o9.ctrlKey = false;
// 12417
o9.cancelable = true;
// 12418
o9.bubbles = true;
// 12419
o9.altKey = false;
// 12420
o9.srcElement = o14;
// 12421
o9.relatedNode = void 0;
// 12422
o9.attrName = void 0;
// 12423
o9.attrChange = void 0;
// undefined
o9 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 12467
f637880758_472.returns.push(null);
// 12477
f637880758_472.returns.push("");
// 12492
o9 = {};
// 12493
o9.type = "mouseover";
// 12494
o9.jQuery18309834662606008351 = void 0;
// 12498
o9.defaultPrevented = false;
// 12499
o9.returnValue = true;
// 12500
o9.getPreventDefault = void 0;
// 12501
o9.timeStamp = 1373482818388;
// 12502
o9.toElement = o8;
// 12503
o9.screenY = 150;
// 12504
o9.screenX = 497;
// 12505
o9.pageY = 51;
// 12506
o9.pageX = 485;
// 12507
o9.offsetY = 51;
// 12508
o9.offsetX = 393;
// 12509
o9.fromElement = o14;
// 12510
o9.clientY = 51;
// 12511
o9.clientX = 485;
// 12512
o9.buttons = void 0;
// 12513
o9.button = 0;
// 12514
o9.which = 0;
// 12515
o9.view = ow637880758;
// 12517
o9.target = o8;
// 12518
o9.shiftKey = false;
// 12519
o9.relatedTarget = o14;
// undefined
o14 = null;
// 12520
o9.metaKey = false;
// 12521
o9.eventPhase = 3;
// 12522
o9.currentTarget = o0;
// 12523
o9.ctrlKey = false;
// 12524
o9.cancelable = true;
// 12525
o9.bubbles = true;
// 12526
o9.altKey = false;
// 12527
o9.srcElement = o8;
// 12528
o9.relatedNode = void 0;
// 12529
o9.attrName = void 0;
// 12530
o9.attrChange = void 0;
// undefined
o9 = null;
// 12531
o8.nodeType = 1;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 12553
f637880758_472.returns.push(null);
// 12563
f637880758_472.returns.push("");
// 12578
o9 = {};
// 12579
o9.type = "mouseout";
// 12580
o9.jQuery18309834662606008351 = void 0;
// 12584
o9.defaultPrevented = false;
// 12585
o9.returnValue = true;
// 12586
o9.getPreventDefault = void 0;
// 12587
o9.timeStamp = 1373482818424;
// 12588
o13 = {};
// 12589
o9.toElement = o13;
// 12590
o9.screenY = 137;
// 12591
o9.screenX = 565;
// 12592
o9.pageY = 38;
// 12593
o9.pageX = 553;
// 12594
o9.offsetY = 38;
// 12595
o9.offsetX = 461;
// 12596
o9.fromElement = o8;
// 12597
o9.clientY = 38;
// 12598
o9.clientX = 553;
// 12599
o9.buttons = void 0;
// 12600
o9.button = 0;
// 12601
o9.which = 0;
// 12602
o9.view = ow637880758;
// 12604
o9.target = o8;
// 12605
o9.shiftKey = false;
// 12606
o9.relatedTarget = o13;
// 12607
o9.metaKey = false;
// 12608
o9.eventPhase = 3;
// 12609
o9.currentTarget = o0;
// 12610
o9.ctrlKey = false;
// 12611
o9.cancelable = true;
// 12612
o9.bubbles = true;
// 12613
o9.altKey = false;
// 12614
o9.srcElement = o8;
// 12615
o9.relatedNode = void 0;
// 12616
o9.attrName = void 0;
// 12617
o9.attrChange = void 0;
// undefined
o9 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 12640
f637880758_472.returns.push(null);
// 12650
f637880758_472.returns.push("");
// 12665
o9 = {};
// 12666
o9.type = "mouseover";
// 12667
o9.jQuery18309834662606008351 = void 0;
// 12671
o9.defaultPrevented = false;
// 12672
o9.returnValue = true;
// 12673
o9.getPreventDefault = void 0;
// 12674
o9.timeStamp = 1373482818432;
// 12675
o9.toElement = o13;
// 12676
o9.screenY = 137;
// 12677
o9.screenX = 565;
// 12678
o9.pageY = 38;
// 12679
o9.pageX = 553;
// 12680
o9.offsetY = 38;
// 12681
o9.offsetX = 553;
// 12682
o9.fromElement = o8;
// 12683
o9.clientY = 38;
// 12684
o9.clientX = 553;
// 12685
o9.buttons = void 0;
// 12686
o9.button = 0;
// 12687
o9.which = 0;
// 12688
o9.view = ow637880758;
// 12690
o9.target = o13;
// 12691
o9.shiftKey = false;
// 12692
o9.relatedTarget = o8;
// undefined
o8 = null;
// 12693
o9.metaKey = false;
// 12694
o9.eventPhase = 3;
// 12695
o9.currentTarget = o0;
// 12696
o9.ctrlKey = false;
// 12697
o9.cancelable = true;
// 12698
o9.bubbles = true;
// 12699
o9.altKey = false;
// 12700
o9.srcElement = o13;
// 12701
o9.relatedNode = void 0;
// 12702
o9.attrName = void 0;
// 12703
o9.attrChange = void 0;
// undefined
o9 = null;
// 12704
o13.nodeType = 1;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 12711
o13.disabled = void 0;
// 12716
o13.className = "global-nav";
// 12717
o8 = {};
// 12718
o13.parentNode = o8;
// 12719
o8.disabled = void 0;
// 12724
o8.className = "topbar js-topbar";
// 12725
o8.parentNode = o12;
// undefined
o8 = null;
// 12734
f637880758_472.returns.push("");
// 12749
o8 = {};
// 12750
o8.type = "mouseout";
// 12751
o8.jQuery18309834662606008351 = void 0;
// 12755
o8.defaultPrevented = false;
// 12756
o8.returnValue = true;
// 12757
o8.getPreventDefault = void 0;
// 12758
o8.timeStamp = 1373482818450;
// 12759
o8.toElement = o7;
// 12760
o8.screenY = 119;
// 12761
o8.screenX = 591;
// 12762
o8.pageY = 20;
// 12763
o8.pageX = 579;
// 12764
o8.offsetY = 20;
// 12765
o8.offsetX = 579;
// 12766
o8.fromElement = o13;
// 12767
o8.clientY = 20;
// 12768
o8.clientX = 579;
// 12769
o8.buttons = void 0;
// 12770
o8.button = 0;
// 12771
o8.which = 0;
// 12772
o8.view = ow637880758;
// 12774
o8.target = o13;
// 12775
o8.shiftKey = false;
// 12776
o8.relatedTarget = o7;
// 12777
o8.metaKey = false;
// 12778
o8.eventPhase = 3;
// 12779
o8.currentTarget = o0;
// 12780
o8.ctrlKey = false;
// 12781
o8.cancelable = true;
// 12782
o8.bubbles = true;
// 12783
o8.altKey = false;
// 12784
o8.srcElement = o13;
// 12785
o8.relatedNode = void 0;
// 12786
o8.attrName = void 0;
// 12787
o8.attrChange = void 0;
// undefined
o8 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 12817
f637880758_472.returns.push("");
// 12832
o8 = {};
// 12833
o8.type = "mouseover";
// 12834
o8.jQuery18309834662606008351 = void 0;
// 12838
o8.defaultPrevented = false;
// 12839
o8.returnValue = true;
// 12840
o8.getPreventDefault = void 0;
// 12841
o8.timeStamp = 1373482818456;
// 12842
o8.toElement = o7;
// 12843
o8.screenY = 119;
// 12844
o8.screenX = 591;
// 12845
o8.pageY = 20;
// 12846
o8.pageX = 579;
// 12847
o8.offsetY = 13;
// 12848
o8.offsetX = 1;
// 12849
o8.fromElement = o13;
// 12850
o8.clientY = 20;
// 12851
o8.clientX = 579;
// 12852
o8.buttons = void 0;
// 12853
o8.button = 0;
// 12854
o8.which = 0;
// 12855
o8.view = ow637880758;
// 12857
o8.target = o7;
// 12858
o8.shiftKey = false;
// 12859
o8.relatedTarget = o13;
// 12860
o8.metaKey = false;
// 12861
o8.eventPhase = 3;
// 12862
o8.currentTarget = o0;
// 12863
o8.ctrlKey = false;
// 12864
o8.cancelable = true;
// 12865
o8.bubbles = true;
// 12866
o8.altKey = false;
// 12867
o8.srcElement = o7;
// 12868
o8.relatedNode = void 0;
// 12869
o8.attrName = void 0;
// 12870
o8.attrChange = void 0;
// undefined
o8 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 12878
o7.disabled = false;
// 12883
o7.className = "search-input";
// 12885
o1.disabled = void 0;
// 12890
o1.className = "form-search js-search-form ";
// undefined
o1 = null;
// 12892
o5.disabled = void 0;
// 12897
o5.className = "";
// 12898
o5.getAttribute = f637880758_472;
// 12900
f637880758_472.returns.push(null);
// 12901
o1 = {};
// 12902
o5.parentNode = o1;
// undefined
o5 = null;
// 12903
o1.disabled = void 0;
// 12908
o1.className = "pull-right";
// 12909
o5 = {};
// 12910
o1.parentNode = o5;
// 12911
o5.disabled = void 0;
// 12916
o5.className = "container";
// 12917
o8 = {};
// 12918
o5.parentNode = o8;
// undefined
o5 = null;
// 12919
o8.disabled = void 0;
// 12924
o8.className = "global-nav-inner";
// 12925
o8.parentNode = o13;
// undefined
o8 = null;
// undefined
o13 = null;
// 12948
f637880758_472.returns.push("");
// 12963
o5 = {};
// 12964
o5.type = "mouseout";
// 12965
o5.jQuery18309834662606008351 = void 0;
// 12969
o5.defaultPrevented = false;
// 12970
o5.returnValue = true;
// 12971
o5.getPreventDefault = void 0;
// 12972
o5.timeStamp = 1373482818492;
// 12973
o5.toElement = null;
// 12974
o5.screenY = 98;
// 12975
o5.screenX = 623;
// 12976
o5.pageY = -1;
// 12977
o5.pageX = 611;
// 12978
o5.offsetY = -8;
// 12979
o5.offsetX = 33;
// 12980
o5.fromElement = o7;
// 12981
o5.clientY = -1;
// 12982
o5.clientX = 611;
// 12983
o5.buttons = void 0;
// 12984
o5.button = 0;
// 12985
o5.which = 0;
// 12986
o5.view = ow637880758;
// 12988
o5.target = o7;
// 12989
o5.shiftKey = false;
// 12990
o5.relatedTarget = null;
// 12991
o5.metaKey = false;
// 12992
o5.eventPhase = 3;
// 12993
o5.currentTarget = o0;
// 12994
o5.ctrlKey = false;
// 12995
o5.cancelable = true;
// 12996
o5.bubbles = true;
// 12997
o5.altKey = false;
// 12998
o5.srcElement = o7;
// undefined
o7 = null;
// 12999
o5.relatedNode = void 0;
// 13000
o5.attrName = void 0;
// 13001
o5.attrChange = void 0;
// undefined
o5 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 13032
f637880758_472.returns.push(null);
// 13077
f637880758_472.returns.push("");
// 13092
o5 = {};
// 13093
o5.type = "mouseover";
// 13094
o5.jQuery18309834662606008351 = void 0;
// 13098
o5.defaultPrevented = false;
// 13099
o5.returnValue = true;
// 13100
o5.getPreventDefault = void 0;
// 13101
o5.timeStamp = 1373482818659;
// 13102
o7 = {};
// 13103
o5.toElement = o7;
// 13104
o5.screenY = 102;
// 13105
o5.screenX = 803;
// 13106
o5.pageY = 3;
// 13107
o5.pageX = 791;
// 13108
o5.offsetY = 3;
// 13109
o5.offsetX = 5;
// 13110
o5.fromElement = null;
// 13111
o5.clientY = 3;
// 13112
o5.clientX = 791;
// 13113
o5.buttons = void 0;
// 13114
o5.button = 0;
// 13115
o5.which = 0;
// 13116
o5.view = ow637880758;
// 13118
o5.target = o7;
// 13119
o5.shiftKey = false;
// 13120
o5.relatedTarget = null;
// 13121
o5.metaKey = false;
// 13122
o5.eventPhase = 3;
// 13123
o5.currentTarget = o0;
// 13124
o5.ctrlKey = false;
// 13125
o5.cancelable = true;
// 13126
o5.bubbles = true;
// 13127
o5.altKey = false;
// 13128
o5.srcElement = o7;
// 13129
o5.relatedNode = void 0;
// 13130
o5.attrName = void 0;
// 13131
o5.attrChange = void 0;
// undefined
o5 = null;
// 13132
o7.nodeType = 1;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 13139
o7.disabled = void 0;
// 13144
o7.className = "dropdown-toggle dropdown-signin";
// 13145
o5 = {};
// 13146
o7.parentNode = o5;
// 13147
o5.disabled = void 0;
// 13152
o5.className = "dropdown js-session";
// 13153
o8 = {};
// 13154
o5.parentNode = o8;
// undefined
o5 = null;
// 13155
o8.disabled = void 0;
// 13160
o8.className = "nav secondary-nav session-dropdown";
// 13161
o8.parentNode = o1;
// undefined
o8 = null;
// undefined
o1 = null;
// 13205
f637880758_472.returns.push("");
// 13220
o1 = {};
// 13221
o1.type = "mouseout";
// 13222
o1.jQuery18309834662606008351 = void 0;
// 13226
o1.defaultPrevented = false;
// 13227
o1.returnValue = true;
// 13228
o1.getPreventDefault = void 0;
// 13229
o1.timeStamp = 1373482818668;
// 13230
o1.toElement = o11;
// 13231
o1.screenY = 160;
// 13232
o1.screenX = 983;
// 13233
o1.pageY = 61;
// 13234
o1.pageX = 971;
// 13235
o1.offsetY = 61;
// 13236
o1.offsetX = 185;
// 13237
o1.fromElement = o7;
// 13238
o1.clientY = 61;
// 13239
o1.clientX = 971;
// 13240
o1.buttons = void 0;
// 13241
o1.button = 0;
// 13242
o1.which = 0;
// 13243
o1.view = ow637880758;
// 13245
o1.target = o7;
// 13246
o1.shiftKey = false;
// 13247
o1.relatedTarget = o11;
// 13248
o1.metaKey = false;
// 13249
o1.eventPhase = 3;
// 13250
o1.currentTarget = o0;
// 13251
o1.ctrlKey = false;
// 13252
o1.cancelable = true;
// 13253
o1.bubbles = true;
// 13254
o1.altKey = false;
// 13255
o1.srcElement = o7;
// 13256
o1.relatedNode = void 0;
// 13257
o1.attrName = void 0;
// 13258
o1.attrChange = void 0;
// undefined
o1 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 13330
f637880758_472.returns.push("");
// 13345
o1 = {};
// 13346
o1.type = "mouseover";
// 13347
o1.jQuery18309834662606008351 = void 0;
// 13351
o1.defaultPrevented = false;
// 13352
o1.returnValue = true;
// 13353
o1.getPreventDefault = void 0;
// 13354
o1.timeStamp = 1373482818673;
// 13355
o1.toElement = o11;
// 13356
o1.screenY = 160;
// 13357
o1.screenX = 983;
// 13358
o1.pageY = 61;
// 13359
o1.pageX = 971;
// 13360
o1.offsetY = 61;
// 13361
o1.offsetX = 971;
// 13362
o1.fromElement = o7;
// 13363
o1.clientY = 61;
// 13364
o1.clientX = 971;
// 13365
o1.buttons = void 0;
// 13366
o1.button = 0;
// 13367
o1.which = 0;
// 13368
o1.view = ow637880758;
// 13370
o1.target = o11;
// 13371
o1.shiftKey = false;
// 13372
o1.relatedTarget = o7;
// 13373
o1.metaKey = false;
// 13374
o1.eventPhase = 3;
// 13375
o1.currentTarget = o0;
// 13376
o1.ctrlKey = false;
// 13377
o1.cancelable = true;
// 13378
o1.bubbles = true;
// 13379
o1.altKey = false;
// 13380
o1.srcElement = o11;
// 13381
o1.relatedNode = void 0;
// 13382
o1.attrName = void 0;
// 13383
o1.attrChange = void 0;
// undefined
o1 = null;
// 13384
o11.nodeType = 1;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 13399
f637880758_472.returns.push(null);
// 13409
f637880758_472.returns.push("");
// 13424
o1 = {};
// 13425
o1.type = "mouseout";
// 13426
o1.jQuery18309834662606008351 = void 0;
// 13430
o1.defaultPrevented = false;
// 13431
o1.returnValue = true;
// 13432
o1.getPreventDefault = void 0;
// 13433
o1.timeStamp = 1373482818687;
// 13434
o1.toElement = null;
// 13435
o1.screenY = 215;
// 13436
o1.screenX = 1086;
// 13437
o1.pageY = 116;
// 13438
o1.pageX = 1074;
// 13439
o1.offsetY = 116;
// 13440
o1.offsetX = 1074;
// 13441
o1.fromElement = o11;
// 13442
o1.clientY = 116;
// 13443
o1.clientX = 1074;
// 13444
o1.buttons = void 0;
// 13445
o1.button = 0;
// 13446
o1.which = 0;
// 13447
o1.view = ow637880758;
// 13449
o1.target = o11;
// 13450
o1.shiftKey = false;
// 13451
o1.relatedTarget = null;
// 13452
o1.metaKey = false;
// 13453
o1.eventPhase = 3;
// 13454
o1.currentTarget = o0;
// 13455
o1.ctrlKey = false;
// 13456
o1.cancelable = true;
// 13457
o1.bubbles = true;
// 13458
o1.altKey = false;
// 13459
o1.srcElement = o11;
// 13460
o1.relatedNode = void 0;
// 13461
o1.attrName = void 0;
// 13462
o1.attrChange = void 0;
// undefined
o1 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 13479
f637880758_472.returns.push(null);
// 13489
f637880758_472.returns.push("");
// 13504
o1 = {};
// 13505
o1.type = "mouseover";
// 13506
o1.jQuery18309834662606008351 = void 0;
// 13510
o1.defaultPrevented = false;
// 13511
o1.returnValue = true;
// 13512
o1.getPreventDefault = void 0;
// 13513
o1.timeStamp = 1373482818973;
// 13514
o1.toElement = o11;
// 13515
o1.screenY = 387;
// 13516
o1.screenX = 1047;
// 13517
o1.pageY = 288;
// 13518
o1.pageX = 1035;
// 13519
o1.offsetY = 288;
// 13520
o1.offsetX = 1035;
// 13521
o1.fromElement = null;
// 13522
o1.clientY = 288;
// 13523
o1.clientX = 1035;
// 13524
o1.buttons = void 0;
// 13525
o1.button = 0;
// 13526
o1.which = 0;
// 13527
o1.view = ow637880758;
// 13529
o1.target = o11;
// 13530
o1.shiftKey = false;
// 13531
o1.relatedTarget = null;
// 13532
o1.metaKey = false;
// 13533
o1.eventPhase = 3;
// 13534
o1.currentTarget = o0;
// 13535
o1.ctrlKey = false;
// 13536
o1.cancelable = true;
// 13537
o1.bubbles = true;
// 13538
o1.altKey = false;
// 13539
o1.srcElement = o11;
// 13540
o1.relatedNode = void 0;
// 13541
o1.attrName = void 0;
// 13542
o1.attrChange = void 0;
// undefined
o1 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 13558
f637880758_472.returns.push(null);
// 13568
f637880758_472.returns.push("");
// 13583
o1 = {};
// 13584
o1.type = "mouseup";
// 13585
o1.jQuery18309834662606008351 = void 0;
// 13589
o1.defaultPrevented = false;
// 13590
o1.returnValue = true;
// 13591
o1.getPreventDefault = void 0;
// 13592
o1.timeStamp = 1373482819225;
// 13593
o1.toElement = o11;
// 13594
o1.screenY = 407;
// 13595
o1.screenX = 978;
// 13596
o1.pageY = 308;
// 13597
o1.pageX = 966;
// 13598
o1.offsetY = 308;
// 13599
o1.offsetX = 966;
// 13600
o1.fromElement = null;
// 13601
o1.clientY = 308;
// 13602
o1.clientX = 966;
// 13603
o1.buttons = void 0;
// 13604
o1.button = 0;
// 13605
o1.which = 1;
// 13606
o1.view = ow637880758;
// 13608
o1.target = o11;
// 13609
o1.shiftKey = false;
// 13610
o1.relatedTarget = null;
// 13611
o1.metaKey = false;
// 13612
o1.eventPhase = 3;
// 13613
o1.currentTarget = o0;
// 13614
o1.ctrlKey = false;
// 13615
o1.cancelable = true;
// 13616
o1.bubbles = true;
// 13617
o1.altKey = false;
// 13618
o1.srcElement = o11;
// 13619
o1.relatedNode = void 0;
// 13620
o1.attrName = void 0;
// 13621
o1.attrChange = void 0;
// undefined
o1 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 13634
o11.nodeName = "DIV";
// 13642
o12.nodeName = "DIV";
// 13650
o10.nodeName = "BODY";
// undefined
o10 = null;
// 13661
o1 = {};
// 13662
o1.type = "click";
// 13663
o1.jQuery18309834662606008351 = void 0;
// 13667
o1.defaultPrevented = false;
// 13668
o1.returnValue = true;
// 13669
o1.getPreventDefault = void 0;
// 13670
o1.timeStamp = 1373482819232;
// 13671
o1.toElement = o11;
// 13672
o1.screenY = 407;
// 13673
o1.screenX = 978;
// 13674
o1.pageY = 308;
// 13675
o1.pageX = 966;
// 13676
o1.offsetY = 308;
// 13677
o1.offsetX = 966;
// 13678
o1.fromElement = null;
// 13679
o1.clientY = 308;
// 13680
o1.clientX = 966;
// 13681
o1.buttons = void 0;
// 13682
o1.button = 0;
// 13683
o1.which = 1;
// 13684
o1.view = ow637880758;
// 13686
o1.target = o11;
// 13687
o1.shiftKey = false;
// 13688
o1.relatedTarget = null;
// 13689
o1.metaKey = false;
// 13690
o1.eventPhase = 3;
// 13691
o1.currentTarget = o0;
// 13692
o1.ctrlKey = false;
// 13693
o1.cancelable = true;
// 13694
o1.bubbles = true;
// 13695
o1.altKey = false;
// 13696
o1.srcElement = o11;
// 13697
o1.relatedNode = void 0;
// 13698
o1.attrName = void 0;
// 13699
o1.attrChange = void 0;
// undefined
o1 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 13708
o11.ownerDocument = o0;
// 13713
f637880758_529.returns.push(false);
// 13715
o12.ownerDocument = o0;
// 13716
o12.nodeType = 1;
// undefined
o12 = null;
// 13720
f637880758_529.returns.push(false);
// 13727
f637880758_529.returns.push(false);
// 13729
o6.ownerDocument = o0;
// undefined
o6 = null;
// 13734
f637880758_529.returns.push(false);
// 13743
f637880758_529.returns.push(false);
// 13750
f637880758_529.returns.push(false);
// 13757
f637880758_529.returns.push(false);
// 13764
f637880758_529.returns.push(false);
// 13772
f637880758_529.returns.push(false);
// 13779
f637880758_529.returns.push(false);
// 13786
f637880758_529.returns.push(false);
// 13793
f637880758_529.returns.push(false);
// 13802
f637880758_529.returns.push(false);
// 13809
f637880758_529.returns.push(false);
// 13816
f637880758_529.returns.push(false);
// 13823
f637880758_529.returns.push(false);
// 13832
o1 = {};
// 13833
f637880758_562.returns.push(o1);
// 13834
o5 = {};
// 13835
o1["0"] = o5;
// undefined
o5 = null;
// 13836
o1["1"] = o7;
// undefined
o7 = null;
// 13837
o5 = {};
// 13838
o1["2"] = o5;
// undefined
o5 = null;
// 13839
o5 = {};
// 13840
o1["3"] = o5;
// undefined
o5 = null;
// 13841
o5 = {};
// 13842
o1["4"] = o5;
// undefined
o5 = null;
// 13843
o5 = {};
// 13844
o1["5"] = o5;
// undefined
o5 = null;
// 13845
o5 = {};
// 13846
o1["6"] = o5;
// undefined
o5 = null;
// 13847
o5 = {};
// 13848
o1["7"] = o5;
// undefined
o5 = null;
// 13849
o5 = {};
// 13850
o1["8"] = o5;
// undefined
o5 = null;
// 13851
o5 = {};
// 13852
o1["9"] = o5;
// undefined
o5 = null;
// 13853
o5 = {};
// 13854
o1["10"] = o5;
// undefined
o5 = null;
// 13855
o5 = {};
// 13856
o1["11"] = o5;
// undefined
o5 = null;
// 13857
o5 = {};
// 13858
o1["12"] = o5;
// undefined
o5 = null;
// 13859
o5 = {};
// 13860
o1["13"] = o5;
// undefined
o5 = null;
// 13861
o5 = {};
// 13862
o1["14"] = o5;
// undefined
o5 = null;
// 13863
o5 = {};
// 13864
o1["15"] = o5;
// undefined
o5 = null;
// 13865
o5 = {};
// 13866
o1["16"] = o5;
// undefined
o5 = null;
// 13867
o5 = {};
// 13868
o1["17"] = o5;
// undefined
o5 = null;
// 13869
o5 = {};
// 13870
o1["18"] = o5;
// undefined
o5 = null;
// 13871
o5 = {};
// 13872
o1["19"] = o5;
// undefined
o5 = null;
// 13873
o5 = {};
// 13874
o1["20"] = o5;
// undefined
o5 = null;
// 13875
o5 = {};
// 13876
o1["21"] = o5;
// undefined
o5 = null;
// 13877
o5 = {};
// 13878
o1["22"] = o5;
// undefined
o5 = null;
// 13879
o1["23"] = void 0;
// undefined
o1 = null;
// 13884
o3.contains = f637880758_526;
// 13886
f637880758_526.returns.push(false);
// 13888
o3.className = "dropdown js-language-dropdown";
// 13890
// undefined
o3 = null;
// 13891
o1 = {};
// 13892
o1.type = "mouseout";
// 13893
o1.jQuery18309834662606008351 = void 0;
// 13897
o1.defaultPrevented = false;
// 13898
o1.returnValue = true;
// 13899
o1.getPreventDefault = void 0;
// 13900
o1.timeStamp = 1373482820244;
// 13901
o1.toElement = null;
// 13902
o1.screenY = 423;
// 13903
o1.screenX = 978;
// 13904
o1.pageY = 724;
// 13905
o1.pageX = 966;
// 13906
o1.offsetY = 724;
// 13907
o1.offsetX = 966;
// 13908
o1.fromElement = o11;
// 13909
o1.clientY = 324;
// 13910
o1.clientX = 966;
// 13911
o1.buttons = void 0;
// 13912
o1.button = 0;
// 13913
o1.which = 0;
// 13914
o1.view = ow637880758;
// 13916
o1.target = o11;
// 13917
o1.shiftKey = false;
// 13918
o1.relatedTarget = null;
// 13919
o1.metaKey = false;
// 13920
o1.eventPhase = 3;
// 13921
o1.currentTarget = o0;
// 13922
o1.ctrlKey = false;
// 13923
o1.cancelable = true;
// 13924
o1.bubbles = true;
// 13925
o1.altKey = false;
// 13926
o1.srcElement = o11;
// undefined
o11 = null;
// 13927
o1.relatedNode = void 0;
// 13928
o1.attrName = void 0;
// 13929
o1.attrChange = void 0;
// undefined
o1 = null;
// undefined
fo637880758_1_jQuery18309834662606008351.returns.push(1);
// 13946
f637880758_472.returns.push(null);
// 13956
f637880758_472.returns.push("");
// 13971
o1 = {};
// 13972
o1.type = "beforeunload";
// 13973
o1.jQuery18309834662606008351 = void 0;
// 13977
o1.defaultPrevented = false;
// 13978
o1.returnValue = true;
// 13979
o1.getPreventDefault = void 0;
// 13980
o1.timeStamp = 1373482826335;
// 13981
o1.which = void 0;
// 13982
o1.view = void 0;
// 13984
o1.target = o0;
// 13985
o1.shiftKey = void 0;
// 13986
o1.relatedTarget = void 0;
// 13987
o1.metaKey = void 0;
// 13988
o1.eventPhase = 2;
// 13989
o1.currentTarget = ow637880758;
// 13990
o1.ctrlKey = void 0;
// 13991
o1.cancelable = true;
// 13992
o1.bubbles = false;
// 13993
o1.altKey = void 0;
// 13994
o1.srcElement = o0;
// 13995
o1.relatedNode = void 0;
// 13996
o1.attrName = void 0;
// 13997
o1.attrChange = void 0;
// undefined
o1 = null;
// 13999
f637880758_2695 = function() { return f637880758_2695.returns[f637880758_2695.inst++]; };
f637880758_2695.returns = [];
f637880758_2695.inst = 0;
// 14000
o4.replaceState = f637880758_2695;
// undefined
o4 = null;
// 14001
o0.title = "Twitter / Search - #javascript";
// undefined
o0 = null;
// 14002
f637880758_2695.returns.push(undefined);
// 14003
// 0
JSBNG_Replay$ = function(real, cb) { if (!real) return;
// 987
geval("JSBNG__document.documentElement.className = ((((JSBNG__document.documentElement.className + \" \")) + JSBNG__document.documentElement.getAttribute(\"data-fouc-class-names\")));");
// 997
geval("(function() {\n function f(a) {\n a = ((a || window.JSBNG__event));\n if (!a) {\n return;\n }\n ;\n ;\n ((((!a.target && a.srcElement)) && (a.target = a.srcElement)));\n if (!j(a)) {\n return;\n }\n ;\n ;\n if (!JSBNG__document.JSBNG__addEventListener) {\n var b = {\n };\n {\n var fin0keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin0i = (0);\n var c;\n for (; (fin0i < fin0keys.length); (fin0i++)) {\n ((c) = (fin0keys[fin0i]));\n {\n b[c] = a[c];\n ;\n };\n };\n };\n ;\n a = b;\n }\n ;\n ;\n a.preventDefault = a.stopPropagation = a.stopImmediatePropagation = function() {\n \n };\n d.push(a);\n return !1;\n };\n;\n function g($) {\n i();\n for (var b = 0, c; c = d[b]; b++) {\n var e = $(c.target);\n if (((((c.type == \"click\")) && ((c.target.tagName.toLowerCase() == \"a\"))))) {\n var f = $.data(e.get(0), \"events\"), g = ((f && f.click)), j = ((!c.target.hostname.match(a) || !c.target.href.match(/#$/)));\n if (((!g && j))) {\n window.JSBNG__location = c.target.href;\n continue;\n }\n ;\n ;\n }\n ;\n ;\n e.trigger(c);\n };\n ;\n window.swiftActionQueue.wasFlushed = !0;\n };\n;\n {\n function i() {\n ((e && JSBNG__clearTimeout(e)));\n for (var a = 0; ((a < c.length)); a++) {\n JSBNG__document[((\"JSBNG__on\" + c[a]))] = null;\n ;\n };\n ;\n };\n ((window.top.JSBNG_Replay.s19277ddcd28db6dd01a1d67d562dfbbffa3c6a17_4.push)((i)));\n };\n;\n function j(c) {\n var d = c.target.tagName.toLowerCase();\n if (((d == \"label\"))) {\n if (c.target.getAttribute(\"for\")) {\n var e = JSBNG__document.getElementById(c.target.getAttribute(\"for\"));\n if (((e.getAttribute(\"type\") == \"checkbox\"))) {\n return !1;\n }\n ;\n ;\n }\n else for (var f = 0; ((f < c.target.childNodes.length)); f++) {\n if (((((((c.target.childNodes[f].tagName || \"\")).toLowerCase() == \"input\")) && ((c.target.childNodes[f].getAttribute(\"type\") == \"checkbox\"))))) {\n return !1;\n }\n ;\n ;\n }\n ;\n }\n ;\n ;\n if (((((((d == \"textarea\")) || ((((d == \"input\")) && ((c.target.getAttribute(\"type\") == \"text\")))))) || ((c.target.getAttribute(\"contenteditable\") == \"true\"))))) {\n if (c.type.match(b)) {\n return !1;\n }\n ;\n }\n ;\n ;\n return ((c.metaKey ? !1 : ((((((c.clientX && c.shiftKey)) && ((d == \"a\")))) ? !1 : ((((((c.target && c.target.hostname)) && !c.target.hostname.match(a))) ? !1 : !0))))));\n };\n;\n var a = /^([^\\.]+\\.)*twitter.com$/, b = /^key/, c = [\"click\",\"keydown\",\"keypress\",\"keyup\",], d = [], e = null;\n for (var k = 0; ((k < c.length)); k++) {\n JSBNG__document[((\"JSBNG__on\" + c[k]))] = f;\n ;\n };\n;\n JSBNG__setTimeout(i, 10000);\n window.swiftActionQueue = {\n flush: g,\n wasFlushed: !1\n };\n})();");
// 1003
geval("(function() {\n function a(a) {\n a.target.setAttribute(\"data-in-composition\", \"true\");\n };\n;\n function b(a) {\n a.target.removeAttribute(\"data-in-composition\");\n };\n;\n if (JSBNG__document.JSBNG__addEventListener) {\n JSBNG__document.JSBNG__addEventListener(\"compositionstart\", a, !1);\n JSBNG__document.JSBNG__addEventListener(\"compositionend\", b, !1);\n }\n;\n;\n})();");
// 1010
geval("try {\n JSBNG__document.domain = \"twitter.com\";\n (function() {\n function a() {\n JSBNG__document.write = \"\";\n window.JSBNG__top.JSBNG__location = window.JSBNG__self.JSBNG__location;\n JSBNG__setTimeout(function() {\n JSBNG__document.body.innerHTML = \"\";\n }, 0);\n window.JSBNG__self.JSBNG__onload = function(a) {\n JSBNG__document.body.innerHTML = \"\";\n };\n };\n ;\n if (((window.JSBNG__top !== window.JSBNG__self))) {\n try {\n ((window.JSBNG__top.JSBNG__location.host || a()));\n } catch (b) {\n a();\n };\n }\n ;\n ;\n })();\n (function(a, b) {\n function H(a) {\n var b = G[a] = {\n };\n q.each(a.split(t), function(_, a) {\n b[a] = !0;\n });\n return b;\n };\n ;\n function K(a, c, d) {\n if (((((d === b)) && ((a.nodeType === 1))))) {\n var e = ((\"data-\" + c.replace(J, \"-$1\").toLowerCase()));\n d = a.getAttribute(e);\n if (((typeof d == \"string\"))) {\n try {\n d = ((((d === \"true\")) ? !0 : ((((d === \"false\")) ? !1 : ((((d === \"null\")) ? null : ((((((+d + \"\")) === d)) ? +d : ((I.test(d) ? q.parseJSON(d) : d))))))))));\n } catch (f) {\n \n };\n ;\n q.data(a, c, d);\n }\n else d = b;\n ;\n ;\n }\n ;\n ;\n return d;\n };\n ;\n function L(a) {\n var b;\n {\n var fin1keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin1i = (0);\n (0);\n for (; (fin1i < fin1keys.length); (fin1i++)) {\n ((b) = (fin1keys[fin1i]));\n {\n if (((((b === \"data\")) && q.isEmptyObject(a[b])))) {\n continue;\n }\n ;\n ;\n if (((b !== \"toJSON\"))) {\n return !1;\n }\n ;\n ;\n };\n };\n };\n ;\n return !0;\n };\n ;\n function db() {\n return !1;\n };\n ;\n function eb() {\n return !0;\n };\n ;\n function kb(a) {\n return ((((!a || !a.parentNode)) || ((a.parentNode.nodeType === 11))));\n };\n ;\n function lb(a, b) {\n do a = a[b]; while (((a && ((a.nodeType !== 1)))));\n return a;\n };\n ;\n function mb(a, b, c) {\n b = ((b || 0));\n if (q.isFunction(b)) {\n return q.grep(a, function(a, d) {\n var e = !!b.call(a, d, a);\n return ((e === c));\n });\n }\n ;\n ;\n if (b.nodeType) {\n return q.grep(a, function(a, d) {\n return ((((a === b)) === c));\n });\n }\n ;\n ;\n if (((typeof b == \"string\"))) {\n var d = q.grep(a, function(a) {\n return ((a.nodeType === 1));\n });\n if (hb.test(b)) {\n return q.filter(b, d, !c);\n }\n ;\n ;\n b = q.filter(b, d);\n }\n ;\n ;\n return q.grep(a, function(a, d) {\n return ((((q.inArray(a, b) >= 0)) === c));\n });\n };\n ;\n function nb(a) {\n var b = ob.split(\"|\"), c = a.createDocumentFragment();\n if (c.createElement) {\n while (b.length) {\n c.createElement(b.pop());\n ;\n };\n }\n ;\n ;\n return c;\n };\n ;\n function Fb(a, b) {\n return ((a.getElementsByTagName(b)[0] || a.appendChild(a.ownerDocument.createElement(b))));\n };\n ;\n function Gb(a, b) {\n if (((((b.nodeType !== 1)) || !q.hasData(a)))) {\n return;\n }\n ;\n ;\n var c, d, e, f = q._data(a), g = q._data(b, f), i = f.events;\n if (i) {\n delete g.handle;\n g.events = {\n };\n {\n var fin2keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin2i = (0);\n (0);\n for (; (fin2i < fin2keys.length); (fin2i++)) {\n ((c) = (fin2keys[fin2i]));\n {\n for (d = 0, e = i[c].length; ((d < e)); d++) {\n q.JSBNG__event.add(b, c, i[c][d]);\n ;\n };\n ;\n };\n };\n };\n ;\n }\n ;\n ;\n ((g.data && (g.data = q.extend({\n }, g.data))));\n };\n ;\n function Hb(a, b) {\n var c;\n if (((b.nodeType !== 1))) {\n return;\n }\n ;\n ;\n ((b.clearAttributes && b.clearAttributes()));\n ((b.mergeAttributes && b.mergeAttributes(a)));\n c = b.nodeName.toLowerCase();\n if (((c === \"object\"))) {\n ((b.parentNode && (b.outerHTML = a.outerHTML)));\n ((((((q.support.html5Clone && a.innerHTML)) && !q.trim(b.innerHTML))) && (b.innerHTML = a.innerHTML)));\n }\n else if (((((c === \"input\")) && yb.test(a.type)))) {\n b.defaultChecked = b.checked = a.checked;\n ((((b.value !== a.value)) && (b.value = a.value)));\n }\n else ((((c === \"option\")) ? b.selected = a.defaultSelected : ((((((c === \"input\")) || ((c === \"textarea\")))) ? b.defaultValue = a.defaultValue : ((((((c === \"script\")) && ((b.text !== a.text)))) && (b.text = a.text)))))));\n \n ;\n ;\n b.removeAttribute(q.expando);\n };\n ;\n function Ib(a) {\n return ((((typeof a.getElementsByTagName != \"undefined\")) ? a.getElementsByTagName(\"*\") : ((((typeof a.querySelectorAll != \"undefined\")) ? a.querySelectorAll(\"*\") : []))));\n };\n ;\n function Jb(a) {\n ((yb.test(a.type) && (a.defaultChecked = a.checked)));\n };\n ;\n function _b(a, b) {\n if (((b in a))) {\n return b;\n }\n ;\n ;\n var c = ((b.charAt(0).toUpperCase() + b.slice(1))), d = b, e = Zb.length;\n while (e--) {\n b = ((Zb[e] + c));\n if (((b in a))) {\n return b;\n }\n ;\n ;\n };\n ;\n return d;\n };\n ;\n function ac(a, b) {\n a = ((b || a));\n return ((((q.css(a, \"display\") === \"none\")) || !q.contains(a.ownerDocument, a)));\n };\n ;\n function bc(a, b) {\n var c, d, e = [], f = 0, g = a.length;\n for (; ((f < g)); f++) {\n c = a[f];\n if (!c.style) {\n continue;\n }\n ;\n ;\n e[f] = q._data(c, \"olddisplay\");\n if (b) {\n ((((!e[f] && ((c.style.display === \"none\")))) && (c.style.display = \"\")));\n ((((((c.style.display === \"\")) && ac(c))) && (e[f] = q._data(c, \"olddisplay\", fc(c.nodeName)))));\n }\n else {\n d = Kb(c, \"display\");\n ((((!e[f] && ((d !== \"none\")))) && q._data(c, \"olddisplay\", d)));\n }\n ;\n ;\n };\n ;\n for (f = 0; ((f < g)); f++) {\n c = a[f];\n if (!c.style) {\n continue;\n }\n ;\n ;\n if (((((!b || ((c.style.display === \"none\")))) || ((c.style.display === \"\"))))) {\n c.style.display = ((b ? ((e[f] || \"\")) : \"none\"));\n }\n ;\n ;\n };\n ;\n return a;\n };\n ;\n function cc(a, b, c) {\n var d = Sb.exec(b);\n return ((d ? ((Math.max(0, ((d[1] - ((c || 0))))) + ((d[2] || \"px\")))) : b));\n };\n ;\n function dc(a, b, c, d) {\n var e = ((((c === ((d ? \"border\" : \"JSBNG__content\")))) ? 4 : ((((b === \"width\")) ? 1 : 0)))), f = 0;\n for (; ((e < 4)); e += 2) {\n ((((c === \"margin\")) && (f += q.css(a, ((c + Yb[e])), !0))));\n if (d) {\n ((((c === \"JSBNG__content\")) && (f -= ((parseFloat(Kb(a, ((\"padding\" + Yb[e])))) || 0)))));\n ((((c !== \"margin\")) && (f -= ((parseFloat(Kb(a, ((((\"border\" + Yb[e])) + \"Width\")))) || 0)))));\n }\n else {\n f += ((parseFloat(Kb(a, ((\"padding\" + Yb[e])))) || 0));\n ((((c !== \"padding\")) && (f += ((parseFloat(Kb(a, ((((\"border\" + Yb[e])) + \"Width\")))) || 0)))));\n }\n ;\n ;\n };\n ;\n return f;\n };\n ;\n function ec(a, b, c) {\n var d = ((((b === \"width\")) ? a.offsetWidth : a.offsetHeight)), e = !0, f = ((q.support.boxSizing && ((q.css(a, \"boxSizing\") === \"border-box\"))));\n if (((((d <= 0)) || ((d == null))))) {\n d = Kb(a, b);\n if (((((d < 0)) || ((d == null))))) {\n d = a.style[b];\n }\n ;\n ;\n if (Tb.test(d)) {\n return d;\n }\n ;\n ;\n e = ((f && ((q.support.boxSizingReliable || ((d === a.style[b]))))));\n d = ((parseFloat(d) || 0));\n }\n ;\n ;\n return ((((d + dc(a, b, ((c || ((f ? \"border\" : \"JSBNG__content\")))), e))) + \"px\"));\n };\n ;\n function fc(a) {\n if (Vb[a]) {\n return Vb[a];\n }\n ;\n ;\n var b = q(((((\"\\u003C\" + a)) + \"\\u003E\"))).appendTo(e.body), c = b.css(\"display\");\n b.remove();\n if (((((c === \"none\")) || ((c === \"\"))))) {\n Lb = e.body.appendChild(((Lb || q.extend(e.createElement(\"div\"), {\n frameBorder: 0,\n width: 0,\n height: 0\n }))));\n if (((!Mb || !Lb.createElement))) {\n Mb = ((Lb.contentWindow || Lb.contentDocument)).JSBNG__document;\n Mb.write(\"\\u003C!doctype html\\u003E\\u003Chtml\\u003E\\u003Cbody\\u003E\");\n Mb.close();\n }\n ;\n ;\n b = Mb.body.appendChild(Mb.createElement(a));\n c = Kb(b, \"display\");\n e.body.removeChild(Lb);\n }\n ;\n ;\n Vb[a] = c;\n return c;\n };\n ;\n function lc(a, b, c, d) {\n var e;\n if (q.isArray(b)) {\n q.each(b, function(b, e) {\n ((((c || hc.test(a))) ? d(a, e) : lc(((((((a + \"[\")) + ((((typeof e == \"object\")) ? b : \"\")))) + \"]\")), e, c, d)));\n });\n }\n else {\n if (((!c && ((q.type(b) === \"object\"))))) {\n {\n var fin3keys = ((window.top.JSBNG_Replay.forInKeys)((b))), fin3i = (0);\n (0);\n for (; (fin3i < fin3keys.length); (fin3i++)) {\n ((e) = (fin3keys[fin3i]));\n {\n lc(((((((a + \"[\")) + e)) + \"]\")), b[e], c, d);\n ;\n };\n };\n };\n }\n else {\n d(a, b);\n }\n ;\n }\n ;\n ;\n };\n ;\n function Cc(a) {\n return function(b, c) {\n if (((typeof b != \"string\"))) {\n c = b;\n b = \"*\";\n }\n ;\n ;\n var d, e, f, g = b.toLowerCase().split(t), i = 0, j = g.length;\n if (q.isFunction(c)) {\n for (; ((i < j)); i++) {\n d = g[i];\n f = /^\\+/.test(d);\n ((f && (d = ((d.substr(1) || \"*\")))));\n e = a[d] = ((a[d] || []));\n e[((f ? \"unshift\" : \"push\"))](c);\n };\n }\n ;\n ;\n };\n };\n ;\n function Dc(a, c, d, e, f, g) {\n f = ((f || c.dataTypes[0]));\n g = ((g || {\n }));\n g[f] = !0;\n var i, j = a[f], k = 0, l = ((j ? j.length : 0)), m = ((a === yc));\n for (; ((((k < l)) && ((m || !i)))); k++) {\n i = j[k](c, d, e);\n if (((typeof i == \"string\"))) {\n if (((!m || g[i]))) i = b;\n else {\n c.dataTypes.unshift(i);\n i = Dc(a, c, d, e, i, g);\n }\n ;\n }\n ;\n ;\n };\n ;\n ((((((m || !i)) && !g[\"*\"])) && (i = Dc(a, c, d, e, \"*\", g))));\n return i;\n };\n ;\n function Ec(a, c) {\n var d, e, f = ((q.ajaxSettings.flatOptions || {\n }));\n {\n var fin4keys = ((window.top.JSBNG_Replay.forInKeys)((c))), fin4i = (0);\n (0);\n for (; (fin4i < fin4keys.length); (fin4i++)) {\n ((d) = (fin4keys[fin4i]));\n {\n ((((c[d] !== b)) && (((f[d] ? a : ((e || (e = {\n })))))[d] = c[d])));\n ;\n };\n };\n };\n ;\n ((e && q.extend(!0, a, e)));\n };\n ;\n function Fc(a, c, d) {\n var e, f, g, i, j = a.contents, k = a.dataTypes, l = a.responseFields;\n {\n var fin5keys = ((window.top.JSBNG_Replay.forInKeys)((l))), fin5i = (0);\n (0);\n for (; (fin5i < fin5keys.length); (fin5i++)) {\n ((f) = (fin5keys[fin5i]));\n {\n ((((f in d)) && (c[l[f]] = d[f])));\n ;\n };\n };\n };\n ;\n while (((k[0] === \"*\"))) {\n k.shift();\n ((((e === b)) && (e = ((a.mimeType || c.getResponseHeader(\"content-type\"))))));\n };\n ;\n if (e) {\n {\n var fin6keys = ((window.top.JSBNG_Replay.forInKeys)((j))), fin6i = (0);\n (0);\n for (; (fin6i < fin6keys.length); (fin6i++)) {\n ((f) = (fin6keys[fin6i]));\n {\n if (((j[f] && j[f].test(e)))) {\n k.unshift(f);\n break;\n }\n ;\n ;\n };\n };\n };\n }\n ;\n ;\n if (((k[0] in d))) g = k[0];\n else {\n {\n var fin7keys = ((window.top.JSBNG_Replay.forInKeys)((d))), fin7i = (0);\n (0);\n for (; (fin7i < fin7keys.length); (fin7i++)) {\n ((f) = (fin7keys[fin7i]));\n {\n if (((!k[0] || a.converters[((((f + \" \")) + k[0]))]))) {\n g = f;\n break;\n }\n ;\n ;\n ((i || (i = f)));\n };\n };\n };\n ;\n g = ((g || i));\n }\n ;\n ;\n if (g) {\n ((((g !== k[0])) && k.unshift(g)));\n return d[g];\n }\n ;\n ;\n };\n ;\n function Gc(a, b) {\n var c, d, e, f, g = a.dataTypes.slice(), i = g[0], j = {\n }, k = 0;\n ((a.dataFilter && (b = a.dataFilter(b, a.dataType))));\n if (g[1]) {\n {\n var fin8keys = ((window.top.JSBNG_Replay.forInKeys)((a.converters))), fin8i = (0);\n (0);\n for (; (fin8i < fin8keys.length); (fin8i++)) {\n ((c) = (fin8keys[fin8i]));\n {\n j[c.toLowerCase()] = a.converters[c];\n ;\n };\n };\n };\n }\n ;\n ;\n for (; e = g[++k]; ) {\n if (((e !== \"*\"))) {\n if (((((i !== \"*\")) && ((i !== e))))) {\n c = ((j[((((i + \" \")) + e))] || j[((\"* \" + e))]));\n if (!c) {\n {\n var fin9keys = ((window.top.JSBNG_Replay.forInKeys)((j))), fin9i = (0);\n (0);\n for (; (fin9i < fin9keys.length); (fin9i++)) {\n ((d) = (fin9keys[fin9i]));\n {\n f = d.split(\" \");\n if (((f[1] === e))) {\n c = ((j[((((i + \" \")) + f[0]))] || j[((\"* \" + f[0]))]));\n if (c) {\n if (((c === !0))) {\n c = j[d];\n }\n else {\n if (((j[d] !== !0))) {\n e = f[0];\n g.splice(k--, 0, e);\n }\n ;\n }\n ;\n ;\n break;\n }\n ;\n ;\n }\n ;\n ;\n };\n };\n };\n }\n ;\n ;\n if (((c !== !0))) {\n if (((c && a[\"throws\"]))) {\n b = c(b);\n }\n else {\n try {\n b = c(b);\n } catch (l) {\n return {\n state: \"parsererror\",\n error: ((c ? l : ((((((\"No conversion from \" + i)) + \" to \")) + e))))\n };\n };\n }\n ;\n }\n ;\n ;\n }\n ;\n ;\n i = e;\n }\n ;\n ;\n };\n ;\n return {\n state: \"success\",\n data: b\n };\n };\n ;\n function Oc() {\n try {\n return new a.JSBNG__XMLHttpRequest;\n } catch (b) {\n \n };\n ;\n };\n ;\n function Pc() {\n try {\n return new a.ActiveXObject(\"Microsoft.XMLHTTP\");\n } catch (b) {\n \n };\n ;\n };\n ;\n function Xc() {\n JSBNG__setTimeout(function() {\n Qc = b;\n }, 0);\n return Qc = q.now();\n };\n ;\n function Yc(a, b) {\n q.each(b, function(b, c) {\n var d = ((Wc[b] || [])).concat(Wc[\"*\"]), e = 0, f = d.length;\n for (; ((e < f)); e++) {\n if (d[e].call(a, b, c)) {\n return;\n }\n ;\n ;\n };\n ;\n });\n };\n ;\n function Zc(a, b, c) {\n var d, e = 0, f = 0, g = Vc.length, i = q.Deferred().always(function() {\n delete j.elem;\n }), j = function() {\n var b = ((Qc || Xc())), c = Math.max(0, ((((k.startTime + k.duration)) - b))), d = ((((c / k.duration)) || 0)), e = ((1 - d)), f = 0, g = k.tweens.length;\n for (; ((f < g)); f++) {\n k.tweens[f].run(e);\n ;\n };\n ;\n i.notifyWith(a, [k,e,c,]);\n if (((((e < 1)) && g))) {\n return c;\n }\n ;\n ;\n i.resolveWith(a, [k,]);\n return !1;\n }, k = i.promise({\n elem: a,\n props: q.extend({\n }, b),\n opts: q.extend(!0, {\n specialEasing: {\n }\n }, c),\n originalProperties: b,\n originalOptions: c,\n startTime: ((Qc || Xc())),\n duration: c.duration,\n tweens: [],\n createTween: function(b, c, d) {\n var e = q.Tween(a, k.opts, b, c, ((k.opts.specialEasing[b] || k.opts.easing)));\n k.tweens.push(e);\n return e;\n },\n JSBNG__stop: function(b) {\n var c = 0, d = ((b ? k.tweens.length : 0));\n for (; ((c < d)); c++) {\n k.tweens[c].run(1);\n ;\n };\n ;\n ((b ? i.resolveWith(a, [k,b,]) : i.rejectWith(a, [k,b,])));\n return this;\n }\n }), l = k.props;\n $c(l, k.opts.specialEasing);\n for (; ((e < g)); e++) {\n d = Vc[e].call(k, a, l, k.opts);\n if (d) {\n return d;\n }\n ;\n ;\n };\n ;\n Yc(k, l);\n ((q.isFunction(k.opts.start) && k.opts.start.call(a, k)));\n q.fx.timer(q.extend(j, {\n anim: k,\n queue: k.opts.queue,\n elem: a\n }));\n return k.progress(k.opts.progress).done(k.opts.done, k.opts.complete).fail(k.opts.fail).always(k.opts.always);\n };\n ;\n function $c(a, b) {\n var c, d, e, f, g;\n {\n var fin10keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin10i = (0);\n (0);\n for (; (fin10i < fin10keys.length); (fin10i++)) {\n ((c) = (fin10keys[fin10i]));\n {\n d = q.camelCase(c);\n e = b[d];\n f = a[c];\n if (q.isArray(f)) {\n e = f[1];\n f = a[c] = f[0];\n }\n ;\n ;\n if (((c !== d))) {\n a[d] = f;\n delete a[c];\n }\n ;\n ;\n g = q.cssHooks[d];\n if (((g && ((\"expand\" in g))))) {\n f = g.expand(f);\n delete a[d];\n {\n var fin11keys = ((window.top.JSBNG_Replay.forInKeys)((f))), fin11i = (0);\n (0);\n for (; (fin11i < fin11keys.length); (fin11i++)) {\n ((c) = (fin11keys[fin11i]));\n {\n if (!((c in a))) {\n a[c] = f[c];\n b[c] = e;\n }\n ;\n ;\n };\n };\n };\n ;\n }\n else b[d] = e;\n ;\n ;\n };\n };\n };\n ;\n };\n ;\n function _c(a, b, c) {\n var d, e, f, g, i, j, k, l, m, n = this, o = a.style, p = {\n }, r = [], s = ((a.nodeType && ac(a)));\n if (!c.queue) {\n l = q._queueHooks(a, \"fx\");\n if (((l.unqueued == null))) {\n l.unqueued = 0;\n m = l.empty.fire;\n l.empty.fire = function() {\n ((l.unqueued || m()));\n };\n }\n ;\n ;\n l.unqueued++;\n n.always(function() {\n n.always(function() {\n l.unqueued--;\n ((q.queue(a, \"fx\").length || l.empty.fire()));\n });\n });\n }\n ;\n ;\n if (((((a.nodeType === 1)) && ((((\"height\" in b)) || ((\"width\" in b))))))) {\n c.overflow = [o.overflow,o.overflowX,o.overflowY,];\n ((((((q.css(a, \"display\") === \"inline\")) && ((q.css(a, \"float\") === \"none\")))) && ((((!q.support.inlineBlockNeedsLayout || ((fc(a.nodeName) === \"inline\")))) ? o.display = \"inline-block\" : o.zoom = 1))));\n }\n ;\n ;\n if (c.overflow) {\n o.overflow = \"hidden\";\n ((q.support.shrinkWrapBlocks || n.done(function() {\n o.overflow = c.overflow[0];\n o.overflowX = c.overflow[1];\n o.overflowY = c.overflow[2];\n })));\n }\n ;\n ;\n {\n var fin12keys = ((window.top.JSBNG_Replay.forInKeys)((b))), fin12i = (0);\n (0);\n for (; (fin12i < fin12keys.length); (fin12i++)) {\n ((d) = (fin12keys[fin12i]));\n {\n f = b[d];\n if (Sc.exec(f)) {\n delete b[d];\n j = ((j || ((f === \"toggle\"))));\n if (((f === ((s ? \"hide\" : \"show\"))))) {\n continue;\n }\n ;\n ;\n r.push(d);\n }\n ;\n ;\n };\n };\n };\n ;\n g = r.length;\n if (g) {\n i = ((q._data(a, \"fxshow\") || q._data(a, \"fxshow\", {\n })));\n ((((\"hidden\" in i)) && (s = i.hidden)));\n ((j && (i.hidden = !s)));\n ((s ? q(a).show() : n.done(function() {\n q(a).hide();\n })));\n n.done(function() {\n var b;\n q.removeData(a, \"fxshow\", !0);\n {\n var fin13keys = ((window.top.JSBNG_Replay.forInKeys)((p))), fin13i = (0);\n (0);\n for (; (fin13i < fin13keys.length); (fin13i++)) {\n ((b) = (fin13keys[fin13i]));\n {\n q.style(a, b, p[b]);\n ;\n };\n };\n };\n ;\n });\n for (d = 0; ((d < g)); d++) {\n e = r[d];\n k = n.createTween(e, ((s ? i[e] : 0)));\n p[e] = ((i[e] || q.style(a, e)));\n if (!((e in i))) {\n i[e] = k.start;\n if (s) {\n k.end = k.start;\n k.start = ((((((e === \"width\")) || ((e === \"height\")))) ? 1 : 0));\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n };\n ;\n function ad(a, b, c, d, e) {\n return new ad.prototype.init(a, b, c, d, e);\n };\n ;\n function bd(a, b) {\n var c, d = {\n height: a\n }, e = 0;\n b = ((b ? 1 : 0));\n for (; ((e < 4)); e += ((2 - b))) {\n c = Yb[e];\n d[((\"margin\" + c))] = d[((\"padding\" + c))] = a;\n };\n ;\n ((b && (d.opacity = d.width = a)));\n return d;\n };\n ;\n function dd(a) {\n return ((q.isWindow(a) ? a : ((((a.nodeType === 9)) ? ((a.defaultView || a.parentWindow)) : !1))));\n };\n ;\n var c, d, e = a.JSBNG__document, f = a.JSBNG__location, g = a.JSBNG__navigator, i = a.jQuery, j = a.$, k = Array.prototype.push, l = Array.prototype.slice, m = Array.prototype.indexOf, n = Object.prototype.toString, o = Object.prototype.hasOwnProperty, p = String.prototype.trim, q = function(a, b) {\n return new q.fn.init(a, b, c);\n }, r = /[\\-+]?(?:\\d*\\.|)\\d+(?:[eE][\\-+]?\\d+|)/.source, s = /\\S/, t = /\\s+/, u = /^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, v = /^(?:[^#<]*(<[\\w\\W]+>)[^>]*$|#([\\w\\-]*)$)/, w = /^<(\\w+)\\s*\\/?>(?:<\\/\\1>|)$/, x = /^[\\],:{}\\s]*$/, y = /(?:^|:|,)(?:\\s*\\[)+/g, z = /\\\\(?:[\"\\\\\\/bfnrt]|u[\\da-fA-F]{4})/g, A = /\"[^\"\\\\\\r\\n]*\"|true|false|null|-?(?:\\d\\d*\\.|)\\d+(?:[eE][\\-+]?\\d+|)/g, B = /^-ms-/, C = /-([\\da-z])/gi, D = function(a, b) {\n return ((b + \"\")).toUpperCase();\n }, E = function() {\n if (e.JSBNG__addEventListener) {\n e.JSBNG__removeEventListener(\"DOMContentLoaded\", E, !1);\n q.ready();\n }\n else if (((e.readyState === \"complete\"))) {\n e.JSBNG__detachEvent(\"onreadystatechange\", E);\n q.ready();\n }\n \n ;\n ;\n }, F = {\n };\n q.fn = q.prototype = {\n constructor: q,\n init: function(a, c, d) {\n var f, g, i, j;\n if (!a) {\n return this;\n }\n ;\n ;\n if (a.nodeType) {\n this.context = this[0] = a;\n this.length = 1;\n return this;\n }\n ;\n ;\n if (((typeof a == \"string\"))) {\n ((((((((a.charAt(0) === \"\\u003C\")) && ((a.charAt(((a.length - 1))) === \"\\u003E\")))) && ((a.length >= 3)))) ? f = [null,a,null,] : f = v.exec(a)));\n if (((f && ((f[1] || !c))))) {\n if (f[1]) {\n c = ((((c instanceof q)) ? c[0] : c));\n j = ((((c && c.nodeType)) ? ((c.ownerDocument || c)) : e));\n a = q.parseHTML(f[1], j, !0);\n ((((w.test(f[1]) && q.isPlainObject(c))) && this.attr.call(a, c, !0)));\n return q.merge(this, a);\n }\n ;\n ;\n g = e.getElementById(f[2]);\n if (((g && g.parentNode))) {\n if (((g.id !== f[2]))) {\n return d.JSBNG__find(a);\n }\n ;\n ;\n this.length = 1;\n this[0] = g;\n }\n ;\n ;\n this.context = e;\n this.selector = a;\n return this;\n }\n ;\n ;\n return ((((!c || c.jquery)) ? ((c || d)).JSBNG__find(a) : this.constructor(c).JSBNG__find(a)));\n }\n ;\n ;\n if (q.isFunction(a)) {\n return d.ready(a);\n }\n ;\n ;\n if (((a.selector !== b))) {\n this.selector = a.selector;\n this.context = a.context;\n }\n ;\n ;\n return q.makeArray(a, this);\n },\n selector: \"\",\n jquery: \"1.8.3\",\n length: 0,\n size: function() {\n return this.length;\n },\n toArray: function() {\n return l.call(this);\n },\n get: function(a) {\n return ((((a == null)) ? this.toArray() : ((((a < 0)) ? this[((this.length + a))] : this[a]))));\n },\n pushStack: function(a, b, c) {\n var d = q.merge(this.constructor(), a);\n d.prevObject = this;\n d.context = this.context;\n ((((b === \"JSBNG__find\")) ? d.selector = ((((this.selector + ((this.selector ? \" \" : \"\")))) + c)) : ((b && (d.selector = ((((((((((this.selector + \".\")) + b)) + \"(\")) + c)) + \")\")))))));\n return d;\n },\n each: function(a, b) {\n return q.each(this, a, b);\n },\n ready: function(a) {\n q.ready.promise().done(a);\n return this;\n },\n eq: function(a) {\n a = +a;\n return ((((a === -1)) ? this.slice(a) : this.slice(a, ((a + 1)))));\n },\n first: function() {\n return this.eq(0);\n },\n last: function() {\n return this.eq(-1);\n },\n slice: function() {\n return this.pushStack(l.apply(this, arguments), \"slice\", l.call(arguments).join(\",\"));\n },\n map: function(a) {\n return this.pushStack(q.map(this, function(b, c) {\n return a.call(b, c, b);\n }));\n },\n end: function() {\n return ((this.prevObject || this.constructor(null)));\n },\n push: k,\n sort: [].sort,\n splice: [].splice\n };\n q.fn.init.prototype = q.fn;\n q.extend = q.fn.extend = function() {\n var a, c, d, e, f, g, i = ((arguments[0] || {\n })), j = 1, k = arguments.length, l = !1;\n if (((typeof i == \"boolean\"))) {\n l = i;\n i = ((arguments[1] || {\n }));\n j = 2;\n }\n ;\n ;\n ((((((typeof i != \"object\")) && !q.isFunction(i))) && (i = {\n })));\n if (((k === j))) {\n i = this;\n --j;\n }\n ;\n ;\n for (; ((j < k)); j++) {\n if ((((a = arguments[j]) != null))) {\n {\n var fin14keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin14i = (0);\n (0);\n for (; (fin14i < fin14keys.length); (fin14i++)) {\n ((c) = (fin14keys[fin14i]));\n {\n d = i[c];\n e = a[c];\n if (((i === e))) {\n continue;\n }\n ;\n ;\n if (((((l && e)) && ((q.isPlainObject(e) || (f = q.isArray(e))))))) {\n if (f) {\n f = !1;\n g = ((((d && q.isArray(d))) ? d : []));\n }\n else g = ((((d && q.isPlainObject(d))) ? d : {\n }));\n ;\n ;\n i[c] = q.extend(l, g, e);\n }\n else ((((e !== b)) && (i[c] = e)));\n ;\n ;\n };\n };\n };\n }\n ;\n ;\n };\n ;\n return i;\n };\n q.extend({\n noConflict: function(b) {\n ((((a.$ === q)) && (a.$ = j)));\n ((((b && ((a.jQuery === q)))) && (a.jQuery = i)));\n return q;\n },\n isReady: !1,\n readyWait: 1,\n holdReady: function(a) {\n ((a ? q.readyWait++ : q.ready(!0)));\n },\n ready: function(a) {\n if (((((a === !0)) ? --q.readyWait : q.isReady))) {\n return;\n }\n ;\n ;\n if (!e.body) {\n return JSBNG__setTimeout(q.ready, 1);\n }\n ;\n ;\n q.isReady = !0;\n if (((((a !== !0)) && ((--q.readyWait > 0))))) {\n return;\n }\n ;\n ;\n d.resolveWith(e, [q,]);\n ((q.fn.trigger && q(e).trigger(\"ready\").off(\"ready\")));\n },\n isFunction: function(a) {\n return ((q.type(a) === \"function\"));\n },\n isArray: ((Array.isArray || function(a) {\n return ((q.type(a) === \"array\"));\n })),\n isWindow: function(a) {\n return ((((a != null)) && ((a == a.window))));\n },\n isNumeric: function(a) {\n return ((!isNaN(parseFloat(a)) && isFinite(a)));\n },\n type: function(a) {\n return ((((a == null)) ? String(a) : ((F[n.call(a)] || \"object\"))));\n },\n isPlainObject: function(a) {\n if (((((((!a || ((q.type(a) !== \"object\")))) || a.nodeType)) || q.isWindow(a)))) {\n return !1;\n }\n ;\n ;\n try {\n if (((((a.constructor && !o.call(a, \"constructor\"))) && !o.call(a.constructor.prototype, \"isPrototypeOf\")))) {\n return !1;\n }\n ;\n ;\n } catch (c) {\n return !1;\n };\n ;\n var d;\n {\n var fin15keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin15i = (0);\n (0);\n for (; (fin15i < fin15keys.length); (fin15i++)) {\n ((d) = (fin15keys[fin15i]));\n {\n ;\n };\n };\n };\n ;\n return ((((d === b)) || o.call(a, d)));\n },\n isEmptyObject: function(a) {\n var b;\n {\n var fin16keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin16i = (0);\n (0);\n for (; (fin16i < fin16keys.length); (fin16i++)) {\n ((b) = (fin16keys[fin16i]));\n {\n return !1;\n };\n };\n };\n ;\n return !0;\n },\n error: function(a) {\n throw new Error(a);\n },\n parseHTML: function(a, b, c) {\n var d;\n if (((!a || ((typeof a != \"string\"))))) {\n return null;\n }\n ;\n ;\n if (((typeof b == \"boolean\"))) {\n c = b;\n b = 0;\n }\n ;\n ;\n b = ((b || e));\n if (d = w.exec(a)) {\n return [b.createElement(d[1]),];\n }\n ;\n ;\n d = q.buildFragment([a,], b, ((c ? null : [])));\n return q.merge([], ((d.cacheable ? q.clone(d.fragment) : d.fragment)).childNodes);\n },\n parseJSON: function(b) {\n if (((!b || ((typeof b != \"string\"))))) {\n return null;\n }\n ;\n ;\n b = q.trim(b);\n if (((a.JSON && a.JSON.parse))) {\n return a.JSON.parse(b);\n }\n ;\n ;\n if (x.test(b.replace(z, \"@\").replace(A, \"]\").replace(y, \"\"))) {\n return (new Function(((\"return \" + b))))();\n }\n ;\n ;\n q.error(((\"Invalid JSON: \" + b)));\n },\n parseXML: function(c) {\n var d, e;\n if (((!c || ((typeof c != \"string\"))))) {\n return null;\n }\n ;\n ;\n try {\n if (a.JSBNG__DOMParser) {\n e = new JSBNG__DOMParser;\n d = e.parseFromString(c, \"text/xml\");\n }\n else {\n d = new ActiveXObject(\"Microsoft.XMLDOM\");\n d.async = \"false\";\n d.loadXML(c);\n }\n ;\n ;\n } catch (f) {\n d = b;\n };\n ;\n ((((((!d || !d.documentElement)) || d.getElementsByTagName(\"parsererror\").length)) && q.error(((\"Invalid XML: \" + c)))));\n return d;\n },\n noop: function() {\n \n },\n globalEval: function(b) {\n ((((b && s.test(b))) && ((a.execScript || function(b) {\n a.eval.call(a, b);\n }))(b)));\n },\n camelCase: function(a) {\n return a.replace(B, \"ms-\").replace(C, D);\n },\n nodeName: function(a, b) {\n return ((a.nodeName && ((a.nodeName.toLowerCase() === b.toLowerCase()))));\n },\n each: function(a, c, d) {\n var e, f = 0, g = a.length, i = ((((g === b)) || q.isFunction(a)));\n if (d) {\n if (i) {\n {\n var fin17keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin17i = (0);\n (0);\n for (; (fin17i < fin17keys.length); (fin17i++)) {\n ((e) = (fin17keys[fin17i]));\n {\n if (((c.apply(a[e], d) === !1))) {\n break;\n }\n ;\n ;\n };\n };\n };\n ;\n }\n else for (; ((f < g)); ) {\n if (((c.apply(a[f++], d) === !1))) {\n break;\n }\n ;\n ;\n }\n ;\n ;\n }\n else if (i) {\n {\n var fin18keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin18i = (0);\n (0);\n for (; (fin18i < fin18keys.length); (fin18i++)) {\n ((e) = (fin18keys[fin18i]));\n {\n if (((c.call(a[e], e, a[e]) === !1))) {\n break;\n }\n ;\n ;\n };\n };\n };\n ;\n }\n else for (; ((f < g)); ) {\n if (((c.call(a[f], f, a[f++]) === !1))) {\n break;\n }\n ;\n ;\n }\n \n ;\n ;\n return a;\n },\n trim: ((((p && !p.call(\"\\ufeff\\u00a0\"))) ? function(a) {\n return ((((a == null)) ? \"\" : p.call(a)));\n } : function(a) {\n return ((((a == null)) ? \"\" : ((a + \"\")).replace(u, \"\")));\n })),\n makeArray: function(a, b) {\n var c, d = ((b || []));\n if (((a != null))) {\n c = q.type(a);\n ((((((((((((a.length == null)) || ((c === \"string\")))) || ((c === \"function\")))) || ((c === \"regexp\")))) || q.isWindow(a))) ? k.call(d, a) : q.merge(d, a)));\n }\n ;\n ;\n return d;\n },\n inArray: function(a, b, c) {\n var d;\n if (b) {\n if (m) {\n return m.call(b, a, c);\n }\n ;\n ;\n d = b.length;\n c = ((c ? ((((c < 0)) ? Math.max(0, ((d + c))) : c)) : 0));\n for (; ((c < d)); c++) {\n if (((((c in b)) && ((b[c] === a))))) {\n return c;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n return -1;\n },\n merge: function(a, c) {\n var d = c.length, e = a.length, f = 0;\n if (((typeof d == \"number\"))) {\n for (; ((f < d)); f++) {\n a[e++] = c[f];\n ;\n };\n }\n else {\n while (((c[f] !== b))) {\n a[e++] = c[f++];\n ;\n };\n }\n ;\n ;\n a.length = e;\n return a;\n },\n grep: function(a, b, c) {\n var d, e = [], f = 0, g = a.length;\n c = !!c;\n for (; ((f < g)); f++) {\n d = !!b(a[f], f);\n ((((c !== d)) && e.push(a[f])));\n };\n ;\n return e;\n },\n map: function(a, c, d) {\n var e, f, g = [], i = 0, j = a.length, k = ((((a instanceof q)) || ((((((j !== b)) && ((typeof j == \"number\")))) && ((((((((((j > 0)) && a[0])) && a[((j - 1))])) || ((j === 0)))) || q.isArray(a)))))));\n if (k) {\n for (; ((i < j)); i++) {\n e = c(a[i], i, d);\n ((((e != null)) && (g[g.length] = e)));\n };\n }\n else {\n {\n var fin19keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin19i = (0);\n (0);\n for (; (fin19i < fin19keys.length); (fin19i++)) {\n ((f) = (fin19keys[fin19i]));\n {\n e = c(a[f], f, d);\n ((((e != null)) && (g[g.length] = e)));\n };\n };\n };\n }\n ;\n ;\n return g.concat.apply([], g);\n },\n guid: 1,\n proxy: function(a, c) {\n var d, e, f;\n if (((typeof c == \"string\"))) {\n d = a[c];\n c = a;\n a = d;\n }\n ;\n ;\n if (!q.isFunction(a)) {\n return b;\n }\n ;\n ;\n e = l.call(arguments, 2);\n f = function() {\n return a.apply(c, e.concat(l.call(arguments)));\n };\n f.guid = a.guid = ((a.guid || q.guid++));\n return f;\n },\n access: function(a, c, d, e, f, g, i) {\n var j, k = ((d == null)), l = 0, m = a.length;\n if (((d && ((typeof d == \"object\"))))) {\n {\n var fin20keys = ((window.top.JSBNG_Replay.forInKeys)((d))), fin20i = (0);\n (0);\n for (; (fin20i < fin20keys.length); (fin20i++)) {\n ((l) = (fin20keys[fin20i]));\n {\n q.access(a, c, l, d[l], 1, g, e);\n ;\n };\n };\n };\n ;\n f = 1;\n }\n else if (((e !== b))) {\n j = ((((i === b)) && q.isFunction(e)));\n if (k) {\n if (j) {\n j = c;\n c = function(a, b, c) {\n return j.call(q(a), c);\n };\n }\n else {\n c.call(a, e);\n c = null;\n }\n ;\n }\n ;\n ;\n if (c) {\n for (; ((l < m)); l++) {\n c(a[l], d, ((j ? e.call(a[l], l, c(a[l], d)) : e)), i);\n ;\n };\n }\n ;\n ;\n f = 1;\n }\n \n ;\n ;\n return ((f ? a : ((k ? c.call(a) : ((m ? c(a[0], d) : g))))));\n },\n now: function() {\n return (new JSBNG__Date).getTime();\n }\n });\n q.ready.promise = function(b) {\n if (!d) {\n d = q.Deferred();\n if (((e.readyState === \"complete\"))) {\n JSBNG__setTimeout(q.ready, 1);\n }\n else {\n if (e.JSBNG__addEventListener) {\n e.JSBNG__addEventListener(\"DOMContentLoaded\", E, !1);\n a.JSBNG__addEventListener(\"load\", q.ready, !1);\n }\n else {\n e.JSBNG__attachEvent(\"onreadystatechange\", E);\n a.JSBNG__attachEvent(\"JSBNG__onload\", q.ready);\n var c = !1;\n try {\n c = ((((a.JSBNG__frameElement == null)) && e.documentElement));\n } catch (f) {\n \n };\n ;\n ((((c && c.doScroll)) && function g() {\n if (!q.isReady) {\n try {\n c.doScroll(\"left\");\n } catch (a) {\n return JSBNG__setTimeout(g, 50);\n };\n ;\n q.ready();\n }\n ;\n ;\n }()));\n }\n ;\n }\n ;\n ;\n }\n ;\n ;\n return d.promise(b);\n };\n q.each(\"Boolean Number String Function Array Date RegExp Object\".split(\" \"), function(a, b) {\n F[((((\"[object \" + b)) + \"]\"))] = b.toLowerCase();\n });\n c = q(e);\n var G = {\n };\n q.Callbacks = function(a) {\n a = ((((typeof a == \"string\")) ? ((G[a] || H(a))) : q.extend({\n }, a)));\n var c, d, e, f, g, i, j = [], k = ((!a.once && [])), l = function(b) {\n c = ((a.memory && b));\n d = !0;\n i = ((f || 0));\n f = 0;\n g = j.length;\n e = !0;\n for (; ((j && ((i < g)))); i++) {\n if (((((j[i].apply(b[0], b[1]) === !1)) && a.stopOnFalse))) {\n c = !1;\n break;\n }\n ;\n ;\n };\n ;\n e = !1;\n ((j && ((k ? ((k.length && l(k.shift()))) : ((c ? j = [] : m.disable()))))));\n }, m = {\n add: function() {\n if (j) {\n var b = j.length;\n (function d(b) {\n q.each(b, function(_, b) {\n var c = q.type(b);\n ((((c === \"function\")) ? ((((!a.unique || !m.has(b))) && j.push(b))) : ((((((b && b.length)) && ((c !== \"string\")))) && d(b)))));\n });\n })(arguments);\n if (e) {\n g = j.length;\n }\n else {\n if (c) {\n f = b;\n l(c);\n }\n ;\n }\n ;\n ;\n }\n ;\n ;\n return this;\n },\n remove: function() {\n ((j && q.each(arguments, function(_, a) {\n var b;\n while ((((b = q.inArray(a, j, b)) > -1))) {\n j.splice(b, 1);\n if (e) {\n ((((b <= g)) && g--));\n ((((b <= i)) && i--));\n }\n ;\n ;\n };\n ;\n })));\n return this;\n },\n has: function(a) {\n return ((q.inArray(a, j) > -1));\n },\n empty: function() {\n j = [];\n return this;\n },\n disable: function() {\n j = k = c = b;\n return this;\n },\n disabled: function() {\n return !j;\n },\n lock: function() {\n k = b;\n ((c || m.disable()));\n return this;\n },\n locked: function() {\n return !k;\n },\n fireWith: function(a, b) {\n b = ((b || []));\n b = [a,((b.slice ? b.slice() : b)),];\n ((((j && ((!d || k)))) && ((e ? k.push(b) : l(b)))));\n return this;\n },\n fire: function() {\n m.fireWith(this, arguments);\n return this;\n },\n fired: function() {\n return !!d;\n }\n };\n return m;\n };\n q.extend({\n Deferred: function(a) {\n var b = [[\"resolve\",\"done\",q.Callbacks(\"once memory\"),\"resolved\",],[\"reject\",\"fail\",q.Callbacks(\"once memory\"),\"rejected\",],[\"notify\",\"progress\",q.Callbacks(\"memory\"),],], c = \"pending\", d = {\n state: function() {\n return c;\n },\n always: function() {\n e.done(arguments).fail(arguments);\n return this;\n },\n then: function() {\n var a = arguments;\n return q.Deferred(function(c) {\n q.each(b, function(b, d) {\n var f = d[0], g = a[b];\n e[d[1]](((q.isFunction(g) ? function() {\n var a = g.apply(this, arguments);\n ((((a && q.isFunction(a.promise))) ? a.promise().done(c.resolve).fail(c.reject).progress(c.notify) : c[((f + \"With\"))](((((this === e)) ? c : this)), [a,])));\n } : c[f])));\n });\n a = null;\n }).promise();\n },\n promise: function(a) {\n return ((((a != null)) ? q.extend(a, d) : d));\n }\n }, e = {\n };\n d.pipe = d.then;\n q.each(b, function(a, f) {\n var g = f[2], i = f[3];\n d[f[1]] = g.add;\n ((i && g.add(function() {\n c = i;\n }, b[((a ^ 1))][2].disable, b[2][2].lock)));\n e[f[0]] = g.fire;\n e[((f[0] + \"With\"))] = g.fireWith;\n });\n d.promise(e);\n ((a && a.call(e, e)));\n return e;\n },\n when: function(a) {\n var b = 0, c = l.call(arguments), d = c.length, e = ((((((d !== 1)) || ((a && q.isFunction(a.promise))))) ? d : 0)), f = ((((e === 1)) ? a : q.Deferred())), g = function(a, b, c) {\n return function(d) {\n b[a] = this;\n c[a] = ((((arguments.length > 1)) ? l.call(arguments) : d));\n ((((c === i)) ? f.notifyWith(b, c) : ((--e || f.resolveWith(b, c)))));\n };\n }, i, j, k;\n if (((d > 1))) {\n i = new Array(d);\n j = new Array(d);\n k = new Array(d);\n for (; ((b < d)); b++) {\n ((((c[b] && q.isFunction(c[b].promise))) ? c[b].promise().done(g(b, k, c)).fail(f.reject).progress(g(b, j, i)) : --e));\n ;\n };\n ;\n }\n ;\n ;\n ((e || f.resolveWith(k, c)));\n return f.promise();\n }\n });\n q.support = function() {\n var b, c, d, f, g, i, j, k, l, m, n, o = e.createElement(\"div\");\n o.setAttribute(\"className\", \"t\");\n o.innerHTML = \" \\u003Clink/\\u003E\\u003Ctable\\u003E\\u003C/table\\u003E\\u003Ca href='/a'\\u003Ea\\u003C/a\\u003E\\u003Cinput type='checkbox'/\\u003E\";\n c = o.getElementsByTagName(\"*\");\n d = o.getElementsByTagName(\"a\")[0];\n if (((((!c || !d)) || !c.length))) {\n return {\n };\n }\n ;\n ;\n f = e.createElement(\"select\");\n g = f.appendChild(e.createElement(\"option\"));\n i = o.getElementsByTagName(\"input\")[0];\n d.style.cssText = \"top:1px;float:left;opacity:.5\";\n b = {\n leadingWhitespace: ((o.firstChild.nodeType === 3)),\n tbody: !o.getElementsByTagName(\"tbody\").length,\n htmlSerialize: !!o.getElementsByTagName(\"link\").length,\n style: /top/.test(d.getAttribute(\"style\")),\n hrefNormalized: ((d.getAttribute(\"href\") === \"/a\")),\n opacity: /^0.5/.test(d.style.opacity),\n cssFloat: !!d.style.cssFloat,\n checkOn: ((i.value === \"JSBNG__on\")),\n optSelected: g.selected,\n getSetAttribute: ((o.className !== \"t\")),\n enctype: !!e.createElement(\"form\").enctype,\n html5Clone: ((e.createElement(\"nav\").cloneNode(!0).outerHTML !== \"\\u003C:nav\\u003E\\u003C/:nav\\u003E\")),\n boxModel: ((e.compatMode === \"CSS1Compat\")),\n submitBubbles: !0,\n changeBubbles: !0,\n focusinBubbles: !1,\n deleteExpando: !0,\n noCloneEvent: !0,\n inlineBlockNeedsLayout: !1,\n shrinkWrapBlocks: !1,\n reliableMarginRight: !0,\n boxSizingReliable: !0,\n pixelPosition: !1\n };\n i.checked = !0;\n b.noCloneChecked = i.cloneNode(!0).checked;\n f.disabled = !0;\n b.optDisabled = !g.disabled;\n try {\n delete o.test;\n } catch (p) {\n b.deleteExpando = !1;\n };\n ;\n if (((((!o.JSBNG__addEventListener && o.JSBNG__attachEvent)) && o.fireEvent))) {\n o.JSBNG__attachEvent(\"JSBNG__onclick\", n = function() {\n b.noCloneEvent = !1;\n });\n o.cloneNode(!0).fireEvent(\"JSBNG__onclick\");\n o.JSBNG__detachEvent(\"JSBNG__onclick\", n);\n }\n ;\n ;\n i = e.createElement(\"input\");\n i.value = \"t\";\n i.setAttribute(\"type\", \"radio\");\n b.radioValue = ((i.value === \"t\"));\n i.setAttribute(\"checked\", \"checked\");\n i.setAttribute(\"JSBNG__name\", \"t\");\n o.appendChild(i);\n j = e.createDocumentFragment();\n j.appendChild(o.lastChild);\n b.checkClone = j.cloneNode(!0).cloneNode(!0).lastChild.checked;\n b.appendChecked = i.checked;\n j.removeChild(i);\n j.appendChild(o);\n if (o.JSBNG__attachEvent) {\n {\n var fin21keys = ((window.top.JSBNG_Replay.forInKeys)(({\n submit: !0,\n change: !0,\n focusin: !0\n }))), fin21i = (0);\n (0);\n for (; (fin21i < fin21keys.length); (fin21i++)) {\n ((l) = (fin21keys[fin21i]));\n {\n k = ((\"JSBNG__on\" + l));\n m = ((k in o));\n if (!m) {\n o.setAttribute(k, \"return;\");\n m = ((typeof o[k] == \"function\"));\n }\n ;\n ;\n b[((l + \"Bubbles\"))] = m;\n };\n };\n };\n }\n ;\n ;\n q(function() {\n var c, d, f, g, i = \"padding:0;margin:0;border:0;display:block;overflow:hidden;\", j = e.getElementsByTagName(\"body\")[0];\n if (!j) {\n return;\n }\n ;\n ;\n c = e.createElement(\"div\");\n c.style.cssText = \"visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px\";\n j.insertBefore(c, j.firstChild);\n d = e.createElement(\"div\");\n c.appendChild(d);\n d.innerHTML = \"\\u003Ctable\\u003E\\u003Ctr\\u003E\\u003Ctd\\u003E\\u003C/td\\u003E\\u003Ctd\\u003Et\\u003C/td\\u003E\\u003C/tr\\u003E\\u003C/table\\u003E\";\n f = d.getElementsByTagName(\"td\");\n f[0].style.cssText = \"padding:0;margin:0;border:0;display:none\";\n m = ((f[0].offsetHeight === 0));\n f[0].style.display = \"\";\n f[1].style.display = \"none\";\n b.reliableHiddenOffsets = ((m && ((f[0].offsetHeight === 0))));\n d.innerHTML = \"\";\n d.style.cssText = \"box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;\";\n b.boxSizing = ((d.offsetWidth === 4));\n b.doesNotIncludeMarginInBodyOffset = ((j.offsetTop !== 1));\n if (a.JSBNG__getComputedStyle) {\n b.pixelPosition = ((((a.JSBNG__getComputedStyle(d, null) || {\n })).JSBNG__top !== \"1%\"));\n b.boxSizingReliable = ((((a.JSBNG__getComputedStyle(d, null) || {\n width: \"4px\"\n })).width === \"4px\"));\n g = e.createElement(\"div\");\n g.style.cssText = d.style.cssText = i;\n g.style.marginRight = g.style.width = \"0\";\n d.style.width = \"1px\";\n d.appendChild(g);\n b.reliableMarginRight = !parseFloat(((a.JSBNG__getComputedStyle(g, null) || {\n })).marginRight);\n }\n ;\n ;\n if (((typeof d.style.zoom != \"undefined\"))) {\n d.innerHTML = \"\";\n d.style.cssText = ((i + \"width:1px;padding:1px;display:inline;zoom:1\"));\n b.inlineBlockNeedsLayout = ((d.offsetWidth === 3));\n d.style.display = \"block\";\n d.style.overflow = \"visible\";\n d.innerHTML = \"\\u003Cdiv\\u003E\\u003C/div\\u003E\";\n d.firstChild.style.width = \"5px\";\n b.shrinkWrapBlocks = ((d.offsetWidth !== 3));\n c.style.zoom = 1;\n }\n ;\n ;\n j.removeChild(c);\n c = d = f = g = null;\n });\n j.removeChild(o);\n c = d = f = g = i = j = o = null;\n return b;\n }();\n var I = /(?:\\{[\\s\\S]*\\}|\\[[\\s\\S]*\\])$/, J = /([A-Z])/g;\n q.extend({\n cache: {\n },\n deletedIds: [],\n uuid: 0,\n expando: ((\"jQuery\" + ((q.fn.jquery + Math.JSBNG__random())).replace(/\\D/g, \"\"))),\n noData: {\n embed: !0,\n object: \"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\",\n applet: !0\n },\n hasData: function(a) {\n a = ((a.nodeType ? q.cache[a[q.expando]] : a[q.expando]));\n return ((!!a && !L(a)));\n },\n data: function(a, c, d, e) {\n if (!q.acceptData(a)) {\n return;\n }\n ;\n ;\n var f, g, i = q.expando, j = ((typeof c == \"string\")), k = a.nodeType, l = ((k ? q.cache : a)), m = ((k ? a[i] : ((a[i] && i))));\n if (((((((((!m || !l[m])) || ((!e && !l[m].data)))) && j)) && ((d === b))))) {\n return;\n }\n ;\n ;\n ((m || ((k ? a[i] = m = ((q.deletedIds.pop() || q.guid++)) : m = i))));\n if (!l[m]) {\n l[m] = {\n };\n ((k || (l[m].toJSON = q.noop)));\n }\n ;\n ;\n if (((((typeof c == \"object\")) || ((typeof c == \"function\"))))) {\n ((e ? l[m] = q.extend(l[m], c) : l[m].data = q.extend(l[m].data, c)));\n }\n ;\n ;\n f = l[m];\n if (!e) {\n ((f.data || (f.data = {\n })));\n f = f.data;\n }\n ;\n ;\n ((((d !== b)) && (f[q.camelCase(c)] = d)));\n if (j) {\n g = f[c];\n ((((g == null)) && (g = f[q.camelCase(c)])));\n }\n else g = f;\n ;\n ;\n return g;\n },\n removeData: function(a, b, c) {\n if (!q.acceptData(a)) {\n return;\n }\n ;\n ;\n var d, e, f, g = a.nodeType, i = ((g ? q.cache : a)), j = ((g ? a[q.expando] : q.expando));\n if (!i[j]) {\n return;\n }\n ;\n ;\n if (b) {\n d = ((c ? i[j] : i[j].data));\n if (d) {\n if (!q.isArray(b)) {\n if (((b in d))) b = [b,];\n else {\n b = q.camelCase(b);\n ((((b in d)) ? b = [b,] : b = b.split(\" \")));\n }\n ;\n }\n ;\n ;\n for (e = 0, f = b.length; ((e < f)); e++) {\n delete d[b[e]];\n ;\n };\n ;\n if (!((c ? L : q.isEmptyObject))(d)) {\n return;\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n if (!c) {\n delete i[j].data;\n if (!L(i[j])) {\n return;\n }\n ;\n ;\n }\n ;\n ;\n ((g ? q.cleanData([a,], !0) : ((((q.support.deleteExpando || ((i != i.window)))) ? delete i[j] : i[j] = null))));\n },\n _data: function(a, b, c) {\n return q.data(a, b, c, !0);\n },\n acceptData: function(a) {\n var b = ((a.nodeName && q.noData[a.nodeName.toLowerCase()]));\n return ((!b || ((((b !== !0)) && ((a.getAttribute(\"classid\") === b))))));\n }\n });\n q.fn.extend({\n data: function(a, c) {\n var d, e, f, g, i, j = this[0], k = 0, l = null;\n if (((a === b))) {\n if (this.length) {\n l = q.data(j);\n if (((((j.nodeType === 1)) && !q._data(j, \"parsedAttrs\")))) {\n f = j.attributes;\n for (i = f.length; ((k < i)); k++) {\n g = f[k].JSBNG__name;\n if (!g.indexOf(\"data-\")) {\n g = q.camelCase(g.substring(5));\n K(j, g, l[g]);\n }\n ;\n ;\n };\n ;\n q._data(j, \"parsedAttrs\", !0);\n }\n ;\n ;\n }\n ;\n ;\n return l;\n }\n ;\n ;\n if (((typeof a == \"object\"))) {\n return this.each(function() {\n q.data(this, a);\n });\n }\n ;\n ;\n d = a.split(\".\", 2);\n d[1] = ((d[1] ? ((\".\" + d[1])) : \"\"));\n e = ((d[1] + \"!\"));\n return q.access(this, function(c) {\n if (((c === b))) {\n l = this.triggerHandler(((\"getData\" + e)), [d[0],]);\n if (((((l === b)) && j))) {\n l = q.data(j, a);\n l = K(j, a, l);\n }\n ;\n ;\n return ((((((l === b)) && d[1])) ? this.data(d[0]) : l));\n }\n ;\n ;\n d[1] = c;\n this.each(function() {\n var b = q(this);\n b.triggerHandler(((\"setData\" + e)), d);\n q.data(this, a, c);\n b.triggerHandler(((\"changeData\" + e)), d);\n });\n }, null, c, ((arguments.length > 1)), null, !1);\n },\n removeData: function(a) {\n return this.each(function() {\n q.removeData(this, a);\n });\n }\n });\n q.extend({\n queue: function(a, b, c) {\n var d;\n if (a) {\n b = ((((b || \"fx\")) + \"queue\"));\n d = q._data(a, b);\n ((c && ((((!d || q.isArray(c))) ? d = q._data(a, b, q.makeArray(c)) : d.push(c)))));\n return ((d || []));\n }\n ;\n ;\n },\n dequeue: function(a, b) {\n b = ((b || \"fx\"));\n var c = q.queue(a, b), d = c.length, e = c.shift(), f = q._queueHooks(a, b), g = function() {\n q.dequeue(a, b);\n };\n if (((e === \"inprogress\"))) {\n e = c.shift();\n d--;\n }\n ;\n ;\n if (e) {\n ((((b === \"fx\")) && c.unshift(\"inprogress\")));\n delete f.JSBNG__stop;\n e.call(a, g, f);\n }\n ;\n ;\n ((((!d && f)) && f.empty.fire()));\n },\n _queueHooks: function(a, b) {\n var c = ((b + \"queueHooks\"));\n return ((q._data(a, c) || q._data(a, c, {\n empty: q.Callbacks(\"once memory\").add(function() {\n q.removeData(a, ((b + \"queue\")), !0);\n q.removeData(a, c, !0);\n })\n })));\n }\n });\n q.fn.extend({\n queue: function(a, c) {\n var d = 2;\n if (((typeof a != \"string\"))) {\n c = a;\n a = \"fx\";\n d--;\n }\n ;\n ;\n return ((((arguments.length < d)) ? q.queue(this[0], a) : ((((c === b)) ? this : this.each(function() {\n var b = q.queue(this, a, c);\n q._queueHooks(this, a);\n ((((((a === \"fx\")) && ((b[0] !== \"inprogress\")))) && q.dequeue(this, a)));\n })))));\n },\n dequeue: function(a) {\n return this.each(function() {\n q.dequeue(this, a);\n });\n },\n delay: function(a, b) {\n a = ((q.fx ? ((q.fx.speeds[a] || a)) : a));\n b = ((b || \"fx\"));\n return this.queue(b, function(b, c) {\n var d = JSBNG__setTimeout(b, a);\n c.JSBNG__stop = function() {\n JSBNG__clearTimeout(d);\n };\n });\n },\n clearQueue: function(a) {\n return this.queue(((a || \"fx\")), []);\n },\n promise: function(a, c) {\n var d, e = 1, f = q.Deferred(), g = this, i = this.length, j = function() {\n ((--e || f.resolveWith(g, [g,])));\n };\n if (((typeof a != \"string\"))) {\n c = a;\n a = b;\n }\n ;\n ;\n a = ((a || \"fx\"));\n while (i--) {\n d = q._data(g[i], ((a + \"queueHooks\")));\n if (((d && d.empty))) {\n e++;\n d.empty.add(j);\n }\n ;\n ;\n };\n ;\n j();\n return f.promise(c);\n }\n });\n var M, N, O, P = /[\\t\\r\\n]/g, Q = /\\r/g, R = /^(?:button|input)$/i, S = /^(?:button|input|object|select|textarea)$/i, T = /^a(?:rea|)$/i, U = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i, V = q.support.getSetAttribute;\n q.fn.extend({\n attr: function(a, b) {\n return q.access(this, q.attr, a, b, ((arguments.length > 1)));\n },\n removeAttr: function(a) {\n return this.each(function() {\n q.removeAttr(this, a);\n });\n },\n prop: function(a, b) {\n return q.access(this, q.prop, a, b, ((arguments.length > 1)));\n },\n removeProp: function(a) {\n a = ((q.propFix[a] || a));\n return this.each(function() {\n try {\n this[a] = b;\n delete this[a];\n } catch (c) {\n \n };\n ;\n });\n },\n addClass: function(a) {\n var b, c, d, e, f, g, i;\n if (q.isFunction(a)) {\n return this.each(function(b) {\n q(this).addClass(a.call(this, b, this.className));\n });\n }\n ;\n ;\n if (((a && ((typeof a == \"string\"))))) {\n b = a.split(t);\n for (c = 0, d = this.length; ((c < d)); c++) {\n e = this[c];\n if (((e.nodeType === 1))) {\n if (((!e.className && ((b.length === 1))))) e.className = a;\n else {\n f = ((((\" \" + e.className)) + \" \"));\n for (g = 0, i = b.length; ((g < i)); g++) {\n ((((f.indexOf(((((\" \" + b[g])) + \" \"))) < 0)) && (f += ((b[g] + \" \")))));\n ;\n };\n ;\n e.className = q.trim(f);\n }\n ;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n return this;\n },\n removeClass: function(a) {\n var c, d, e, f, g, i, j;\n if (q.isFunction(a)) {\n return this.each(function(b) {\n q(this).removeClass(a.call(this, b, this.className));\n });\n }\n ;\n ;\n if (((((a && ((typeof a == \"string\")))) || ((a === b))))) {\n c = ((a || \"\")).split(t);\n for (i = 0, j = this.length; ((i < j)); i++) {\n e = this[i];\n if (((((e.nodeType === 1)) && e.className))) {\n d = ((((\" \" + e.className)) + \" \")).replace(P, \" \");\n for (f = 0, g = c.length; ((f < g)); f++) {\n while (((d.indexOf(((((\" \" + c[f])) + \" \"))) >= 0))) {\n d = d.replace(((((\" \" + c[f])) + \" \")), \" \");\n ;\n };\n ;\n };\n ;\n e.className = ((a ? q.trim(d) : \"\"));\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n return this;\n },\n toggleClass: function(a, b) {\n var c = typeof a, d = ((typeof b == \"boolean\"));\n return ((q.isFunction(a) ? this.each(function(c) {\n q(this).toggleClass(a.call(this, c, this.className, b), b);\n }) : this.each(function() {\n if (((c === \"string\"))) {\n var e, f = 0, g = q(this), i = b, j = a.split(t);\n while (e = j[f++]) {\n i = ((d ? i : !g.hasClass(e)));\n g[((i ? \"addClass\" : \"removeClass\"))](e);\n };\n ;\n }\n else if (((((c === \"undefined\")) || ((c === \"boolean\"))))) {\n ((this.className && q._data(this, \"__className__\", this.className)));\n this.className = ((((this.className || ((a === !1)))) ? \"\" : ((q._data(this, \"__className__\") || \"\"))));\n }\n \n ;\n ;\n })));\n },\n hasClass: function(a) {\n var b = ((((\" \" + a)) + \" \")), c = 0, d = this.length;\n for (; ((c < d)); c++) {\n if (((((this[c].nodeType === 1)) && ((((((\" \" + this[c].className)) + \" \")).replace(P, \" \").indexOf(b) >= 0))))) {\n return !0;\n }\n ;\n ;\n };\n ;\n return !1;\n },\n val: function(a) {\n var c, d, e, f = this[0];\n if (!arguments.length) {\n if (f) {\n c = ((q.valHooks[f.type] || q.valHooks[f.nodeName.toLowerCase()]));\n if (((((c && ((\"get\" in c)))) && (((d = c.get(f, \"value\")) !== b))))) {\n return d;\n }\n ;\n ;\n d = f.value;\n return ((((typeof d == \"string\")) ? d.replace(Q, \"\") : ((((d == null)) ? \"\" : d))));\n }\n ;\n ;\n return;\n }\n ;\n ;\n e = q.isFunction(a);\n return this.each(function(d) {\n var f, g = q(this);\n if (((this.nodeType !== 1))) {\n return;\n }\n ;\n ;\n ((e ? f = a.call(this, d, g.val()) : f = a));\n ((((f == null)) ? f = \"\" : ((((typeof f == \"number\")) ? f += \"\" : ((q.isArray(f) && (f = q.map(f, function(a) {\n return ((((a == null)) ? \"\" : ((a + \"\"))));\n }))))))));\n c = ((q.valHooks[this.type] || q.valHooks[this.nodeName.toLowerCase()]));\n if (((((!c || !((\"set\" in c)))) || ((c.set(this, f, \"value\") === b))))) {\n this.value = f;\n }\n ;\n ;\n });\n }\n });\n q.extend({\n valHooks: {\n option: {\n get: function(a) {\n var b = a.attributes.value;\n return ((((!b || b.specified)) ? a.value : a.text));\n }\n },\n select: {\n get: function(a) {\n var b, c, d = a.options, e = a.selectedIndex, f = ((((a.type === \"select-one\")) || ((e < 0)))), g = ((f ? null : [])), i = ((f ? ((e + 1)) : d.length)), j = ((((e < 0)) ? i : ((f ? e : 0))));\n for (; ((j < i)); j++) {\n c = d[j];\n if (((((((c.selected || ((j === e)))) && ((q.support.optDisabled ? !c.disabled : ((c.getAttribute(\"disabled\") === null)))))) && ((!c.parentNode.disabled || !q.nodeName(c.parentNode, \"optgroup\")))))) {\n b = q(c).val();\n if (f) {\n return b;\n }\n ;\n ;\n g.push(b);\n }\n ;\n ;\n };\n ;\n return g;\n },\n set: function(a, b) {\n var c = q.makeArray(b);\n q(a).JSBNG__find(\"option\").each(function() {\n this.selected = ((q.inArray(q(this).val(), c) >= 0));\n });\n ((c.length || (a.selectedIndex = -1)));\n return c;\n }\n }\n },\n attrFn: {\n },\n attr: function(a, c, d, e) {\n var f, g, i, j = a.nodeType;\n if (((((((!a || ((j === 3)))) || ((j === 8)))) || ((j === 2))))) {\n return;\n }\n ;\n ;\n if (((e && q.isFunction(q.fn[c])))) {\n return q(a)[c](d);\n }\n ;\n ;\n if (((typeof a.getAttribute == \"undefined\"))) {\n return q.prop(a, c, d);\n }\n ;\n ;\n i = ((((j !== 1)) || !q.isXMLDoc(a)));\n if (i) {\n c = c.toLowerCase();\n g = ((q.attrHooks[c] || ((U.test(c) ? N : M))));\n }\n ;\n ;\n if (((d !== b))) {\n if (((d === null))) {\n q.removeAttr(a, c);\n return;\n }\n ;\n ;\n if (((((((g && ((\"set\" in g)))) && i)) && (((f = g.set(a, d, c)) !== b))))) {\n return f;\n }\n ;\n ;\n a.setAttribute(c, ((d + \"\")));\n return d;\n }\n ;\n ;\n if (((((((g && ((\"get\" in g)))) && i)) && (((f = g.get(a, c)) !== null))))) {\n return f;\n }\n ;\n ;\n f = a.getAttribute(c);\n return ((((f === null)) ? b : f));\n },\n removeAttr: function(a, b) {\n var c, d, e, f, g = 0;\n if (((b && ((a.nodeType === 1))))) {\n d = b.split(t);\n for (; ((g < d.length)); g++) {\n e = d[g];\n if (e) {\n c = ((q.propFix[e] || e));\n f = U.test(e);\n ((f || q.attr(a, e, \"\")));\n a.removeAttribute(((V ? e : c)));\n ((((f && ((c in a)))) && (a[c] = !1)));\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n },\n attrHooks: {\n type: {\n set: function(a, b) {\n if (((R.test(a.nodeName) && a.parentNode))) {\n q.error(\"type property can't be changed\");\n }\n else {\n if (((((!q.support.radioValue && ((b === \"radio\")))) && q.nodeName(a, \"input\")))) {\n var c = a.value;\n a.setAttribute(\"type\", b);\n ((c && (a.value = c)));\n return b;\n }\n ;\n }\n ;\n ;\n }\n },\n value: {\n get: function(a, b) {\n return ((((M && q.nodeName(a, \"button\"))) ? M.get(a, b) : ((((b in a)) ? a.value : null))));\n },\n set: function(a, b, c) {\n if (((M && q.nodeName(a, \"button\")))) {\n return M.set(a, b, c);\n }\n ;\n ;\n a.value = b;\n }\n }\n },\n propFix: {\n tabindex: \"tabIndex\",\n readonly: \"readOnly\",\n \"for\": \"htmlFor\",\n class: \"className\",\n maxlength: \"maxLength\",\n cellspacing: \"cellSpacing\",\n cellpadding: \"cellPadding\",\n rowspan: \"rowSpan\",\n colspan: \"colSpan\",\n usemap: \"useMap\",\n frameborder: \"frameBorder\",\n contenteditable: \"contentEditable\"\n },\n prop: function(a, c, d) {\n var e, f, g, i = a.nodeType;\n if (((((((!a || ((i === 3)))) || ((i === 8)))) || ((i === 2))))) {\n return;\n }\n ;\n ;\n g = ((((i !== 1)) || !q.isXMLDoc(a)));\n if (g) {\n c = ((q.propFix[c] || c));\n f = q.propHooks[c];\n }\n ;\n ;\n return ((((d !== b)) ? ((((((f && ((\"set\" in f)))) && (((e = f.set(a, d, c)) !== b)))) ? e : a[c] = d)) : ((((((f && ((\"get\" in f)))) && (((e = f.get(a, c)) !== null)))) ? e : a[c]))));\n },\n propHooks: {\n tabIndex: {\n get: function(a) {\n var c = a.getAttributeNode(\"tabindex\");\n return ((((c && c.specified)) ? parseInt(c.value, 10) : ((((S.test(a.nodeName) || ((T.test(a.nodeName) && a.href)))) ? 0 : b))));\n }\n }\n }\n });\n N = {\n get: function(a, c) {\n var d, e = q.prop(a, c);\n return ((((((e === !0)) || ((((((typeof e != \"boolean\")) && (d = a.getAttributeNode(c)))) && ((d.nodeValue !== !1)))))) ? c.toLowerCase() : b));\n },\n set: function(a, b, c) {\n var d;\n if (((b === !1))) q.removeAttr(a, c);\n else {\n d = ((q.propFix[c] || c));\n ((((d in a)) && (a[d] = !0)));\n a.setAttribute(c, c.toLowerCase());\n }\n ;\n ;\n return c;\n }\n };\n if (!V) {\n O = {\n JSBNG__name: !0,\n id: !0,\n coords: !0\n };\n M = q.valHooks.button = {\n get: function(a, c) {\n var d;\n d = a.getAttributeNode(c);\n return ((((d && ((O[c] ? ((d.value !== \"\")) : d.specified)))) ? d.value : b));\n },\n set: function(a, b, c) {\n var d = a.getAttributeNode(c);\n if (!d) {\n d = e.createAttribute(c);\n a.setAttributeNode(d);\n }\n ;\n ;\n return d.value = ((b + \"\"));\n }\n };\n q.each([\"width\",\"height\",], function(a, b) {\n q.attrHooks[b] = q.extend(q.attrHooks[b], {\n set: function(a, c) {\n if (((c === \"\"))) {\n a.setAttribute(b, \"auto\");\n return c;\n }\n ;\n ;\n }\n });\n });\n q.attrHooks.contenteditable = {\n get: M.get,\n set: function(a, b, c) {\n ((((b === \"\")) && (b = \"false\")));\n M.set(a, b, c);\n }\n };\n }\n ;\n ;\n ((q.support.hrefNormalized || q.each([\"href\",\"src\",\"width\",\"height\",], function(a, c) {\n q.attrHooks[c] = q.extend(q.attrHooks[c], {\n get: function(a) {\n var d = a.getAttribute(c, 2);\n return ((((d === null)) ? b : d));\n }\n });\n })));\n ((q.support.style || (q.attrHooks.style = {\n get: function(a) {\n return ((a.style.cssText.toLowerCase() || b));\n },\n set: function(a, b) {\n return a.style.cssText = ((b + \"\"));\n }\n })));\n ((q.support.optSelected || (q.propHooks.selected = q.extend(q.propHooks.selected, {\n get: function(a) {\n var b = a.parentNode;\n if (b) {\n b.selectedIndex;\n ((b.parentNode && b.parentNode.selectedIndex));\n }\n ;\n ;\n return null;\n }\n }))));\n ((q.support.enctype || (q.propFix.enctype = \"encoding\")));\n ((q.support.checkOn || q.each([\"radio\",\"checkbox\",], function() {\n q.valHooks[this] = {\n get: function(a) {\n return ((((a.getAttribute(\"value\") === null)) ? \"JSBNG__on\" : a.value));\n }\n };\n })));\n q.each([\"radio\",\"checkbox\",], function() {\n q.valHooks[this] = q.extend(q.valHooks[this], {\n set: function(a, b) {\n if (q.isArray(b)) {\n return a.checked = ((q.inArray(q(a).val(), b) >= 0));\n }\n ;\n ;\n }\n });\n });\n var W = /^(?:textarea|input|select)$/i, X = /^([^\\.]*|)(?:\\.(.+)|)$/, Y = /(?:^|\\s)hover(\\.\\S+|)\\b/, Z = /^key/, ab = /^(?:mouse|contextmenu)|click/, bb = /^(?:focusinfocus|focusoutblur)$/, cb = function(a) {\n return ((q.JSBNG__event.special.hover ? a : a.replace(Y, \"mouseenter$1 mouseleave$1\")));\n };\n q.JSBNG__event = {\n add: function(a, c, d, e, f) {\n var g, i, j, k, l, m, n, o, p, r, s;\n if (((((((((((a.nodeType === 3)) || ((a.nodeType === 8)))) || !c)) || !d)) || !(g = q._data(a))))) {\n return;\n }\n ;\n ;\n if (d.handler) {\n p = d;\n d = p.handler;\n f = p.selector;\n }\n ;\n ;\n ((d.guid || (d.guid = q.guid++)));\n j = g.events;\n ((j || (g.events = j = {\n })));\n i = g.handle;\n if (!i) {\n g.handle = i = function(a) {\n return ((((((typeof q == \"undefined\")) || ((!!a && ((q.JSBNG__event.triggered === a.type)))))) ? b : q.JSBNG__event.dispatch.apply(i.elem, arguments)));\n };\n i.elem = a;\n }\n ;\n ;\n c = q.trim(cb(c)).split(\" \");\n for (k = 0; ((k < c.length)); k++) {\n l = ((X.exec(c[k]) || []));\n m = l[1];\n n = ((l[2] || \"\")).split(\".\").sort();\n s = ((q.JSBNG__event.special[m] || {\n }));\n m = ((((f ? s.delegateType : s.bindType)) || m));\n s = ((q.JSBNG__event.special[m] || {\n }));\n o = q.extend({\n type: m,\n origType: l[1],\n data: e,\n handler: d,\n guid: d.guid,\n selector: f,\n needsContext: ((f && q.expr.match.needsContext.test(f))),\n namespace: n.join(\".\")\n }, p);\n r = j[m];\n if (!r) {\n r = j[m] = [];\n r.delegateCount = 0;\n if (((!s.setup || ((s.setup.call(a, e, n, i) === !1))))) {\n ((a.JSBNG__addEventListener ? a.JSBNG__addEventListener(m, i, !1) : ((a.JSBNG__attachEvent && a.JSBNG__attachEvent(((\"JSBNG__on\" + m)), i)))));\n }\n ;\n ;\n }\n ;\n ;\n if (s.add) {\n s.add.call(a, o);\n ((o.handler.guid || (o.handler.guid = d.guid)));\n }\n ;\n ;\n ((f ? r.splice(r.delegateCount++, 0, o) : r.push(o)));\n q.JSBNG__event.global[m] = !0;\n };\n ;\n a = null;\n },\n global: {\n },\n remove: function(a, b, c, d, e) {\n var f, g, i, j, k, l, m, n, o, p, r, s = ((q.hasData(a) && q._data(a)));\n if (((!s || !(n = s.events)))) {\n return;\n }\n ;\n ;\n b = q.trim(cb(((b || \"\")))).split(\" \");\n for (f = 0; ((f < b.length)); f++) {\n g = ((X.exec(b[f]) || []));\n i = j = g[1];\n k = g[2];\n if (!i) {\n {\n var fin22keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin22i = (0);\n (0);\n for (; (fin22i < fin22keys.length); (fin22i++)) {\n ((i) = (fin22keys[fin22i]));\n {\n q.JSBNG__event.remove(a, ((i + b[f])), c, d, !0);\n ;\n };\n };\n };\n ;\n continue;\n }\n ;\n ;\n o = ((q.JSBNG__event.special[i] || {\n }));\n i = ((((d ? o.delegateType : o.bindType)) || i));\n p = ((n[i] || []));\n l = p.length;\n k = ((k ? new RegExp(((((\"(^|\\\\.)\" + k.split(\".\").sort().join(\"\\\\.(?:.*\\\\.|)\"))) + \"(\\\\.|$)\"))) : null));\n for (m = 0; ((m < p.length)); m++) {\n r = p[m];\n if (((((((((e || ((j === r.origType)))) && ((!c || ((c.guid === r.guid)))))) && ((!k || k.test(r.namespace))))) && ((((!d || ((d === r.selector)))) || ((((d === \"**\")) && r.selector))))))) {\n p.splice(m--, 1);\n ((r.selector && p.delegateCount--));\n ((o.remove && o.remove.call(a, r)));\n }\n ;\n ;\n };\n ;\n if (((((p.length === 0)) && ((l !== p.length))))) {\n ((((!o.teardown || ((o.teardown.call(a, k, s.handle) === !1)))) && q.removeEvent(a, i, s.handle)));\n delete n[i];\n }\n ;\n ;\n };\n ;\n if (q.isEmptyObject(n)) {\n delete s.handle;\n q.removeData(a, \"events\", !0);\n }\n ;\n ;\n },\n customEvent: {\n getData: !0,\n setData: !0,\n changeData: !0\n },\n trigger: function(c, d, f, g) {\n if (((!f || ((((f.nodeType !== 3)) && ((f.nodeType !== 8))))))) {\n var i, j, k, l, m, n, o, p, r, s, t = ((c.type || c)), u = [];\n if (bb.test(((t + q.JSBNG__event.triggered)))) {\n return;\n }\n ;\n ;\n if (((t.indexOf(\"!\") >= 0))) {\n t = t.slice(0, -1);\n j = !0;\n }\n ;\n ;\n if (((t.indexOf(\".\") >= 0))) {\n u = t.split(\".\");\n t = u.shift();\n u.sort();\n }\n ;\n ;\n if (((((!f || q.JSBNG__event.customEvent[t])) && !q.JSBNG__event.global[t]))) {\n return;\n }\n ;\n ;\n c = ((((typeof c == \"object\")) ? ((c[q.expando] ? c : new q.JSBNG__Event(t, c))) : new q.JSBNG__Event(t)));\n c.type = t;\n c.isTrigger = !0;\n c.exclusive = j;\n c.namespace = u.join(\".\");\n c.namespace_re = ((c.namespace ? new RegExp(((((\"(^|\\\\.)\" + u.join(\"\\\\.(?:.*\\\\.|)\"))) + \"(\\\\.|$)\"))) : null));\n n = ((((t.indexOf(\":\") < 0)) ? ((\"JSBNG__on\" + t)) : \"\"));\n if (!f) {\n i = q.cache;\n {\n var fin23keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin23i = (0);\n (0);\n for (; (fin23i < fin23keys.length); (fin23i++)) {\n ((k) = (fin23keys[fin23i]));\n {\n ((((i[k].events && i[k].events[t])) && q.JSBNG__event.trigger(c, d, i[k].handle.elem, !0)));\n ;\n };\n };\n };\n ;\n return;\n }\n ;\n ;\n c.result = b;\n ((c.target || (c.target = f)));\n d = ((((d != null)) ? q.makeArray(d) : []));\n d.unshift(c);\n o = ((q.JSBNG__event.special[t] || {\n }));\n if (((o.trigger && ((o.trigger.apply(f, d) === !1))))) {\n return;\n }\n ;\n ;\n r = [[f,((o.bindType || t)),],];\n if (((((!g && !o.noBubble)) && !q.isWindow(f)))) {\n s = ((o.delegateType || t));\n l = ((bb.test(((s + t))) ? f : f.parentNode));\n for (m = f; l; l = l.parentNode) {\n r.push([l,s,]);\n m = l;\n };\n ;\n ((((m === ((f.ownerDocument || e)))) && r.push([((((m.defaultView || m.parentWindow)) || a)),s,])));\n }\n ;\n ;\n for (k = 0; ((((k < r.length)) && !c.isPropagationStopped())); k++) {\n l = r[k][0];\n c.type = r[k][1];\n p = ((((q._data(l, \"events\") || {\n }))[c.type] && q._data(l, \"handle\")));\n ((p && p.apply(l, d)));\n p = ((n && l[n]));\n ((((((((p && q.acceptData(l))) && p.apply)) && ((p.apply(l, d) === !1)))) && c.preventDefault()));\n };\n ;\n c.type = t;\n if (((((((((((((((((!g && !c.isDefaultPrevented())) && ((!o._default || ((o._default.apply(f.ownerDocument, d) === !1)))))) && ((((t !== \"click\")) || !q.nodeName(f, \"a\"))))) && q.acceptData(f))) && n)) && f[t])) && ((((((t !== \"JSBNG__focus\")) && ((t !== \"JSBNG__blur\")))) || ((c.target.offsetWidth !== 0)))))) && !q.isWindow(f)))) {\n m = f[n];\n ((m && (f[n] = null)));\n q.JSBNG__event.triggered = t;\n f[t]();\n q.JSBNG__event.triggered = b;\n ((m && (f[n] = m)));\n }\n ;\n ;\n return c.result;\n }\n ;\n ;\n return;\n },\n dispatch: function(c) {\n c = q.JSBNG__event.fix(((c || a.JSBNG__event)));\n var d, e, f, g, i, j, k, m, n, o, p = ((((q._data(this, \"events\") || {\n }))[c.type] || [])), r = p.delegateCount, s = l.call(arguments), t = ((!c.exclusive && !c.namespace)), u = ((q.JSBNG__event.special[c.type] || {\n })), v = [];\n s[0] = c;\n c.delegateTarget = this;\n if (((u.preDispatch && ((u.preDispatch.call(this, c) === !1))))) {\n return;\n }\n ;\n ;\n if (((r && ((!c.button || ((c.type !== \"click\"))))))) {\n for (f = c.target; ((f != this)); f = ((f.parentNode || this))) {\n if (((((f.disabled !== !0)) || ((c.type !== \"click\"))))) {\n i = {\n };\n k = [];\n for (d = 0; ((d < r)); d++) {\n m = p[d];\n n = m.selector;\n ((((i[n] === b)) && (i[n] = ((m.needsContext ? ((q(n, this).index(f) >= 0)) : q.JSBNG__find(n, this, null, [f,]).length)))));\n ((i[n] && k.push(m)));\n };\n ;\n ((k.length && v.push({\n elem: f,\n matches: k\n })));\n }\n ;\n ;\n };\n }\n ;\n ;\n ((((p.length > r)) && v.push({\n elem: this,\n matches: p.slice(r)\n })));\n for (d = 0; ((((d < v.length)) && !c.isPropagationStopped())); d++) {\n j = v[d];\n c.currentTarget = j.elem;\n for (e = 0; ((((e < j.matches.length)) && !c.isImmediatePropagationStopped())); e++) {\n m = j.matches[e];\n if (((((t || ((!c.namespace && !m.namespace)))) || ((c.namespace_re && c.namespace_re.test(m.namespace)))))) {\n c.data = m.data;\n c.handleObj = m;\n g = ((((q.JSBNG__event.special[m.origType] || {\n })).handle || m.handler)).apply(j.elem, s);\n if (((g !== b))) {\n c.result = g;\n if (((g === !1))) {\n c.preventDefault();\n c.stopPropagation();\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n };\n ;\n ((u.postDispatch && u.postDispatch.call(this, c)));\n return c.result;\n },\n props: \"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which\".split(\" \"),\n fixHooks: {\n },\n keyHooks: {\n props: \"char charCode key keyCode\".split(\" \"),\n filter: function(a, b) {\n ((((a.which == null)) && (a.which = ((((b.charCode != null)) ? b.charCode : b.keyCode)))));\n return a;\n }\n },\n mouseHooks: {\n props: \"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement\".split(\" \"),\n filter: function(a, c) {\n var d, f, g, i = c.button, j = c.fromElement;\n if (((((a.pageX == null)) && ((c.clientX != null))))) {\n d = ((a.target.ownerDocument || e));\n f = d.documentElement;\n g = d.body;\n a.pageX = ((((c.clientX + ((((((f && f.scrollLeft)) || ((g && g.scrollLeft)))) || 0)))) - ((((((f && f.clientLeft)) || ((g && g.clientLeft)))) || 0))));\n a.pageY = ((((c.clientY + ((((((f && f.scrollTop)) || ((g && g.scrollTop)))) || 0)))) - ((((((f && f.clientTop)) || ((g && g.clientTop)))) || 0))));\n }\n ;\n ;\n ((((!a.relatedTarget && j)) && (a.relatedTarget = ((((j === a.target)) ? c.toElement : j)))));\n ((((!a.which && ((i !== b)))) && (a.which = ((((i & 1)) ? 1 : ((((i & 2)) ? 3 : ((((i & 4)) ? 2 : 0)))))))));\n return a;\n }\n },\n fix: function(a) {\n if (a[q.expando]) {\n return a;\n }\n ;\n ;\n var b, c, d = a, f = ((q.JSBNG__event.fixHooks[a.type] || {\n })), g = ((f.props ? this.props.concat(f.props) : this.props));\n a = q.JSBNG__Event(d);\n for (b = g.length; b; ) {\n c = g[--b];\n a[c] = d[c];\n };\n ;\n ((a.target || (a.target = ((d.srcElement || e)))));\n ((((a.target.nodeType === 3)) && (a.target = a.target.parentNode)));\n a.metaKey = !!a.metaKey;\n return ((f.filter ? f.filter(a, d) : a));\n },\n special: {\n load: {\n noBubble: !0\n },\n JSBNG__focus: {\n delegateType: \"focusin\"\n },\n JSBNG__blur: {\n delegateType: \"focusout\"\n },\n beforeunload: {\n setup: function(a, b, c) {\n ((q.isWindow(this) && (this.JSBNG__onbeforeunload = c)));\n },\n teardown: function(a, b) {\n ((((this.JSBNG__onbeforeunload === b)) && (this.JSBNG__onbeforeunload = null)));\n }\n }\n },\n simulate: function(a, b, c, d) {\n var e = q.extend(new q.JSBNG__Event, c, {\n type: a,\n isSimulated: !0,\n originalEvent: {\n }\n });\n ((d ? q.JSBNG__event.trigger(e, null, b) : q.JSBNG__event.dispatch.call(b, e)));\n ((e.isDefaultPrevented() && c.preventDefault()));\n }\n };\n q.JSBNG__event.handle = q.JSBNG__event.dispatch;\n q.removeEvent = ((e.JSBNG__removeEventListener ? function(a, b, c) {\n ((a.JSBNG__removeEventListener && a.JSBNG__removeEventListener(b, c, !1)));\n } : function(a, b, c) {\n var d = ((\"JSBNG__on\" + b));\n if (a.JSBNG__detachEvent) {\n ((((typeof a[d] == \"undefined\")) && (a[d] = null)));\n a.JSBNG__detachEvent(d, c);\n }\n ;\n ;\n }));\n q.JSBNG__Event = function(a, b) {\n if (!((this instanceof q.JSBNG__Event))) {\n return new q.JSBNG__Event(a, b);\n }\n ;\n ;\n if (((a && a.type))) {\n this.originalEvent = a;\n this.type = a.type;\n this.isDefaultPrevented = ((((((a.defaultPrevented || ((a.returnValue === !1)))) || ((a.getPreventDefault && a.getPreventDefault())))) ? eb : db));\n }\n else this.type = a;\n ;\n ;\n ((b && q.extend(this, b)));\n this.timeStamp = ((((a && a.timeStamp)) || q.now()));\n this[q.expando] = !0;\n };\n q.JSBNG__Event.prototype = {\n preventDefault: function() {\n this.isDefaultPrevented = eb;\n var a = this.originalEvent;\n if (!a) {\n return;\n }\n ;\n ;\n ((a.preventDefault ? a.preventDefault() : a.returnValue = !1));\n },\n stopPropagation: function() {\n this.isPropagationStopped = eb;\n var a = this.originalEvent;\n if (!a) {\n return;\n }\n ;\n ;\n ((a.stopPropagation && a.stopPropagation()));\n a.cancelBubble = !0;\n },\n stopImmediatePropagation: function() {\n this.isImmediatePropagationStopped = eb;\n this.stopPropagation();\n },\n isDefaultPrevented: db,\n isPropagationStopped: db,\n isImmediatePropagationStopped: db\n };\n q.each({\n mouseenter: \"mouseover\",\n mouseleave: \"mouseout\"\n }, function(a, b) {\n q.JSBNG__event.special[a] = {\n delegateType: b,\n bindType: b,\n handle: function(a) {\n var c, d = this, e = a.relatedTarget, f = a.handleObj, g = f.selector;\n if (((!e || ((((e !== d)) && !q.contains(d, e)))))) {\n a.type = f.origType;\n c = f.handler.apply(this, arguments);\n a.type = b;\n }\n ;\n ;\n return c;\n }\n };\n });\n ((q.support.submitBubbles || (q.JSBNG__event.special.submit = {\n setup: function() {\n if (q.nodeName(this, \"form\")) {\n return !1;\n }\n ;\n ;\n q.JSBNG__event.add(this, \"click._submit keypress._submit\", function(a) {\n var c = a.target, d = ((((q.nodeName(c, \"input\") || q.nodeName(c, \"button\"))) ? c.form : b));\n if (((d && !q._data(d, \"_submit_attached\")))) {\n q.JSBNG__event.add(d, \"submit._submit\", function(a) {\n a._submit_bubble = !0;\n });\n q._data(d, \"_submit_attached\", !0);\n }\n ;\n ;\n });\n },\n postDispatch: function(a) {\n if (a._submit_bubble) {\n delete a._submit_bubble;\n ((((this.parentNode && !a.isTrigger)) && q.JSBNG__event.simulate(\"submit\", this.parentNode, a, !0)));\n }\n ;\n ;\n },\n teardown: function() {\n if (q.nodeName(this, \"form\")) {\n return !1;\n }\n ;\n ;\n q.JSBNG__event.remove(this, \"._submit\");\n }\n })));\n ((q.support.changeBubbles || (q.JSBNG__event.special.change = {\n setup: function() {\n if (W.test(this.nodeName)) {\n if (((((this.type === \"checkbox\")) || ((this.type === \"radio\"))))) {\n q.JSBNG__event.add(this, \"propertychange._change\", function(a) {\n ((((a.originalEvent.propertyName === \"checked\")) && (this._just_changed = !0)));\n });\n q.JSBNG__event.add(this, \"click._change\", function(a) {\n ((((this._just_changed && !a.isTrigger)) && (this._just_changed = !1)));\n q.JSBNG__event.simulate(\"change\", this, a, !0);\n });\n }\n ;\n ;\n return !1;\n }\n ;\n ;\n q.JSBNG__event.add(this, \"beforeactivate._change\", function(a) {\n var b = a.target;\n if (((W.test(b.nodeName) && !q._data(b, \"_change_attached\")))) {\n q.JSBNG__event.add(b, \"change._change\", function(a) {\n ((((((this.parentNode && !a.isSimulated)) && !a.isTrigger)) && q.JSBNG__event.simulate(\"change\", this.parentNode, a, !0)));\n });\n q._data(b, \"_change_attached\", !0);\n }\n ;\n ;\n });\n },\n handle: function(a) {\n var b = a.target;\n if (((((((((this !== b)) || a.isSimulated)) || a.isTrigger)) || ((((b.type !== \"radio\")) && ((b.type !== \"checkbox\"))))))) {\n return a.handleObj.handler.apply(this, arguments);\n }\n ;\n ;\n },\n teardown: function() {\n q.JSBNG__event.remove(this, \"._change\");\n return !W.test(this.nodeName);\n }\n })));\n ((q.support.focusinBubbles || q.each({\n JSBNG__focus: \"focusin\",\n JSBNG__blur: \"focusout\"\n }, function(a, b) {\n var c = 0, d = function(a) {\n q.JSBNG__event.simulate(b, a.target, q.JSBNG__event.fix(a), !0);\n };\n q.JSBNG__event.special[b] = {\n setup: function() {\n ((((c++ === 0)) && e.JSBNG__addEventListener(a, d, !0)));\n },\n teardown: function() {\n ((((--c === 0)) && e.JSBNG__removeEventListener(a, d, !0)));\n }\n };\n })));\n q.fn.extend({\n JSBNG__on: function(a, c, d, e, f) {\n var g, i;\n if (((typeof a == \"object\"))) {\n if (((typeof c != \"string\"))) {\n d = ((d || c));\n c = b;\n }\n ;\n ;\n {\n var fin24keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin24i = (0);\n (0);\n for (; (fin24i < fin24keys.length); (fin24i++)) {\n ((i) = (fin24keys[fin24i]));\n {\n this.JSBNG__on(i, c, d, a[i], f);\n ;\n };\n };\n };\n ;\n return this;\n }\n ;\n ;\n if (((((d == null)) && ((e == null))))) {\n e = c;\n d = c = b;\n }\n else if (((e == null))) {\n if (((typeof c == \"string\"))) {\n e = d;\n d = b;\n }\n else {\n e = d;\n d = c;\n c = b;\n }\n ;\n }\n \n ;\n ;\n if (((e === !1))) {\n e = db;\n }\n else {\n if (!e) {\n return this;\n }\n ;\n }\n ;\n ;\n if (((f === 1))) {\n g = e;\n e = function(a) {\n q().off(a);\n return g.apply(this, arguments);\n };\n e.guid = ((g.guid || (g.guid = q.guid++)));\n }\n ;\n ;\n return this.each(function() {\n q.JSBNG__event.add(this, a, e, d, c);\n });\n },\n one: function(a, b, c, d) {\n return this.JSBNG__on(a, b, c, d, 1);\n },\n off: function(a, c, d) {\n var e, f;\n if (((((a && a.preventDefault)) && a.handleObj))) {\n e = a.handleObj;\n q(a.delegateTarget).off(((e.namespace ? ((((e.origType + \".\")) + e.namespace)) : e.origType)), e.selector, e.handler);\n return this;\n }\n ;\n ;\n if (((typeof a == \"object\"))) {\n {\n var fin25keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin25i = (0);\n (0);\n for (; (fin25i < fin25keys.length); (fin25i++)) {\n ((f) = (fin25keys[fin25i]));\n {\n this.off(f, c, a[f]);\n ;\n };\n };\n };\n ;\n return this;\n }\n ;\n ;\n if (((((c === !1)) || ((typeof c == \"function\"))))) {\n d = c;\n c = b;\n }\n ;\n ;\n ((((d === !1)) && (d = db)));\n return this.each(function() {\n q.JSBNG__event.remove(this, a, d, c);\n });\n },\n bind: function(a, b, c) {\n return this.JSBNG__on(a, null, b, c);\n },\n unbind: function(a, b) {\n return this.off(a, null, b);\n },\n live: function(a, b, c) {\n q(this.context).JSBNG__on(a, this.selector, b, c);\n return this;\n },\n die: function(a, b) {\n q(this.context).off(a, ((this.selector || \"**\")), b);\n return this;\n },\n delegate: function(a, b, c, d) {\n return this.JSBNG__on(b, a, c, d);\n },\n undelegate: function(a, b, c) {\n return ((((arguments.length === 1)) ? this.off(a, \"**\") : this.off(b, ((a || \"**\")), c)));\n },\n trigger: function(a, b) {\n return this.each(function() {\n q.JSBNG__event.trigger(a, b, this);\n });\n },\n triggerHandler: function(a, b) {\n if (this[0]) {\n return q.JSBNG__event.trigger(a, b, this[0], !0);\n }\n ;\n ;\n },\n toggle: function(a) {\n var b = arguments, c = ((a.guid || q.guid++)), d = 0, e = function(c) {\n var e = ((((q._data(this, ((\"lastToggle\" + a.guid))) || 0)) % d));\n q._data(this, ((\"lastToggle\" + a.guid)), ((e + 1)));\n c.preventDefault();\n return ((b[e].apply(this, arguments) || !1));\n };\n e.guid = c;\n while (((d < b.length))) {\n b[d++].guid = c;\n ;\n };\n ;\n return this.click(e);\n },\n hover: function(a, b) {\n return this.mouseenter(a).mouseleave(((b || a)));\n }\n });\n q.each(\"blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu\".split(\" \"), function(a, b) {\n q.fn[b] = function(a, c) {\n if (((c == null))) {\n c = a;\n a = null;\n }\n ;\n ;\n return ((((arguments.length > 0)) ? this.JSBNG__on(b, null, a, c) : this.trigger(b)));\n };\n ((Z.test(b) && (q.JSBNG__event.fixHooks[b] = q.JSBNG__event.keyHooks)));\n ((ab.test(b) && (q.JSBNG__event.fixHooks[b] = q.JSBNG__event.mouseHooks)));\n });\n (function(a, b) {\n function fb(a, b, c, d) {\n c = ((c || []));\n b = ((b || s));\n var e, f, j, k, l = b.nodeType;\n if (((!a || ((typeof a != \"string\"))))) {\n return c;\n }\n ;\n ;\n if (((((l !== 1)) && ((l !== 9))))) {\n return [];\n }\n ;\n ;\n j = g(b);\n if (((!j && !d))) {\n if (e = Q.exec(a)) {\n if (k = e[1]) {\n if (((l === 9))) {\n f = b.getElementById(k);\n if (((!f || !f.parentNode))) {\n return c;\n }\n ;\n ;\n if (((f.id === k))) {\n c.push(f);\n return c;\n }\n ;\n ;\n }\n else if (((((((b.ownerDocument && (f = b.ownerDocument.getElementById(k)))) && i(b, f))) && ((f.id === k))))) {\n c.push(f);\n return c;\n }\n \n ;\n ;\n }\n else {\n if (e[2]) {\n x.apply(c, y.call(b.getElementsByTagName(a), 0));\n return c;\n }\n ;\n ;\n if ((((((k = e[3]) && cb)) && b.getElementsByClassName))) {\n x.apply(c, y.call(b.getElementsByClassName(k), 0));\n return c;\n }\n ;\n ;\n }\n ;\n }\n ;\n }\n ;\n ;\n return sb(a.replace(M, \"$1\"), b, c, d, j);\n };\n ;\n function gb(a) {\n return function(b) {\n var c = b.nodeName.toLowerCase();\n return ((((c === \"input\")) && ((b.type === a))));\n };\n };\n ;\n function hb(a) {\n return function(b) {\n var c = b.nodeName.toLowerCase();\n return ((((((c === \"input\")) || ((c === \"button\")))) && ((b.type === a))));\n };\n };\n ;\n function ib(a) {\n return A(function(b) {\n b = +b;\n return A(function(c, d) {\n var e, f = a([], c.length, b), g = f.length;\n while (g--) {\n ((c[e = f[g]] && (c[e] = !(d[e] = c[e]))));\n ;\n };\n ;\n });\n });\n };\n ;\n function jb(a, b, c) {\n if (((a === b))) {\n return c;\n }\n ;\n ;\n var d = a.nextSibling;\n while (d) {\n if (((d === b))) {\n return -1;\n }\n ;\n ;\n d = d.nextSibling;\n };\n ;\n return 1;\n };\n ;\n function kb(a, b) {\n var c, d, f, g, i, j, k, l = D[p][((a + \" \"))];\n if (l) {\n return ((b ? 0 : l.slice(0)));\n }\n ;\n ;\n i = a;\n j = [];\n k = e.preFilter;\n while (i) {\n if (((!c || (d = N.exec(i))))) {\n ((d && (i = ((i.slice(d[0].length) || i)))));\n j.push(f = []);\n }\n ;\n ;\n c = !1;\n if (d = O.exec(i)) {\n f.push(c = new r(d.shift()));\n i = i.slice(c.length);\n c.type = d[0].replace(M, \" \");\n }\n ;\n ;\n {\n var fin26keys = ((window.top.JSBNG_Replay.forInKeys)((e.filter))), fin26i = (0);\n (0);\n for (; (fin26i < fin26keys.length); (fin26i++)) {\n ((g) = (fin26keys[fin26i]));\n {\n if ((((d = X[g].exec(i)) && ((!k[g] || (d = k[g](d))))))) {\n f.push(c = new r(d.shift()));\n i = i.slice(c.length);\n c.type = g;\n c.matches = d;\n }\n ;\n ;\n };\n };\n };\n ;\n if (!c) {\n break;\n }\n ;\n ;\n };\n ;\n return ((b ? i.length : ((i ? fb.error(a) : D(a, j).slice(0)))));\n };\n ;\n function lb(a, b, d) {\n var e = b.dir, f = ((d && ((b.dir === \"parentNode\")))), g = v++;\n return ((b.first ? function(b, c, d) {\n while (b = b[e]) {\n if (((f || ((b.nodeType === 1))))) {\n return a(b, c, d);\n }\n ;\n ;\n };\n ;\n } : function(b, d, i) {\n if (!i) {\n var j, k = ((((((u + \" \")) + g)) + \" \")), l = ((k + c));\n while (b = b[e]) {\n if (((f || ((b.nodeType === 1))))) {\n if ((((j = b[p]) === l))) {\n return b.sizset;\n }\n ;\n ;\n if (((((typeof j == \"string\")) && ((j.indexOf(k) === 0))))) {\n if (b.sizset) {\n return b;\n }\n ;\n ;\n }\n else {\n b[p] = l;\n if (a(b, d, i)) {\n b.sizset = !0;\n return b;\n }\n ;\n ;\n b.sizset = !1;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n }\n else while (b = b[e]) {\n if (((f || ((b.nodeType === 1))))) {\n if (a(b, d, i)) {\n return b;\n }\n ;\n }\n ;\n ;\n }\n ;\n ;\n }));\n };\n ;\n function mb(a) {\n return ((((a.length > 1)) ? function(b, c, d) {\n var e = a.length;\n while (e--) {\n if (!a[e](b, c, d)) {\n return !1;\n }\n ;\n ;\n };\n ;\n return !0;\n } : a[0]));\n };\n ;\n function nb(a, b, c, d, e) {\n var f, g = [], i = 0, j = a.length, k = ((b != null));\n for (; ((i < j)); i++) {\n if (f = a[i]) {\n if (((!c || c(f, d, e)))) {\n g.push(f);\n ((k && b.push(i)));\n }\n ;\n }\n ;\n ;\n };\n ;\n return g;\n };\n ;\n function ob(a, b, c, d, e, f) {\n ((((d && !d[p])) && (d = ob(d))));\n ((((e && !e[p])) && (e = ob(e, f))));\n return A(function(f, g, i, j) {\n var k, l, m, n = [], o = [], p = g.length, q = ((f || rb(((b || \"*\")), ((i.nodeType ? [i,] : i)), []))), r = ((((a && ((f || !b)))) ? nb(q, n, a, i, j) : q)), s = ((c ? ((((e || ((f ? a : ((p || d)))))) ? [] : g)) : r));\n ((c && c(r, s, i, j)));\n if (d) {\n k = nb(s, o);\n d(k, [], i, j);\n l = k.length;\n while (l--) {\n if (m = k[l]) {\n s[o[l]] = !(r[o[l]] = m);\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n if (f) {\n if (((e || a))) {\n if (e) {\n k = [];\n l = s.length;\n while (l--) {\n (((m = s[l]) && k.push(r[l] = m)));\n ;\n };\n ;\n e(null, s = [], k, j);\n }\n ;\n ;\n l = s.length;\n while (l--) {\n (((((m = s[l]) && (((k = ((e ? z.call(f, m) : n[l]))) > -1)))) && (f[k] = !(g[k] = m))));\n ;\n };\n ;\n }\n ;\n ;\n }\n else {\n s = nb(((((s === g)) ? s.splice(p, s.length) : s)));\n ((e ? e(null, g, s, j) : x.apply(g, s)));\n }\n ;\n ;\n });\n };\n ;\n function pb(a) {\n var b, c, d, f = a.length, g = e.relative[a[0].type], i = ((g || e.relative[\" \"])), j = ((g ? 1 : 0)), k = lb(function(a) {\n return ((a === b));\n }, i, !0), l = lb(function(a) {\n return ((z.call(b, a) > -1));\n }, i, !0), n = [function(a, c, d) {\n return ((((!g && ((d || ((c !== m)))))) || (((b = c).nodeType ? k(a, c, d) : l(a, c, d)))));\n },];\n for (; ((j < f)); j++) {\n if (c = e.relative[a[j].type]) n = [lb(mb(n), c),];\n else {\n c = e.filter[a[j].type].apply(null, a[j].matches);\n if (c[p]) {\n d = ++j;\n for (; ((d < f)); d++) {\n if (e.relative[a[d].type]) {\n break;\n }\n ;\n ;\n };\n ;\n return ob(((((j > 1)) && mb(n))), ((((j > 1)) && a.slice(0, ((j - 1))).join(\"\").replace(M, \"$1\"))), c, ((((j < d)) && pb(a.slice(j, d)))), ((((d < f)) && pb(a = a.slice(d)))), ((((d < f)) && a.join(\"\"))));\n }\n ;\n ;\n n.push(c);\n }\n ;\n ;\n };\n ;\n return mb(n);\n };\n ;\n function qb(a, b) {\n var d = ((b.length > 0)), f = ((a.length > 0)), g = function(i, j, k, l, n) {\n var o, p, q, r = [], t = 0, v = \"0\", y = ((i && [])), z = ((n != null)), A = m, B = ((i || ((f && e.JSBNG__find.TAG(\"*\", ((((n && j.parentNode)) || j))))))), C = u += ((((A == null)) ? 1 : Math.E));\n if (z) {\n m = ((((j !== s)) && j));\n c = g.el;\n }\n ;\n ;\n for (; (((o = B[v]) != null)); v++) {\n if (((f && o))) {\n for (p = 0; q = a[p]; p++) {\n if (q(o, j, k)) {\n l.push(o);\n break;\n }\n ;\n ;\n };\n ;\n if (z) {\n u = C;\n c = ++g.el;\n }\n ;\n ;\n }\n ;\n ;\n if (d) {\n (((o = ((!q && o))) && t--));\n ((i && y.push(o)));\n }\n ;\n ;\n };\n ;\n t += v;\n if (((d && ((v !== t))))) {\n for (p = 0; q = b[p]; p++) {\n q(y, r, j, k);\n ;\n };\n ;\n if (i) {\n if (((t > 0))) {\n while (v--) {\n ((((!y[v] && !r[v])) && (r[v] = w.call(l))));\n ;\n };\n }\n ;\n ;\n r = nb(r);\n }\n ;\n ;\n x.apply(l, r);\n ((((((((z && !i)) && ((r.length > 0)))) && ((((t + b.length)) > 1)))) && fb.uniqueSort(l)));\n }\n ;\n ;\n if (z) {\n u = C;\n m = A;\n }\n ;\n ;\n return y;\n };\n g.el = 0;\n return ((d ? A(g) : g));\n };\n ;\n function rb(a, b, c) {\n var d = 0, e = b.length;\n for (; ((d < e)); d++) {\n fb(a, b[d], c);\n ;\n };\n ;\n return c;\n };\n ;\n function sb(a, b, c, d, f) {\n var g, i, k, l, m, n = kb(a), o = n.length;\n if (((!d && ((n.length === 1))))) {\n i = n[0] = n[0].slice(0);\n if (((((((((((i.length > 2)) && (((k = i[0]).type === \"ID\")))) && ((b.nodeType === 9)))) && !f)) && e.relative[i[1].type]))) {\n b = e.JSBNG__find.ID(k.matches[0].replace(W, \"\"), b, f)[0];\n if (!b) {\n return c;\n }\n ;\n ;\n a = a.slice(i.shift().length);\n }\n ;\n ;\n for (g = ((X.POS.test(a) ? -1 : ((i.length - 1)))); ((g >= 0)); g--) {\n k = i[g];\n if (e.relative[l = k.type]) {\n break;\n }\n ;\n ;\n if (m = e.JSBNG__find[l]) {\n if (d = m(k.matches[0].replace(W, \"\"), ((((S.test(i[0].type) && b.parentNode)) || b)), f)) {\n i.splice(g, 1);\n a = ((d.length && i.join(\"\")));\n if (!a) {\n x.apply(c, y.call(d, 0));\n return c;\n }\n ;\n ;\n break;\n }\n ;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n j(a, n)(d, b, f, c, S.test(a));\n return c;\n };\n ;\n function tb() {\n \n };\n ;\n var c, d, e, f, g, i, j, k, l, m, n = !0, o = \"undefined\", p = ((\"sizcache\" + Math.JSBNG__random())).replace(\".\", \"\"), r = String, s = a.JSBNG__document, t = s.documentElement, u = 0, v = 0, w = [].pop, x = [].push, y = [].slice, z = (([].indexOf || function(a) {\n var b = 0, c = this.length;\n for (; ((b < c)); b++) {\n if (((this[b] === a))) {\n return b;\n }\n ;\n ;\n };\n ;\n return -1;\n })), A = function(a, b) {\n a[p] = ((((b == null)) || b));\n return a;\n }, B = function() {\n var a = {\n }, b = [];\n return A(function(c, d) {\n ((((b.push(c) > e.cacheLength)) && delete a[b.shift()]));\n return a[((c + \" \"))] = d;\n }, a);\n }, C = B(), D = B(), E = B(), F = \"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\", G = \"(?:\\\\\\\\.|[-\\\\w]|[^\\\\x00-\\\\xa0])+\", H = G.replace(\"w\", \"w#\"), I = \"([*^$|!~]?=)\", J = ((((((((((((((((((((((((((\"\\\\[\" + F)) + \"*(\")) + G)) + \")\")) + F)) + \"*(?:\")) + I)) + F)) + \"*(?:(['\\\"])((?:\\\\\\\\.|[^\\\\\\\\])*?)\\\\3|(\")) + H)) + \")|)|)\")) + F)) + \"*\\\\]\")), K = ((((((((\":(\" + G)) + \")(?:\\\\((?:(['\\\"])((?:\\\\\\\\.|[^\\\\\\\\])*?)\\\\2|([^()[\\\\]]*|(?:(?:\")) + J)) + \")|[^:]|\\\\\\\\.)*|.*))\\\\)|)\")), L = ((((((((\":(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\" + F)) + \"*((?:-\\\\d)?\\\\d*)\")) + F)) + \"*\\\\)|)(?=[^-]|$)\")), M = new RegExp(((((((((\"^\" + F)) + \"+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)\")) + F)) + \"+$\")), \"g\"), N = new RegExp(((((((((\"^\" + F)) + \"*,\")) + F)) + \"*\"))), O = new RegExp(((((((((\"^\" + F)) + \"*([\\\\x20\\\\t\\\\r\\\\n\\\\f\\u003E+~])\")) + F)) + \"*\"))), P = new RegExp(K), Q = /^(?:#([\\w\\-]+)|(\\w+)|\\.([\\w\\-]+))$/, R = /^:not/, S = /[\\x20\\t\\r\\n\\f]*[+~]/, T = /:not\\($/, U = /h\\d/i, V = /input|select|textarea|button/i, W = /\\\\(?!\\\\)/g, X = {\n ID: new RegExp(((((\"^#(\" + G)) + \")\"))),\n CLASS: new RegExp(((((\"^\\\\.(\" + G)) + \")\"))),\n NAME: new RegExp(((((\"^\\\\[name=['\\\"]?(\" + G)) + \")['\\\"]?\\\\]\"))),\n TAG: new RegExp(((((\"^(\" + G.replace(\"w\", \"w*\"))) + \")\"))),\n ATTR: new RegExp(((\"^\" + J))),\n PSEUDO: new RegExp(((\"^\" + K))),\n POS: new RegExp(L, \"i\"),\n CHILD: new RegExp(((((((((((((((((\"^:(only|nth|first|last)-child(?:\\\\(\" + F)) + \"*(even|odd|(([+-]|)(\\\\d*)n|)\")) + F)) + \"*(?:([+-]|)\")) + F)) + \"*(\\\\d+)|))\")) + F)) + \"*\\\\)|)\")), \"i\"),\n needsContext: new RegExp(((((((\"^\" + F)) + \"*[\\u003E+~]|\")) + L)), \"i\")\n }, Y = function(a) {\n var b = s.createElement(\"div\");\n try {\n return a(b);\n } catch (c) {\n return !1;\n } finally {\n b = null;\n };\n ;\n }, Z = Y(function(a) {\n a.appendChild(s.createComment(\"\"));\n return !a.getElementsByTagName(\"*\").length;\n }), ab = Y(function(a) {\n a.innerHTML = \"\\u003Ca href='#'\\u003E\\u003C/a\\u003E\";\n return ((((a.firstChild && ((typeof a.firstChild.getAttribute !== o)))) && ((a.firstChild.getAttribute(\"href\") === \"#\"))));\n }), bb = Y(function(a) {\n a.innerHTML = \"\\u003Cselect\\u003E\\u003C/select\\u003E\";\n var b = typeof a.lastChild.getAttribute(\"multiple\");\n return ((((b !== \"boolean\")) && ((b !== \"string\"))));\n }), cb = Y(function(a) {\n a.innerHTML = \"\\u003Cdiv class='hidden e'\\u003E\\u003C/div\\u003E\\u003Cdiv class='hidden'\\u003E\\u003C/div\\u003E\";\n if (((!a.getElementsByClassName || !a.getElementsByClassName(\"e\").length))) {\n return !1;\n }\n ;\n ;\n a.lastChild.className = \"e\";\n return ((a.getElementsByClassName(\"e\").length === 2));\n }), db = Y(function(a) {\n a.id = ((p + 0));\n a.innerHTML = ((((((((\"\\u003Ca name='\" + p)) + \"'\\u003E\\u003C/a\\u003E\\u003Cdiv name='\")) + p)) + \"'\\u003E\\u003C/div\\u003E\"));\n t.insertBefore(a, t.firstChild);\n var b = ((s.getElementsByName && ((s.getElementsByName(p).length === ((2 + s.getElementsByName(((p + 0))).length))))));\n d = !s.getElementById(p);\n t.removeChild(a);\n return b;\n });\n try {\n y.call(t.childNodes, 0)[0].nodeType;\n } catch (eb) {\n y = function(a) {\n var b, c = [];\n for (; b = this[a]; a++) {\n c.push(b);\n ;\n };\n ;\n return c;\n };\n };\n ;\n fb.matches = function(a, b) {\n return fb(a, null, null, b);\n };\n fb.matchesSelector = function(a, b) {\n return ((fb(b, null, null, [a,]).length > 0));\n };\n f = fb.getText = function(a) {\n var b, c = \"\", d = 0, e = a.nodeType;\n if (e) {\n if (((((((e === 1)) || ((e === 9)))) || ((e === 11))))) {\n if (((typeof a.textContent == \"string\"))) {\n return a.textContent;\n }\n ;\n ;\n for (a = a.firstChild; a; a = a.nextSibling) {\n c += f(a);\n ;\n };\n ;\n }\n else if (((((e === 3)) || ((e === 4))))) {\n return a.nodeValue;\n }\n \n ;\n ;\n }\n else for (; b = a[d]; d++) {\n c += f(b);\n ;\n }\n ;\n ;\n return c;\n };\n g = fb.isXML = function(a) {\n var b = ((a && ((a.ownerDocument || a)).documentElement));\n return ((b ? ((b.nodeName !== \"HTML\")) : !1));\n };\n i = fb.contains = ((t.contains ? function(a, b) {\n var c = ((((a.nodeType === 9)) ? a.documentElement : a)), d = ((b && b.parentNode));\n return ((((a === d)) || !!((((((d && ((d.nodeType === 1)))) && c.contains)) && c.contains(d)))));\n } : ((t.compareDocumentPosition ? function(a, b) {\n return ((b && !!((a.compareDocumentPosition(b) & 16))));\n } : function(a, b) {\n while (b = b.parentNode) {\n if (((b === a))) {\n return !0;\n }\n ;\n ;\n };\n ;\n return !1;\n }))));\n fb.attr = function(a, b) {\n var c, d = g(a);\n ((d || (b = b.toLowerCase())));\n if (c = e.attrHandle[b]) {\n return c(a);\n }\n ;\n ;\n if (((d || bb))) {\n return a.getAttribute(b);\n }\n ;\n ;\n c = a.getAttributeNode(b);\n return ((c ? ((((typeof a[b] == \"boolean\")) ? ((a[b] ? b : null)) : ((c.specified ? c.value : null)))) : null));\n };\n e = fb.selectors = {\n cacheLength: 50,\n createPseudo: A,\n match: X,\n attrHandle: ((ab ? {\n } : {\n href: function(a) {\n return a.getAttribute(\"href\", 2);\n },\n type: function(a) {\n return a.getAttribute(\"type\");\n }\n })),\n JSBNG__find: {\n ID: ((d ? function(a, b, c) {\n if (((((typeof b.getElementById !== o)) && !c))) {\n var d = b.getElementById(a);\n return ((((d && d.parentNode)) ? [d,] : []));\n }\n ;\n ;\n } : function(a, c, d) {\n if (((((typeof c.getElementById !== o)) && !d))) {\n var e = c.getElementById(a);\n return ((e ? ((((((e.id === a)) || ((((typeof e.getAttributeNode !== o)) && ((e.getAttributeNode(\"id\").value === a)))))) ? [e,] : b)) : []));\n }\n ;\n ;\n })),\n TAG: ((Z ? function(a, b) {\n if (((typeof b.getElementsByTagName !== o))) {\n return b.getElementsByTagName(a);\n }\n ;\n ;\n } : function(a, b) {\n var c = b.getElementsByTagName(a);\n if (((a === \"*\"))) {\n var d, e = [], f = 0;\n for (; d = c[f]; f++) {\n ((((d.nodeType === 1)) && e.push(d)));\n ;\n };\n ;\n return e;\n }\n ;\n ;\n return c;\n })),\n NAME: ((db && function(a, b) {\n if (((typeof b.getElementsByName !== o))) {\n return b.getElementsByName(JSBNG__name);\n }\n ;\n ;\n })),\n CLASS: ((cb && function(a, b, c) {\n if (((((typeof b.getElementsByClassName !== o)) && !c))) {\n return b.getElementsByClassName(a);\n }\n ;\n ;\n }))\n },\n relative: {\n \"\\u003E\": {\n dir: \"parentNode\",\n first: !0\n },\n \" \": {\n dir: \"parentNode\"\n },\n \"+\": {\n dir: \"previousSibling\",\n first: !0\n },\n \"~\": {\n dir: \"previousSibling\"\n }\n },\n preFilter: {\n ATTR: function(a) {\n a[1] = a[1].replace(W, \"\");\n a[3] = ((((a[4] || a[5])) || \"\")).replace(W, \"\");\n ((((a[2] === \"~=\")) && (a[3] = ((((\" \" + a[3])) + \" \")))));\n return a.slice(0, 4);\n },\n CHILD: function(a) {\n a[1] = a[1].toLowerCase();\n if (((a[1] === \"nth\"))) {\n ((a[2] || fb.error(a[0])));\n a[3] = +((a[3] ? ((a[4] + ((a[5] || 1)))) : ((2 * ((((a[2] === \"even\")) || ((a[2] === \"odd\"))))))));\n a[4] = +((((a[6] + a[7])) || ((a[2] === \"odd\"))));\n }\n else ((a[2] && fb.error(a[0])));\n ;\n ;\n return a;\n },\n PSEUDO: function(a) {\n var b, c;\n if (X.CHILD.test(a[0])) {\n return null;\n }\n ;\n ;\n if (a[3]) {\n a[2] = a[3];\n }\n else {\n if (b = a[4]) {\n if (((((P.test(b) && (c = kb(b, !0)))) && (c = ((b.indexOf(\")\", ((b.length - c))) - b.length)))))) {\n b = b.slice(0, c);\n a[0] = a[0].slice(0, c);\n }\n ;\n ;\n a[2] = b;\n }\n ;\n }\n ;\n ;\n return a.slice(0, 3);\n }\n },\n filter: {\n ID: ((d ? function(a) {\n a = a.replace(W, \"\");\n return function(b) {\n return ((b.getAttribute(\"id\") === a));\n };\n } : function(a) {\n a = a.replace(W, \"\");\n return function(b) {\n var c = ((((typeof b.getAttributeNode !== o)) && b.getAttributeNode(\"id\")));\n return ((c && ((c.value === a))));\n };\n })),\n TAG: function(a) {\n if (((a === \"*\"))) {\n return function() {\n return !0;\n };\n }\n ;\n ;\n a = a.replace(W, \"\").toLowerCase();\n return function(b) {\n return ((b.nodeName && ((b.nodeName.toLowerCase() === a))));\n };\n },\n CLASS: function(a) {\n var b = C[p][((a + \" \"))];\n return ((b || (((b = new RegExp(((((((((((((\"(^|\" + F)) + \")\")) + a)) + \"(\")) + F)) + \"|$)\")))) && C(a, function(a) {\n return b.test(((((a.className || ((((typeof a.getAttribute !== o)) && a.getAttribute(\"class\"))))) || \"\")));\n })))));\n },\n ATTR: function(a, b, c) {\n return function(d, e) {\n var f = fb.attr(d, a);\n if (((f == null))) {\n return ((b === \"!=\"));\n }\n ;\n ;\n if (!b) {\n return !0;\n }\n ;\n ;\n f += \"\";\n return ((((b === \"=\")) ? ((f === c)) : ((((b === \"!=\")) ? ((f !== c)) : ((((b === \"^=\")) ? ((c && ((f.indexOf(c) === 0)))) : ((((b === \"*=\")) ? ((c && ((f.indexOf(c) > -1)))) : ((((b === \"$=\")) ? ((c && ((f.substr(((f.length - c.length))) === c)))) : ((((b === \"~=\")) ? ((((((\" \" + f)) + \" \")).indexOf(c) > -1)) : ((((b === \"|=\")) ? ((((f === c)) || ((f.substr(0, ((c.length + 1))) === ((c + \"-\")))))) : !1))))))))))))));\n };\n },\n CHILD: function(a, b, c, d) {\n return ((((a === \"nth\")) ? function(a) {\n var b, e, f = a.parentNode;\n if (((((c === 1)) && ((d === 0))))) {\n return !0;\n }\n ;\n ;\n if (f) {\n e = 0;\n for (b = f.firstChild; b; b = b.nextSibling) {\n if (((b.nodeType === 1))) {\n e++;\n if (((a === b))) {\n break;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n e -= d;\n return ((((e === c)) || ((((((e % c)) === 0)) && ((((e / c)) >= 0))))));\n } : function(b) {\n var c = b;\n switch (a) {\n case \"only\":\n \n case \"first\":\n while (c = c.previousSibling) {\n if (((c.nodeType === 1))) {\n return !1;\n }\n ;\n ;\n };\n ;\n if (((a === \"first\"))) {\n return !0;\n }\n ;\n ;\n c = b;\n case \"last\":\n while (c = c.nextSibling) {\n if (((c.nodeType === 1))) {\n return !1;\n }\n ;\n ;\n };\n ;\n return !0;\n };\n ;\n }));\n },\n PSEUDO: function(a, b) {\n var c, d = ((((e.pseudos[a] || e.setFilters[a.toLowerCase()])) || fb.error(((\"unsupported pseudo: \" + a)))));\n if (d[p]) {\n return d(b);\n }\n ;\n ;\n if (((d.length > 1))) {\n c = [a,a,\"\",b,];\n return ((e.setFilters.hasOwnProperty(a.toLowerCase()) ? A(function(a, c) {\n var e, f = d(a, b), g = f.length;\n while (g--) {\n e = z.call(a, f[g]);\n a[e] = !(c[e] = f[g]);\n };\n ;\n }) : function(a) {\n return d(a, 0, c);\n }));\n }\n ;\n ;\n return d;\n }\n },\n pseudos: {\n not: A(function(a) {\n var b = [], c = [], d = j(a.replace(M, \"$1\"));\n return ((d[p] ? A(function(a, b, c, e) {\n var f, g = d(a, null, e, []), i = a.length;\n while (i--) {\n if (f = g[i]) {\n a[i] = !(b[i] = f);\n }\n ;\n ;\n };\n ;\n }) : function(a, e, f) {\n b[0] = a;\n d(b, null, f, c);\n return !c.pop();\n }));\n }),\n has: A(function(a) {\n return function(b) {\n return ((fb(a, b).length > 0));\n };\n }),\n contains: A(function(a) {\n return function(b) {\n return ((((((b.textContent || b.innerText)) || f(b))).indexOf(a) > -1));\n };\n }),\n enabled: function(a) {\n return ((a.disabled === !1));\n },\n disabled: function(a) {\n return ((a.disabled === !0));\n },\n checked: function(a) {\n var b = a.nodeName.toLowerCase();\n return ((((((b === \"input\")) && !!a.checked)) || ((((b === \"option\")) && !!a.selected))));\n },\n selected: function(a) {\n ((a.parentNode && a.parentNode.selectedIndex));\n return ((a.selected === !0));\n },\n parent: function(a) {\n return !e.pseudos.empty(a);\n },\n empty: function(a) {\n var b;\n a = a.firstChild;\n while (a) {\n if (((((((a.nodeName > \"@\")) || (((b = a.nodeType) === 3)))) || ((b === 4))))) {\n return !1;\n }\n ;\n ;\n a = a.nextSibling;\n };\n ;\n return !0;\n },\n header: function(a) {\n return U.test(a.nodeName);\n },\n text: function(a) {\n var b, c;\n return ((((((a.nodeName.toLowerCase() === \"input\")) && (((b = a.type) === \"text\")))) && (((((c = a.getAttribute(\"type\")) == null)) || ((c.toLowerCase() === b))))));\n },\n radio: gb(\"radio\"),\n checkbox: gb(\"checkbox\"),\n file: gb(\"file\"),\n password: gb(\"password\"),\n image: gb(\"image\"),\n submit: hb(\"submit\"),\n reset: hb(\"reset\"),\n button: function(a) {\n var b = a.nodeName.toLowerCase();\n return ((((((b === \"input\")) && ((a.type === \"button\")))) || ((b === \"button\"))));\n },\n input: function(a) {\n return V.test(a.nodeName);\n },\n JSBNG__focus: function(a) {\n var b = a.ownerDocument;\n return ((((((a === b.activeElement)) && ((!b.hasFocus || b.hasFocus())))) && !!((((a.type || a.href)) || ~a.tabIndex))));\n },\n active: function(a) {\n return ((a === a.ownerDocument.activeElement));\n },\n first: ib(function() {\n return [0,];\n }),\n last: ib(function(a, b) {\n return [((b - 1)),];\n }),\n eq: ib(function(a, b, c) {\n return [((((c < 0)) ? ((c + b)) : c)),];\n }),\n even: ib(function(a, b) {\n for (var c = 0; ((c < b)); c += 2) {\n a.push(c);\n ;\n };\n ;\n return a;\n }),\n odd: ib(function(a, b) {\n for (var c = 1; ((c < b)); c += 2) {\n a.push(c);\n ;\n };\n ;\n return a;\n }),\n lt: ib(function(a, b, c) {\n for (var d = ((((c < 0)) ? ((c + b)) : c)); ((--d >= 0)); ) {\n a.push(d);\n ;\n };\n ;\n return a;\n }),\n gt: ib(function(a, b, c) {\n for (var d = ((((c < 0)) ? ((c + b)) : c)); ((++d < b)); ) {\n a.push(d);\n ;\n };\n ;\n return a;\n })\n }\n };\n k = ((t.compareDocumentPosition ? function(a, b) {\n if (((a === b))) {\n l = !0;\n return 0;\n }\n ;\n ;\n return ((((((!a.compareDocumentPosition || !b.compareDocumentPosition)) ? a.compareDocumentPosition : ((a.compareDocumentPosition(b) & 4)))) ? -1 : 1));\n } : function(a, b) {\n if (((a === b))) {\n l = !0;\n return 0;\n }\n ;\n ;\n if (((a.sourceIndex && b.sourceIndex))) {\n return ((a.sourceIndex - b.sourceIndex));\n }\n ;\n ;\n var c, d, e = [], f = [], g = a.parentNode, i = b.parentNode, j = g;\n if (((g === i))) {\n return jb(a, b);\n }\n ;\n ;\n if (!g) {\n return -1;\n }\n ;\n ;\n if (!i) {\n return 1;\n }\n ;\n ;\n while (j) {\n e.unshift(j);\n j = j.parentNode;\n };\n ;\n j = i;\n while (j) {\n f.unshift(j);\n j = j.parentNode;\n };\n ;\n c = e.length;\n d = f.length;\n for (var k = 0; ((((k < c)) && ((k < d)))); k++) {\n if (((e[k] !== f[k]))) {\n return jb(e[k], f[k]);\n }\n ;\n ;\n };\n ;\n return ((((k === c)) ? jb(a, f[k], -1) : jb(e[k], b, 1)));\n }));\n [0,0,].sort(k);\n n = !l;\n fb.uniqueSort = function(a) {\n var b, c = [], d = 1, e = 0;\n l = n;\n a.sort(k);\n if (l) {\n for (; b = a[d]; d++) {\n ((((b === a[((d - 1))])) && (e = c.push(d))));\n ;\n };\n ;\n while (e--) {\n a.splice(c[e], 1);\n ;\n };\n ;\n }\n ;\n ;\n return a;\n };\n fb.error = function(a) {\n throw new Error(((\"Syntax error, unrecognized expression: \" + a)));\n };\n j = fb.compile = function(a, b) {\n var c, d = [], e = [], f = E[p][((a + \" \"))];\n if (!f) {\n ((b || (b = kb(a))));\n c = b.length;\n while (c--) {\n f = pb(b[c]);\n ((f[p] ? d.push(f) : e.push(f)));\n };\n ;\n f = E(a, qb(e, d));\n }\n ;\n ;\n return f;\n };\n ((s.querySelectorAll && function() {\n var a, b = sb, c = /'|\\\\/g, d = /\\=[\\x20\\t\\r\\n\\f]*([^'\"\\]]*)[\\x20\\t\\r\\n\\f]*\\]/g, e = [\":focus\",], f = [\":active\",], i = ((((((((t.matchesSelector || t.mozMatchesSelector)) || t.webkitMatchesSelector)) || t.oMatchesSelector)) || t.msMatchesSelector));\n Y(function(a) {\n a.innerHTML = \"\\u003Cselect\\u003E\\u003Coption selected=''\\u003E\\u003C/option\\u003E\\u003C/select\\u003E\";\n ((a.querySelectorAll(\"[selected]\").length || e.push(((((\"\\\\[\" + F)) + \"*(?:checked|disabled|ismap|multiple|readonly|selected|value)\")))));\n ((a.querySelectorAll(\":checked\").length || e.push(\":checked\")));\n });\n Y(function(a) {\n a.innerHTML = \"\\u003Cp test=''\\u003E\\u003C/p\\u003E\";\n ((a.querySelectorAll(\"[test^='']\").length && e.push(((((\"[*^$]=\" + F)) + \"*(?:\\\"\\\"|'')\")))));\n a.innerHTML = \"\\u003Cinput type='hidden'/\\u003E\";\n ((a.querySelectorAll(\":enabled\").length || e.push(\":enabled\", \":disabled\")));\n });\n e = new RegExp(e.join(\"|\"));\n sb = function(a, d, f, g, i) {\n if (((((!g && !i)) && !e.test(a)))) {\n var j, k, l = !0, m = p, n = d, o = ((((d.nodeType === 9)) && a));\n if (((((d.nodeType === 1)) && ((d.nodeName.toLowerCase() !== \"object\"))))) {\n j = kb(a);\n (((l = d.getAttribute(\"id\")) ? m = l.replace(c, \"\\\\$&\") : d.setAttribute(\"id\", m)));\n m = ((((\"[id='\" + m)) + \"'] \"));\n k = j.length;\n while (k--) {\n j[k] = ((m + j[k].join(\"\")));\n ;\n };\n ;\n n = ((((S.test(a) && d.parentNode)) || d));\n o = j.join(\",\");\n }\n ;\n ;\n if (o) {\n try {\n x.apply(f, y.call(n.querySelectorAll(o), 0));\n return f;\n } catch (q) {\n \n } finally {\n ((l || d.removeAttribute(\"id\")));\n };\n }\n ;\n ;\n }\n ;\n ;\n return b(a, d, f, g, i);\n };\n if (i) {\n Y(function(b) {\n a = i.call(b, \"div\");\n try {\n i.call(b, \"[test!='']:sizzle\");\n f.push(\"!=\", K);\n } catch (c) {\n \n };\n ;\n });\n f = new RegExp(f.join(\"|\"));\n fb.matchesSelector = function(b, c) {\n c = c.replace(d, \"='$1']\");\n if (((((!g(b) && !f.test(c))) && !e.test(c)))) {\n try {\n var j = i.call(b, c);\n if (((((j || a)) || ((b.JSBNG__document && ((b.JSBNG__document.nodeType !== 11))))))) {\n return j;\n }\n ;\n ;\n } catch (k) {\n \n };\n }\n ;\n ;\n return ((fb(c, null, null, [b,]).length > 0));\n };\n }\n ;\n ;\n }()));\n e.pseudos.nth = e.pseudos.eq;\n e.filters = tb.prototype = e.pseudos;\n e.setFilters = new tb;\n fb.attr = q.attr;\n q.JSBNG__find = fb;\n q.expr = fb.selectors;\n q.expr[\":\"] = q.expr.pseudos;\n q.unique = fb.uniqueSort;\n q.text = fb.getText;\n q.isXMLDoc = fb.isXML;\n q.contains = fb.contains;\n })(a);\n var fb = /Until$/, gb = /^(?:parents|prev(?:Until|All))/, hb = /^.[^:#\\[\\.,]*$/, ib = q.expr.match.needsContext, jb = {\n children: !0,\n contents: !0,\n next: !0,\n prev: !0\n };\n q.fn.extend({\n JSBNG__find: function(a) {\n var b, c, d, e, f, g, i = this;\n if (((typeof a != \"string\"))) {\n return q(a).filter(function() {\n for (b = 0, c = i.length; ((b < c)); b++) {\n if (q.contains(i[b], this)) {\n return !0;\n }\n ;\n ;\n };\n ;\n });\n }\n ;\n ;\n g = this.pushStack(\"\", \"JSBNG__find\", a);\n for (b = 0, c = this.length; ((b < c)); b++) {\n d = g.length;\n q.JSBNG__find(a, this[b], g);\n if (((b > 0))) {\n for (e = d; ((e < g.length)); e++) {\n for (f = 0; ((f < d)); f++) {\n if (((g[f] === g[e]))) {\n g.splice(e--, 1);\n break;\n }\n ;\n ;\n };\n ;\n };\n }\n ;\n ;\n };\n ;\n return g;\n },\n has: function(a) {\n var b, c = q(a, this), d = c.length;\n return this.filter(function() {\n for (b = 0; ((b < d)); b++) {\n if (q.contains(this, c[b])) {\n return !0;\n }\n ;\n ;\n };\n ;\n });\n },\n not: function(a) {\n return this.pushStack(mb(this, a, !1), \"not\", a);\n },\n filter: function(a) {\n return this.pushStack(mb(this, a, !0), \"filter\", a);\n },\n is: function(a) {\n return ((!!a && ((((typeof a == \"string\")) ? ((ib.test(a) ? ((q(a, this.context).index(this[0]) >= 0)) : ((q.filter(a, this).length > 0)))) : ((this.filter(a).length > 0))))));\n },\n closest: function(a, b) {\n var c, d = 0, e = this.length, f = [], g = ((((ib.test(a) || ((typeof a != \"string\")))) ? q(a, ((b || this.context))) : 0));\n for (; ((d < e)); d++) {\n c = this[d];\n while (((((((c && c.ownerDocument)) && ((c !== b)))) && ((c.nodeType !== 11))))) {\n if (((g ? ((g.index(c) > -1)) : q.JSBNG__find.matchesSelector(c, a)))) {\n f.push(c);\n break;\n }\n ;\n ;\n c = c.parentNode;\n };\n ;\n };\n ;\n f = ((((f.length > 1)) ? q.unique(f) : f));\n return this.pushStack(f, \"closest\", a);\n },\n index: function(a) {\n return ((a ? ((((typeof a == \"string\")) ? q.inArray(this[0], q(a)) : q.inArray(((a.jquery ? a[0] : a)), this))) : ((((this[0] && this[0].parentNode)) ? this.prevAll().length : -1))));\n },\n add: function(a, b) {\n var c = ((((typeof a == \"string\")) ? q(a, b) : q.makeArray(((((a && a.nodeType)) ? [a,] : a))))), d = q.merge(this.get(), c);\n return this.pushStack(((((kb(c[0]) || kb(d[0]))) ? d : q.unique(d))));\n },\n addBack: function(a) {\n return this.add(((((a == null)) ? this.prevObject : this.prevObject.filter(a))));\n }\n });\n q.fn.andSelf = q.fn.addBack;\n q.each({\n parent: function(a) {\n var b = a.parentNode;\n return ((((b && ((b.nodeType !== 11)))) ? b : null));\n },\n parents: function(a) {\n return q.dir(a, \"parentNode\");\n },\n parentsUntil: function(a, b, c) {\n return q.dir(a, \"parentNode\", c);\n },\n next: function(a) {\n return lb(a, \"nextSibling\");\n },\n prev: function(a) {\n return lb(a, \"previousSibling\");\n },\n nextAll: function(a) {\n return q.dir(a, \"nextSibling\");\n },\n prevAll: function(a) {\n return q.dir(a, \"previousSibling\");\n },\n nextUntil: function(a, b, c) {\n return q.dir(a, \"nextSibling\", c);\n },\n prevUntil: function(a, b, c) {\n return q.dir(a, \"previousSibling\", c);\n },\n siblings: function(a) {\n return q.sibling(((a.parentNode || {\n })).firstChild, a);\n },\n children: function(a) {\n return q.sibling(a.firstChild);\n },\n contents: function(a) {\n return ((q.nodeName(a, \"div\") ? ((a.contentDocument || a.contentWindow.JSBNG__document)) : q.merge([], a.childNodes)));\n }\n }, function(a, b) {\n q.fn[a] = function(c, d) {\n var e = q.map(this, b, c);\n ((fb.test(a) || (d = c)));\n ((((d && ((typeof d == \"string\")))) && (e = q.filter(d, e))));\n e = ((((((this.length > 1)) && !jb[a])) ? q.unique(e) : e));\n ((((((this.length > 1)) && gb.test(a))) && (e = e.reverse())));\n return this.pushStack(e, a, l.call(arguments).join(\",\"));\n };\n });\n q.extend({\n filter: function(a, b, c) {\n ((c && (a = ((((\":not(\" + a)) + \")\")))));\n return ((((b.length === 1)) ? ((q.JSBNG__find.matchesSelector(b[0], a) ? [b[0],] : [])) : q.JSBNG__find.matches(a, b)));\n },\n dir: function(a, c, d) {\n var e = [], f = a[c];\n while (((((f && ((f.nodeType !== 9)))) && ((((((d === b)) || ((f.nodeType !== 1)))) || !q(f).is(d)))))) {\n ((((f.nodeType === 1)) && e.push(f)));\n f = f[c];\n };\n ;\n return e;\n },\n sibling: function(a, b) {\n var c = [];\n for (; a; a = a.nextSibling) {\n ((((((a.nodeType === 1)) && ((a !== b)))) && c.push(a)));\n ;\n };\n ;\n return c;\n }\n });\n var ob = \"abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video\", pb = / jQuery\\d+=\"(?:null|\\d+)\"/g, qb = /^\\s+/, rb = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\\w:]+)[^>]*)\\/>/gi, sb = /<([\\w:]+)/, tb = /<tbody/i, ub = /<|&#?\\w+;/, vb = /<(?:script|style|link)/i, wb = /<(?:script|object|embed|option|style)/i, xb = new RegExp(((((\"\\u003C(?:\" + ob)) + \")[\\\\s/\\u003E]\")), \"i\"), yb = /^(?:checkbox|radio)$/, zb = /checked\\s*(?:[^=]|=\\s*.checked.)/i, Ab = /\\/(java|ecma)script/i, Bb = /^\\s*<!(?:\\[CDATA\\[|\\-\\-)|[\\]\\-]{2}>\\s*$/g, Cb = {\n option: [1,\"\\u003Cselect multiple='multiple'\\u003E\",\"\\u003C/select\\u003E\",],\n legend: [1,\"\\u003Cfieldset\\u003E\",\"\\u003C/fieldset\\u003E\",],\n thead: [1,\"\\u003Ctable\\u003E\",\"\\u003C/table\\u003E\",],\n tr: [2,\"\\u003Ctable\\u003E\\u003Ctbody\\u003E\",\"\\u003C/tbody\\u003E\\u003C/table\\u003E\",],\n td: [3,\"\\u003Ctable\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\",\"\\u003C/tr\\u003E\\u003C/tbody\\u003E\\u003C/table\\u003E\",],\n col: [2,\"\\u003Ctable\\u003E\\u003Ctbody\\u003E\\u003C/tbody\\u003E\\u003Ccolgroup\\u003E\",\"\\u003C/colgroup\\u003E\\u003C/table\\u003E\",],\n area: [1,\"\\u003Cmap\\u003E\",\"\\u003C/map\\u003E\",],\n _default: [0,\"\",\"\",]\n }, Db = nb(e), Eb = Db.appendChild(e.createElement(\"div\"));\n Cb.optgroup = Cb.option;\n Cb.tbody = Cb.tfoot = Cb.colgroup = Cb.caption = Cb.thead;\n Cb.th = Cb.td;\n ((q.support.htmlSerialize || (Cb._default = [1,\"X\\u003Cdiv\\u003E\",\"\\u003C/div\\u003E\",])));\n q.fn.extend({\n text: function(a) {\n return q.access(this, function(a) {\n return ((((a === b)) ? q.text(this) : this.empty().append(((((this[0] && this[0].ownerDocument)) || e)).createTextNode(a))));\n }, null, a, arguments.length);\n },\n wrapAll: function(a) {\n if (q.isFunction(a)) {\n return this.each(function(b) {\n q(this).wrapAll(a.call(this, b));\n });\n }\n ;\n ;\n if (this[0]) {\n var b = q(a, this[0].ownerDocument).eq(0).clone(!0);\n ((this[0].parentNode && b.insertBefore(this[0])));\n b.map(function() {\n var a = this;\n while (((a.firstChild && ((a.firstChild.nodeType === 1))))) {\n a = a.firstChild;\n ;\n };\n ;\n return a;\n }).append(this);\n }\n ;\n ;\n return this;\n },\n wrapInner: function(a) {\n return ((q.isFunction(a) ? this.each(function(b) {\n q(this).wrapInner(a.call(this, b));\n }) : this.each(function() {\n var b = q(this), c = b.contents();\n ((c.length ? c.wrapAll(a) : b.append(a)));\n })));\n },\n wrap: function(a) {\n var b = q.isFunction(a);\n return this.each(function(c) {\n q(this).wrapAll(((b ? a.call(this, c) : a)));\n });\n },\n unwrap: function() {\n return this.parent().each(function() {\n ((q.nodeName(this, \"body\") || q(this).replaceWith(this.childNodes)));\n }).end();\n },\n append: function() {\n return this.domManip(arguments, !0, function(a) {\n ((((((this.nodeType === 1)) || ((this.nodeType === 11)))) && this.appendChild(a)));\n });\n },\n prepend: function() {\n return this.domManip(arguments, !0, function(a) {\n ((((((this.nodeType === 1)) || ((this.nodeType === 11)))) && this.insertBefore(a, this.firstChild)));\n });\n },\n before: function() {\n if (!kb(this[0])) {\n return this.domManip(arguments, !1, function(a) {\n this.parentNode.insertBefore(a, this);\n });\n }\n ;\n ;\n if (arguments.length) {\n var a = q.clean(arguments);\n return this.pushStack(q.merge(a, this), \"before\", this.selector);\n }\n ;\n ;\n },\n after: function() {\n if (!kb(this[0])) {\n return this.domManip(arguments, !1, function(a) {\n this.parentNode.insertBefore(a, this.nextSibling);\n });\n }\n ;\n ;\n if (arguments.length) {\n var a = q.clean(arguments);\n return this.pushStack(q.merge(this, a), \"after\", this.selector);\n }\n ;\n ;\n },\n remove: function(a, b) {\n var c, d = 0;\n for (; (((c = this[d]) != null)); d++) {\n if (((!a || q.filter(a, [c,]).length))) {\n if (((!b && ((c.nodeType === 1))))) {\n q.cleanData(c.getElementsByTagName(\"*\"));\n q.cleanData([c,]);\n }\n ;\n ;\n ((c.parentNode && c.parentNode.removeChild(c)));\n }\n ;\n ;\n };\n ;\n return this;\n },\n empty: function() {\n var a, b = 0;\n for (; (((a = this[b]) != null)); b++) {\n ((((a.nodeType === 1)) && q.cleanData(a.getElementsByTagName(\"*\"))));\n while (a.firstChild) {\n a.removeChild(a.firstChild);\n ;\n };\n ;\n };\n ;\n return this;\n },\n clone: function(a, b) {\n a = ((((a == null)) ? !1 : a));\n b = ((((b == null)) ? a : b));\n return this.map(function() {\n return q.clone(this, a, b);\n });\n },\n html: function(a) {\n return q.access(this, function(a) {\n var c = ((this[0] || {\n })), d = 0, e = this.length;\n if (((a === b))) {\n return ((((c.nodeType === 1)) ? c.innerHTML.replace(pb, \"\") : b));\n }\n ;\n ;\n if (((((((((((typeof a == \"string\")) && !vb.test(a))) && ((q.support.htmlSerialize || !xb.test(a))))) && ((q.support.leadingWhitespace || !qb.test(a))))) && !Cb[((sb.exec(a) || [\"\",\"\",]))[1].toLowerCase()]))) {\n a = a.replace(rb, \"\\u003C$1\\u003E\\u003C/$2\\u003E\");\n try {\n for (; ((d < e)); d++) {\n c = ((this[d] || {\n }));\n if (((c.nodeType === 1))) {\n q.cleanData(c.getElementsByTagName(\"*\"));\n c.innerHTML = a;\n }\n ;\n ;\n };\n ;\n c = 0;\n } catch (f) {\n \n };\n ;\n }\n ;\n ;\n ((c && this.empty().append(a)));\n }, null, a, arguments.length);\n },\n replaceWith: function(a) {\n if (!kb(this[0])) {\n if (q.isFunction(a)) {\n return this.each(function(b) {\n var c = q(this), d = c.html();\n c.replaceWith(a.call(this, b, d));\n });\n }\n ;\n ;\n ((((typeof a != \"string\")) && (a = q(a).detach())));\n return this.each(function() {\n var b = this.nextSibling, c = this.parentNode;\n q(this).remove();\n ((b ? q(b).before(a) : q(c).append(a)));\n });\n }\n ;\n ;\n return ((this.length ? this.pushStack(q(((q.isFunction(a) ? a() : a))), \"replaceWith\", a) : this));\n },\n detach: function(a) {\n return this.remove(a, !0);\n },\n domManip: function(a, c, d) {\n a = [].concat.apply([], a);\n var e, f, g, i, j = 0, k = a[0], l = [], m = this.length;\n if (((((((!q.support.checkClone && ((m > 1)))) && ((typeof k == \"string\")))) && zb.test(k)))) {\n return this.each(function() {\n q(this).domManip(a, c, d);\n });\n }\n ;\n ;\n if (q.isFunction(k)) {\n return this.each(function(e) {\n var f = q(this);\n a[0] = k.call(this, e, ((c ? f.html() : b)));\n f.domManip(a, c, d);\n });\n }\n ;\n ;\n if (this[0]) {\n e = q.buildFragment(a, this, l);\n g = e.fragment;\n f = g.firstChild;\n ((((g.childNodes.length === 1)) && (g = f)));\n if (f) {\n c = ((c && q.nodeName(f, \"tr\")));\n for (i = ((e.cacheable || ((m - 1)))); ((j < m)); j++) {\n d.call(((((c && q.nodeName(this[j], \"table\"))) ? Fb(this[j], \"tbody\") : this[j])), ((((j === i)) ? g : q.clone(g, !0, !0))));\n ;\n };\n ;\n }\n ;\n ;\n g = f = null;\n ((l.length && q.each(l, function(a, b) {\n ((b.src ? ((q.ajax ? q.ajax({\n url: b.src,\n type: \"GET\",\n dataType: \"script\",\n async: !1,\n global: !1,\n throws: !0\n }) : q.error(\"no ajax\"))) : q.globalEval(((((((b.text || b.textContent)) || b.innerHTML)) || \"\")).replace(Bb, \"\"))));\n ((b.parentNode && b.parentNode.removeChild(b)));\n })));\n }\n ;\n ;\n return this;\n }\n });\n q.buildFragment = function(a, c, d) {\n var f, g, i, j = a[0];\n c = ((c || e));\n c = ((((!c.nodeType && c[0])) || c));\n c = ((c.ownerDocument || c));\n if (((((((((((((((((a.length === 1)) && ((typeof j == \"string\")))) && ((j.length < 512)))) && ((c === e)))) && ((j.charAt(0) === \"\\u003C\")))) && !wb.test(j))) && ((q.support.checkClone || !zb.test(j))))) && ((q.support.html5Clone || !xb.test(j)))))) {\n g = !0;\n f = q.fragments[j];\n i = ((f !== b));\n }\n ;\n ;\n if (!f) {\n f = c.createDocumentFragment();\n q.clean(a, c, f, d);\n ((g && (q.fragments[j] = ((i && f)))));\n }\n ;\n ;\n return {\n fragment: f,\n cacheable: g\n };\n };\n q.fragments = {\n };\n q.each({\n appendTo: \"append\",\n prependTo: \"prepend\",\n insertBefore: \"before\",\n insertAfter: \"after\",\n replaceAll: \"replaceWith\"\n }, function(a, b) {\n q.fn[a] = function(c) {\n var d, e = 0, f = [], g = q(c), i = g.length, j = ((((this.length === 1)) && this[0].parentNode));\n if (((((((j == null)) || ((((j && ((j.nodeType === 11)))) && ((j.childNodes.length === 1)))))) && ((i === 1))))) {\n g[b](this[0]);\n return this;\n }\n ;\n ;\n for (; ((e < i)); e++) {\n d = ((((e > 0)) ? this.clone(!0) : this)).get();\n q(g[e])[b](d);\n f = f.concat(d);\n };\n ;\n return this.pushStack(f, a, g.selector);\n };\n });\n q.extend({\n clone: function(a, b, c) {\n var d, e, f, g;\n if (((((q.support.html5Clone || q.isXMLDoc(a))) || !xb.test(((((\"\\u003C\" + a.nodeName)) + \"\\u003E\")))))) g = a.cloneNode(!0);\n else {\n Eb.innerHTML = a.outerHTML;\n Eb.removeChild(g = Eb.firstChild);\n }\n ;\n ;\n if (((((((!q.support.noCloneEvent || !q.support.noCloneChecked)) && ((((a.nodeType === 1)) || ((a.nodeType === 11)))))) && !q.isXMLDoc(a)))) {\n Hb(a, g);\n d = Ib(a);\n e = Ib(g);\n for (f = 0; d[f]; ++f) {\n ((e[f] && Hb(d[f], e[f])));\n ;\n };\n ;\n }\n ;\n ;\n if (b) {\n Gb(a, g);\n if (c) {\n d = Ib(a);\n e = Ib(g);\n for (f = 0; d[f]; ++f) {\n Gb(d[f], e[f]);\n ;\n };\n ;\n }\n ;\n ;\n }\n ;\n ;\n d = e = null;\n return g;\n },\n clean: function(a, b, c, d) {\n var f, g, i, j, k, l, m, n, o, p, r, s, t = ((((b === e)) && Db)), u = [];\n if (((!b || ((typeof b.createDocumentFragment == \"undefined\"))))) {\n b = e;\n }\n ;\n ;\n for (f = 0; (((i = a[f]) != null)); f++) {\n ((((typeof i == \"number\")) && (i += \"\")));\n if (!i) {\n continue;\n }\n ;\n ;\n if (((typeof i == \"string\"))) {\n if (!ub.test(i)) i = b.createTextNode(i);\n else {\n t = ((t || nb(b)));\n m = b.createElement(\"div\");\n t.appendChild(m);\n i = i.replace(rb, \"\\u003C$1\\u003E\\u003C/$2\\u003E\");\n j = ((sb.exec(i) || [\"\",\"\",]))[1].toLowerCase();\n k = ((Cb[j] || Cb._default));\n l = k[0];\n m.innerHTML = ((((k[1] + i)) + k[2]));\n while (l--) {\n m = m.lastChild;\n ;\n };\n ;\n if (!q.support.tbody) {\n n = tb.test(i);\n o = ((((((j === \"table\")) && !n)) ? ((m.firstChild && m.firstChild.childNodes)) : ((((((k[1] === \"\\u003Ctable\\u003E\")) && !n)) ? m.childNodes : []))));\n for (g = ((o.length - 1)); ((g >= 0)); --g) {\n ((((q.nodeName(o[g], \"tbody\") && !o[g].childNodes.length)) && o[g].parentNode.removeChild(o[g])));\n ;\n };\n ;\n }\n ;\n ;\n ((((!q.support.leadingWhitespace && qb.test(i))) && m.insertBefore(b.createTextNode(qb.exec(i)[0]), m.firstChild)));\n i = m.childNodes;\n m.parentNode.removeChild(m);\n }\n ;\n }\n ;\n ;\n ((i.nodeType ? u.push(i) : q.merge(u, i)));\n };\n ;\n ((m && (i = m = t = null)));\n if (!q.support.appendChecked) {\n for (f = 0; (((i = u[f]) != null)); f++) {\n ((q.nodeName(i, \"input\") ? Jb(i) : ((((typeof i.getElementsByTagName != \"undefined\")) && q.grep(i.getElementsByTagName(\"input\"), Jb)))));\n ;\n };\n }\n ;\n ;\n if (c) {\n r = function(a) {\n if (((!a.type || Ab.test(a.type)))) {\n return ((d ? d.push(((a.parentNode ? a.parentNode.removeChild(a) : a))) : c.appendChild(a)));\n }\n ;\n ;\n };\n for (f = 0; (((i = u[f]) != null)); f++) {\n if (((!q.nodeName(i, \"script\") || !r(i)))) {\n c.appendChild(i);\n if (((typeof i.getElementsByTagName != \"undefined\"))) {\n s = q.grep(q.merge([], i.getElementsByTagName(\"script\")), r);\n u.splice.apply(u, [((f + 1)),0,].concat(s));\n f += s.length;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n }\n ;\n ;\n return u;\n },\n cleanData: function(a, b) {\n var c, d, e, f, g = 0, i = q.expando, j = q.cache, k = q.support.deleteExpando, l = q.JSBNG__event.special;\n for (; (((e = a[g]) != null)); g++) {\n if (((b || q.acceptData(e)))) {\n d = e[i];\n c = ((d && j[d]));\n if (c) {\n if (c.events) {\n {\n var fin27keys = ((window.top.JSBNG_Replay.forInKeys)((c.events))), fin27i = (0);\n (0);\n for (; (fin27i < fin27keys.length); (fin27i++)) {\n ((f) = (fin27keys[fin27i]));\n {\n ((l[f] ? q.JSBNG__event.remove(e, f) : q.removeEvent(e, f, c.handle)));\n ;\n };\n };\n };\n }\n ;\n ;\n if (j[d]) {\n delete j[d];\n ((k ? delete e[i] : ((e.removeAttribute ? e.removeAttribute(i) : e[i] = null))));\n q.deletedIds.push(d);\n }\n ;\n ;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n }\n });\n (function() {\n var a, b;\n q.uaMatch = function(a) {\n a = a.toLowerCase();\n var b = ((((((((((/(chrome)[ \\/]([\\w.]+)/.exec(a) || /(webkit)[ \\/]([\\w.]+)/.exec(a))) || /(opera)(?:.*version|)[ \\/]([\\w.]+)/.exec(a))) || /(msie) ([\\w.]+)/.exec(a))) || ((((a.indexOf(\"compatible\") < 0)) && /(mozilla)(?:.*? rv:([\\w.]+)|)/.exec(a))))) || []));\n return {\n browser: ((b[1] || \"\")),\n version: ((b[2] || \"0\"))\n };\n };\n a = q.uaMatch(g.userAgent);\n b = {\n };\n if (a.browser) {\n b[a.browser] = !0;\n b.version = a.version;\n }\n ;\n ;\n ((b.chrome ? b.webkit = !0 : ((b.webkit && (b.safari = !0)))));\n q.browser = b;\n q.sub = function() {\n function a(b, c) {\n return new a.fn.init(b, c);\n };\n ;\n q.extend(!0, a, this);\n a.superclass = this;\n a.fn = a.prototype = this();\n a.fn.constructor = a;\n a.sub = this.sub;\n a.fn.init = function(d, e) {\n ((((((e && ((e instanceof q)))) && !((e instanceof a)))) && (e = a(e))));\n return q.fn.init.call(this, d, e, b);\n };\n a.fn.init.prototype = a.fn;\n var b = a(e);\n return a;\n };\n })();\n var Kb, Lb, Mb, Nb = /alpha\\([^)]*\\)/i, Ob = /opacity=([^)]*)/, Pb = /^(top|right|bottom|left)$/, Qb = /^(none|table(?!-c[ea]).+)/, Rb = /^margin/, Sb = new RegExp(((((\"^(\" + r)) + \")(.*)$\")), \"i\"), Tb = new RegExp(((((\"^(\" + r)) + \")(?!px)[a-z%]+$\")), \"i\"), Ub = new RegExp(((((\"^([-+])=(\" + r)) + \")\")), \"i\"), Vb = {\n BODY: \"block\"\n }, Wb = {\n position: \"absolute\",\n visibility: \"hidden\",\n display: \"block\"\n }, Xb = {\n letterSpacing: 0,\n fontWeight: 400\n }, Yb = [\"Top\",\"Right\",\"Bottom\",\"Left\",], Zb = [\"Webkit\",\"O\",\"Moz\",\"ms\",], $b = q.fn.toggle;\n q.fn.extend({\n css: function(a, c) {\n return q.access(this, function(a, c, d) {\n return ((((d !== b)) ? q.style(a, c, d) : q.css(a, c)));\n }, a, c, ((arguments.length > 1)));\n },\n show: function() {\n return bc(this, !0);\n },\n hide: function() {\n return bc(this);\n },\n toggle: function(a, b) {\n var c = ((typeof a == \"boolean\"));\n return ((((q.isFunction(a) && q.isFunction(b))) ? $b.apply(this, arguments) : this.each(function() {\n ((((c ? a : ac(this))) ? q(this).show() : q(this).hide()));\n })));\n }\n });\n q.extend({\n cssHooks: {\n opacity: {\n get: function(a, b) {\n if (b) {\n var c = Kb(a, \"opacity\");\n return ((((c === \"\")) ? \"1\" : c));\n }\n ;\n ;\n }\n }\n },\n cssNumber: {\n fillOpacity: !0,\n fontWeight: !0,\n lineHeight: !0,\n opacity: !0,\n orphans: !0,\n widows: !0,\n zIndex: !0,\n zoom: !0\n },\n cssProps: {\n float: ((q.support.cssFloat ? \"cssFloat\" : \"styleFloat\"))\n },\n style: function(a, c, d, e) {\n if (((((((!a || ((a.nodeType === 3)))) || ((a.nodeType === 8)))) || !a.style))) {\n return;\n }\n ;\n ;\n var f, g, i, j = q.camelCase(c), k = a.style;\n c = ((q.cssProps[j] || (q.cssProps[j] = _b(k, j))));\n i = ((q.cssHooks[c] || q.cssHooks[j]));\n if (((d === b))) {\n return ((((((i && ((\"get\" in i)))) && (((f = i.get(a, !1, e)) !== b)))) ? f : k[c]));\n }\n ;\n ;\n g = typeof d;\n if (((((g === \"string\")) && (f = Ub.exec(d))))) {\n d = ((((((f[1] + 1)) * f[2])) + parseFloat(q.css(a, c))));\n g = \"number\";\n }\n ;\n ;\n if (((((d == null)) || ((((g === \"number\")) && isNaN(d)))))) {\n return;\n }\n ;\n ;\n ((((((g === \"number\")) && !q.cssNumber[j])) && (d += \"px\")));\n if (((((!i || !((\"set\" in i)))) || (((d = i.set(a, d, e)) !== b))))) {\n try {\n k[c] = d;\n } catch (l) {\n \n };\n }\n ;\n ;\n },\n css: function(a, c, d, e) {\n var f, g, i, j = q.camelCase(c);\n c = ((q.cssProps[j] || (q.cssProps[j] = _b(a.style, j))));\n i = ((q.cssHooks[c] || q.cssHooks[j]));\n ((((i && ((\"get\" in i)))) && (f = i.get(a, !0, e))));\n ((((f === b)) && (f = Kb(a, c))));\n ((((((f === \"normal\")) && ((c in Xb)))) && (f = Xb[c])));\n if (((d || ((e !== b))))) {\n g = parseFloat(f);\n return ((((d || q.isNumeric(g))) ? ((g || 0)) : f));\n }\n ;\n ;\n return f;\n },\n swap: function(a, b, c) {\n var d, e, f = {\n };\n {\n var fin28keys = ((window.top.JSBNG_Replay.forInKeys)((b))), fin28i = (0);\n (0);\n for (; (fin28i < fin28keys.length); (fin28i++)) {\n ((e) = (fin28keys[fin28i]));\n {\n f[e] = a.style[e];\n a.style[e] = b[e];\n };\n };\n };\n ;\n d = c.call(a);\n {\n var fin29keys = ((window.top.JSBNG_Replay.forInKeys)((b))), fin29i = (0);\n (0);\n for (; (fin29i < fin29keys.length); (fin29i++)) {\n ((e) = (fin29keys[fin29i]));\n {\n a.style[e] = f[e];\n ;\n };\n };\n };\n ;\n return d;\n }\n });\n ((a.JSBNG__getComputedStyle ? Kb = function(b, c) {\n var d, e, f, g, i = a.JSBNG__getComputedStyle(b, null), j = b.style;\n if (i) {\n d = ((i.getPropertyValue(c) || i[c]));\n ((((((d === \"\")) && !q.contains(b.ownerDocument, b))) && (d = q.style(b, c))));\n if (((Tb.test(d) && Rb.test(c)))) {\n e = j.width;\n f = j.minWidth;\n g = j.maxWidth;\n j.minWidth = j.maxWidth = j.width = d;\n d = i.width;\n j.width = e;\n j.minWidth = f;\n j.maxWidth = g;\n }\n ;\n ;\n }\n ;\n ;\n return d;\n } : ((e.documentElement.currentStyle && (Kb = function(a, b) {\n var c, d, e = ((a.currentStyle && a.currentStyle[b])), f = a.style;\n ((((((((e == null)) && f)) && f[b])) && (e = f[b])));\n if (((Tb.test(e) && !Pb.test(b)))) {\n c = f.left;\n d = ((a.runtimeStyle && a.runtimeStyle.left));\n ((d && (a.runtimeStyle.left = a.currentStyle.left)));\n f.left = ((((b === \"fontSize\")) ? \"1em\" : e));\n e = ((f.pixelLeft + \"px\"));\n f.left = c;\n ((d && (a.runtimeStyle.left = d)));\n }\n ;\n ;\n return ((((e === \"\")) ? \"auto\" : e));\n })))));\n q.each([\"height\",\"width\",], function(a, b) {\n q.cssHooks[b] = {\n get: function(a, c, d) {\n if (c) {\n return ((((((a.offsetWidth === 0)) && Qb.test(Kb(a, \"display\")))) ? q.swap(a, Wb, function() {\n return ec(a, b, d);\n }) : ec(a, b, d)));\n }\n ;\n ;\n },\n set: function(a, c, d) {\n return cc(a, c, ((d ? dc(a, b, d, ((q.support.boxSizing && ((q.css(a, \"boxSizing\") === \"border-box\"))))) : 0)));\n }\n };\n });\n ((q.support.opacity || (q.cssHooks.opacity = {\n get: function(a, b) {\n return ((Ob.test(((((((b && a.currentStyle)) ? a.currentStyle.filter : a.style.filter)) || \"\"))) ? ((((77546 * parseFloat(RegExp.$1))) + \"\")) : ((b ? \"1\" : \"\"))));\n },\n set: function(a, b) {\n var c = a.style, d = a.currentStyle, e = ((q.isNumeric(b) ? ((((\"alpha(opacity=\" + ((b * 100)))) + \")\")) : \"\")), f = ((((((d && d.filter)) || c.filter)) || \"\"));\n c.zoom = 1;\n if (((((((b >= 1)) && ((q.trim(f.replace(Nb, \"\")) === \"\")))) && c.removeAttribute))) {\n c.removeAttribute(\"filter\");\n if (((d && !d.filter))) {\n return;\n }\n ;\n ;\n }\n ;\n ;\n c.filter = ((Nb.test(f) ? f.replace(Nb, e) : ((((f + \" \")) + e))));\n }\n })));\n q(function() {\n ((q.support.reliableMarginRight || (q.cssHooks.marginRight = {\n get: function(a, b) {\n return q.swap(a, {\n display: \"inline-block\"\n }, function() {\n if (b) {\n return Kb(a, \"marginRight\");\n }\n ;\n ;\n });\n }\n })));\n ((((!q.support.pixelPosition && q.fn.position)) && q.each([\"JSBNG__top\",\"left\",], function(a, b) {\n q.cssHooks[b] = {\n get: function(a, c) {\n if (c) {\n var d = Kb(a, b);\n return ((Tb.test(d) ? ((q(a).position()[b] + \"px\")) : d));\n }\n ;\n ;\n }\n };\n })));\n });\n if (((q.expr && q.expr.filters))) {\n q.expr.filters.hidden = function(a) {\n return ((((((a.offsetWidth === 0)) && ((a.offsetHeight === 0)))) || ((!q.support.reliableHiddenOffsets && ((((((a.style && a.style.display)) || Kb(a, \"display\"))) === \"none\"))))));\n };\n q.expr.filters.visible = function(a) {\n return !q.expr.filters.hidden(a);\n };\n }\n ;\n ;\n q.each({\n margin: \"\",\n padding: \"\",\n border: \"Width\"\n }, function(a, b) {\n q.cssHooks[((a + b))] = {\n expand: function(c) {\n var d, e = ((((typeof c == \"string\")) ? c.split(\" \") : [c,])), f = {\n };\n for (d = 0; ((d < 4)); d++) {\n f[((((a + Yb[d])) + b))] = ((((e[d] || e[((d - 2))])) || e[0]));\n ;\n };\n ;\n return f;\n }\n };\n ((Rb.test(a) || (q.cssHooks[((a + b))].set = cc)));\n });\n var gc = /%20/g, hc = /\\[\\]$/, ic = /\\r?\\n/g, jc = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i, kc = /^(?:select|textarea)/i;\n q.fn.extend({\n serialize: function() {\n return q.param(this.serializeArray());\n },\n serializeArray: function() {\n return this.map(function() {\n return ((this.elements ? q.makeArray(this.elements) : this));\n }).filter(function() {\n return ((((this.JSBNG__name && !this.disabled)) && ((((this.checked || kc.test(this.nodeName))) || jc.test(this.type)))));\n }).map(function(a, b) {\n var c = q(this).val();\n return ((((c == null)) ? null : ((q.isArray(c) ? q.map(c, function(a, c) {\n return {\n JSBNG__name: b.JSBNG__name,\n value: a.replace(ic, \"\\u000d\\u000a\")\n };\n }) : {\n JSBNG__name: b.JSBNG__name,\n value: c.replace(ic, \"\\u000d\\u000a\")\n }))));\n }).get();\n }\n });\n q.param = function(a, c) {\n var d, e = [], f = function(a, b) {\n b = ((q.isFunction(b) ? b() : ((((b == null)) ? \"\" : b))));\n e[e.length] = ((((encodeURIComponent(a) + \"=\")) + encodeURIComponent(b)));\n };\n ((((c === b)) && (c = ((q.ajaxSettings && q.ajaxSettings.traditional)))));\n if (((q.isArray(a) || ((a.jquery && !q.isPlainObject(a)))))) {\n q.each(a, function() {\n f(this.JSBNG__name, this.value);\n });\n }\n else {\n {\n var fin30keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin30i = (0);\n (0);\n for (; (fin30i < fin30keys.length); (fin30i++)) {\n ((d) = (fin30keys[fin30i]));\n {\n lc(d, a[d], c, f);\n ;\n };\n };\n };\n }\n ;\n ;\n return e.join(\"&\").replace(gc, \"+\");\n };\n var mc, nc, oc = /#.*$/, pc = /^(.*?):[ \\t]*([^\\r\\n]*)\\r?$/gm, qc = /^(?:about|app|app\\-storage|.+\\-extension|file|res|widget):$/, rc = /^(?:GET|HEAD)$/, sc = /^\\/\\//, tc = /\\?/, uc = /<script\\b[^<]*(?:(?!<\\/script>)<[^<]*)*<\\/script>/gi, vc = /([?&])_=[^&]*/, wc = /^([\\w\\+\\.\\-]+:)(?:\\/\\/([^\\/?#:]*)(?::(\\d+)|)|)/, xc = q.fn.load, yc = {\n }, zc = {\n }, Ac = (([\"*/\",] + [\"*\",]));\n try {\n nc = f.href;\n } catch (Bc) {\n nc = e.createElement(\"a\");\n nc.href = \"\";\n nc = nc.href;\n };\n ;\n mc = ((wc.exec(nc.toLowerCase()) || []));\n q.fn.load = function(a, c, d) {\n if (((((typeof a != \"string\")) && xc))) {\n return xc.apply(this, arguments);\n }\n ;\n ;\n if (!this.length) {\n return this;\n }\n ;\n ;\n var e, f, g, i = this, j = a.indexOf(\" \");\n if (((j >= 0))) {\n e = a.slice(j, a.length);\n a = a.slice(0, j);\n }\n ;\n ;\n if (q.isFunction(c)) {\n d = c;\n c = b;\n }\n else ((((c && ((typeof c == \"object\")))) && (f = \"POST\")));\n ;\n ;\n q.ajax({\n url: a,\n type: f,\n dataType: \"html\",\n data: c,\n complete: function(a, b) {\n ((d && i.each(d, ((g || [a.responseText,b,a,])))));\n }\n }).done(function(a) {\n g = arguments;\n i.html(((e ? q(\"\\u003Cdiv\\u003E\").append(a.replace(uc, \"\")).JSBNG__find(e) : a)));\n });\n return this;\n };\n q.each(\"ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend\".split(\" \"), function(a, b) {\n q.fn[b] = function(a) {\n return this.JSBNG__on(b, a);\n };\n });\n q.each([\"get\",\"post\",], function(a, c) {\n q[c] = function(a, d, e, f) {\n if (q.isFunction(d)) {\n f = ((f || e));\n e = d;\n d = b;\n }\n ;\n ;\n return q.ajax({\n type: c,\n url: a,\n data: d,\n success: e,\n dataType: f\n });\n };\n });\n q.extend({\n getScript: function(a, c) {\n return q.get(a, b, c, \"script\");\n },\n getJSON: function(a, b, c) {\n return q.get(a, b, c, \"json\");\n },\n ajaxSetup: function(a, b) {\n if (b) Ec(a, q.ajaxSettings);\n else {\n b = a;\n a = q.ajaxSettings;\n }\n ;\n ;\n Ec(a, b);\n return a;\n },\n ajaxSettings: {\n url: nc,\n isLocal: qc.test(mc[1]),\n global: !0,\n type: \"GET\",\n contentType: \"application/x-www-form-urlencoded; charset=UTF-8\",\n processData: !0,\n async: !0,\n accepts: {\n xml: \"application/xml, text/xml\",\n html: \"text/html\",\n text: \"text/plain\",\n json: \"application/json, text/javascript\",\n \"*\": Ac\n },\n contents: {\n xml: /xml/,\n html: /html/,\n json: /json/\n },\n responseFields: {\n xml: \"responseXML\",\n text: \"responseText\"\n },\n converters: {\n \"* text\": a.String,\n \"text html\": !0,\n \"text json\": q.parseJSON,\n \"text xml\": q.parseXML\n },\n flatOptions: {\n context: !0,\n url: !0\n }\n },\n ajaxPrefilter: Cc(yc),\n ajaxTransport: Cc(zc),\n ajax: function(a, c) {\n function z(a, c, f, j) {\n var l, t, u, v, x, z = c;\n if (((w === 2))) {\n return;\n }\n ;\n ;\n w = 2;\n ((i && JSBNG__clearTimeout(i)));\n g = b;\n e = ((j || \"\"));\n y.readyState = ((((a > 0)) ? 4 : 0));\n ((f && (v = Fc(m, y, f))));\n if (((((((a >= 200)) && ((a < 300)))) || ((a === 304))))) {\n if (m.ifModified) {\n x = y.getResponseHeader(\"Last-Modified\");\n ((x && (q.lastModified[d] = x)));\n x = y.getResponseHeader(\"Etag\");\n ((x && (q.etag[d] = x)));\n }\n ;\n ;\n if (((a === 304))) {\n z = \"notmodified\";\n l = !0;\n }\n else {\n l = Gc(m, v);\n z = l.state;\n t = l.data;\n u = l.error;\n l = !u;\n }\n ;\n ;\n }\n else {\n u = z;\n if (((!z || a))) {\n z = \"error\";\n ((((a < 0)) && (a = 0)));\n }\n ;\n ;\n }\n ;\n ;\n y.JSBNG__status = a;\n y.statusText = ((((c || z)) + \"\"));\n ((l ? p.resolveWith(n, [t,z,y,]) : p.rejectWith(n, [y,z,u,])));\n y.statusCode(s);\n s = b;\n ((k && o.trigger(((\"ajax\" + ((l ? \"Success\" : \"Error\")))), [y,m,((l ? t : u)),])));\n r.fireWith(n, [y,z,]);\n if (k) {\n o.trigger(\"ajaxComplete\", [y,m,]);\n ((--q.active || q.JSBNG__event.trigger(\"ajaxStop\")));\n }\n ;\n ;\n };\n ;\n if (((typeof a == \"object\"))) {\n c = a;\n a = b;\n }\n ;\n ;\n c = ((c || {\n }));\n var d, e, f, g, i, j, k, l, m = q.ajaxSetup({\n }, c), n = ((m.context || m)), o = ((((((n !== m)) && ((n.nodeType || ((n instanceof q)))))) ? q(n) : q.JSBNG__event)), p = q.Deferred(), r = q.Callbacks(\"once memory\"), s = ((m.statusCode || {\n })), u = {\n }, v = {\n }, w = 0, x = \"canceled\", y = {\n readyState: 0,\n setRequestHeader: function(a, b) {\n if (!w) {\n var c = a.toLowerCase();\n a = v[c] = ((v[c] || a));\n u[a] = b;\n }\n ;\n ;\n return this;\n },\n getAllResponseHeaders: function() {\n return ((((w === 2)) ? e : null));\n },\n getResponseHeader: function(a) {\n var c;\n if (((w === 2))) {\n if (!f) {\n f = {\n };\n while (c = pc.exec(e)) {\n f[c[1].toLowerCase()] = c[2];\n ;\n };\n ;\n }\n ;\n ;\n c = f[a.toLowerCase()];\n }\n ;\n ;\n return ((((c === b)) ? null : c));\n },\n overrideMimeType: function(a) {\n ((w || (m.mimeType = a)));\n return this;\n },\n abort: function(a) {\n a = ((a || x));\n ((g && g.abort(a)));\n z(0, a);\n return this;\n }\n };\n p.promise(y);\n y.success = y.done;\n y.error = y.fail;\n y.complete = r.add;\n y.statusCode = function(a) {\n if (a) {\n var b;\n if (((w < 2))) {\n var fin31keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin31i = (0);\n (0);\n for (; (fin31i < fin31keys.length); (fin31i++)) {\n ((b) = (fin31keys[fin31i]));\n {\n s[b] = [s[b],a[b],];\n ;\n };\n };\n }\n else {\n b = a[y.JSBNG__status];\n y.always(b);\n }\n ;\n ;\n }\n ;\n ;\n return this;\n };\n m.url = ((((a || m.url)) + \"\")).replace(oc, \"\").replace(sc, ((mc[1] + \"//\")));\n m.dataTypes = q.trim(((m.dataType || \"*\"))).toLowerCase().split(t);\n if (((m.crossDomain == null))) {\n j = wc.exec(m.url.toLowerCase());\n m.crossDomain = !((!j || ((((((j[1] === mc[1])) && ((j[2] === mc[2])))) && ((((j[3] || ((((j[1] === \"http:\")) ? 80 : 443)))) == ((mc[3] || ((((mc[1] === \"http:\")) ? 80 : 443))))))))));\n }\n ;\n ;\n ((((((m.data && m.processData)) && ((typeof m.data != \"string\")))) && (m.data = q.param(m.data, m.traditional))));\n Dc(yc, m, c, y);\n if (((w === 2))) {\n return y;\n }\n ;\n ;\n k = m.global;\n m.type = m.type.toUpperCase();\n m.hasContent = !rc.test(m.type);\n ((((k && ((q.active++ === 0)))) && q.JSBNG__event.trigger(\"ajaxStart\")));\n if (!m.hasContent) {\n if (m.data) {\n m.url += ((((tc.test(m.url) ? \"&\" : \"?\")) + m.data));\n delete m.data;\n }\n ;\n ;\n d = m.url;\n if (((m.cache === !1))) {\n var A = q.now(), B = m.url.replace(vc, ((\"$1_=\" + A)));\n m.url = ((B + ((((B === m.url)) ? ((((((tc.test(m.url) ? \"&\" : \"?\")) + \"_=\")) + A)) : \"\"))));\n }\n ;\n ;\n }\n ;\n ;\n ((((((((m.data && m.hasContent)) && ((m.contentType !== !1)))) || c.contentType)) && y.setRequestHeader(\"Content-Type\", m.contentType)));\n if (m.ifModified) {\n d = ((d || m.url));\n ((q.lastModified[d] && y.setRequestHeader(\"If-Modified-Since\", q.lastModified[d])));\n ((q.etag[d] && y.setRequestHeader(\"If-None-Match\", q.etag[d])));\n }\n ;\n ;\n y.setRequestHeader(\"Accept\", ((((m.dataTypes[0] && m.accepts[m.dataTypes[0]])) ? ((m.accepts[m.dataTypes[0]] + ((((m.dataTypes[0] !== \"*\")) ? ((((\", \" + Ac)) + \"; q=0.01\")) : \"\")))) : m.accepts[\"*\"])));\n {\n var fin32keys = ((window.top.JSBNG_Replay.forInKeys)((m.headers))), fin32i = (0);\n (0);\n for (; (fin32i < fin32keys.length); (fin32i++)) {\n ((l) = (fin32keys[fin32i]));\n {\n y.setRequestHeader(l, m.headers[l]);\n ;\n };\n };\n };\n ;\n if (((!m.beforeSend || ((((m.beforeSend.call(n, y, m) !== !1)) && ((w !== 2))))))) {\n x = \"abort\";\n {\n var fin33keys = ((window.top.JSBNG_Replay.forInKeys)(({\n success: 1,\n error: 1,\n complete: 1\n }))), fin33i = (0);\n (0);\n for (; (fin33i < fin33keys.length); (fin33i++)) {\n ((l) = (fin33keys[fin33i]));\n {\n y[l](m[l]);\n ;\n };\n };\n };\n ;\n g = Dc(zc, m, c, y);\n if (!g) z(-1, \"No Transport\");\n else {\n y.readyState = 1;\n ((k && o.trigger(\"ajaxSend\", [y,m,])));\n ((((m.async && ((m.timeout > 0)))) && (i = JSBNG__setTimeout(function() {\n y.abort(\"timeout\");\n }, m.timeout))));\n try {\n w = 1;\n g.send(u, z);\n } catch (C) {\n if (!((w < 2))) {\n throw C;\n }\n ;\n ;\n z(-1, C);\n };\n ;\n }\n ;\n ;\n return y;\n }\n ;\n ;\n return y.abort();\n },\n active: 0,\n lastModified: {\n },\n etag: {\n }\n });\n var Hc = [], Ic = /\\?/, Jc = /(=)\\?(?=&|$)|\\?\\?/, Kc = q.now();\n q.ajaxSetup({\n jsonp: \"callback\",\n jsonpCallback: function() {\n var a = ((Hc.pop() || ((((q.expando + \"_\")) + Kc++))));\n this[a] = !0;\n return a;\n }\n });\n q.ajaxPrefilter(\"json jsonp\", function(c, d, e) {\n var f, g, i, j = c.data, k = c.url, l = ((c.jsonp !== !1)), m = ((l && Jc.test(k))), n = ((((((((l && !m)) && ((typeof j == \"string\")))) && !((c.contentType || \"\")).indexOf(\"application/x-www-form-urlencoded\"))) && Jc.test(j)));\n if (((((((c.dataTypes[0] === \"jsonp\")) || m)) || n))) {\n f = c.jsonpCallback = ((q.isFunction(c.jsonpCallback) ? c.jsonpCallback() : c.jsonpCallback));\n g = a[f];\n ((m ? c.url = k.replace(Jc, ((\"$1\" + f))) : ((n ? c.data = j.replace(Jc, ((\"$1\" + f))) : ((l && (c.url += ((((((((Ic.test(k) ? \"&\" : \"?\")) + c.jsonp)) + \"=\")) + f)))))))));\n c.converters[\"script json\"] = function() {\n ((i || q.error(((f + \" was not called\")))));\n return i[0];\n };\n c.dataTypes[0] = \"json\";\n a[f] = function() {\n i = arguments;\n };\n e.always(function() {\n a[f] = g;\n if (c[f]) {\n c.jsonpCallback = d.jsonpCallback;\n Hc.push(f);\n }\n ;\n ;\n ((((i && q.isFunction(g))) && g(i[0])));\n i = g = b;\n });\n return \"script\";\n }\n ;\n ;\n });\n q.ajaxSetup({\n accepts: {\n script: \"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript\"\n },\n contents: {\n script: /javascript|ecmascript/\n },\n converters: {\n \"text script\": function(a) {\n q.globalEval(a);\n return a;\n }\n }\n });\n q.ajaxPrefilter(\"script\", function(a) {\n ((((a.cache === b)) && (a.cache = !1)));\n if (a.crossDomain) {\n a.type = \"GET\";\n a.global = !1;\n }\n ;\n ;\n });\n q.ajaxTransport(\"script\", function(a) {\n if (a.crossDomain) {\n var c, d = ((((e.head || e.getElementsByTagName(\"head\")[0])) || e.documentElement));\n return {\n send: function(_, f) {\n c = e.createElement(\"script\");\n c.async = \"async\";\n ((a.scriptCharset && (c.charset = a.scriptCharset)));\n c.src = a.url;\n c.JSBNG__onload = c.onreadystatechange = function(_, a) {\n if (((((a || !c.readyState)) || /loaded|complete/.test(c.readyState)))) {\n c.JSBNG__onload = c.onreadystatechange = null;\n ((((d && c.parentNode)) && d.removeChild(c)));\n c = b;\n ((a || f(200, \"success\")));\n }\n ;\n ;\n };\n d.insertBefore(c, d.firstChild);\n },\n abort: function() {\n ((c && c.JSBNG__onload(0, 1)));\n }\n };\n }\n ;\n ;\n });\n var Lc, Mc = ((a.ActiveXObject ? function() {\n {\n var fin34keys = ((window.top.JSBNG_Replay.forInKeys)((Lc))), fin34i = (0);\n var a;\n for (; (fin34i < fin34keys.length); (fin34i++)) {\n ((a) = (fin34keys[fin34i]));\n {\n Lc[a](0, 1);\n ;\n };\n };\n };\n ;\n } : !1)), Nc = 0;\n q.ajaxSettings.xhr = ((a.ActiveXObject ? function() {\n return ((((!this.isLocal && Oc())) || Pc()));\n } : Oc));\n (function(a) {\n q.extend(q.support, {\n ajax: !!a,\n cors: ((!!a && ((\"withCredentials\" in a))))\n });\n })(q.ajaxSettings.xhr());\n ((q.support.ajax && q.ajaxTransport(function(c) {\n if (((!c.crossDomain || q.support.cors))) {\n var d;\n return {\n send: function(e, f) {\n var g, i, j = c.xhr();\n ((c.username ? j.open(c.type, c.url, c.async, c.username, c.password) : j.open(c.type, c.url, c.async)));\n if (c.xhrFields) {\n {\n var fin35keys = ((window.top.JSBNG_Replay.forInKeys)((c.xhrFields))), fin35i = (0);\n (0);\n for (; (fin35i < fin35keys.length); (fin35i++)) {\n ((i) = (fin35keys[fin35i]));\n {\n j[i] = c.xhrFields[i];\n ;\n };\n };\n };\n }\n ;\n ;\n ((((c.mimeType && j.overrideMimeType)) && j.overrideMimeType(c.mimeType)));\n ((((!c.crossDomain && !e[\"X-Requested-With\"])) && (e[\"X-Requested-With\"] = \"JSBNG__XMLHttpRequest\")));\n try {\n {\n var fin36keys = ((window.top.JSBNG_Replay.forInKeys)((e))), fin36i = (0);\n (0);\n for (; (fin36i < fin36keys.length); (fin36i++)) {\n ((i) = (fin36keys[fin36i]));\n {\n j.setRequestHeader(i, e[i]);\n ;\n };\n };\n };\n ;\n } catch (_) {\n \n };\n ;\n j.send(((((c.hasContent && c.data)) || null)));\n d = function(_, a) {\n var e, i, k, l, m;\n try {\n if (((d && ((a || ((j.readyState === 4))))))) {\n d = b;\n if (g) {\n j.onreadystatechange = q.noop;\n ((Mc && delete Lc[g]));\n }\n ;\n ;\n if (a) ((((j.readyState !== 4)) && j.abort()));\n else {\n e = j.JSBNG__status;\n k = j.getAllResponseHeaders();\n l = {\n };\n m = j.responseXML;\n ((((m && m.documentElement)) && (l.xml = m)));\n try {\n l.text = j.responseText;\n } catch (n) {\n \n };\n ;\n try {\n i = j.statusText;\n } catch (n) {\n i = \"\";\n };\n ;\n ((((((!e && c.isLocal)) && !c.crossDomain)) ? e = ((l.text ? 200 : 404)) : ((((e === 1223)) && (e = 204)))));\n }\n ;\n ;\n }\n ;\n ;\n } catch (o) {\n ((a || f(-1, o)));\n };\n ;\n ((l && f(e, i, l, k)));\n };\n if (!c.async) {\n d();\n }\n else {\n if (((j.readyState === 4))) JSBNG__setTimeout(d, 0);\n else {\n g = ++Nc;\n if (Mc) {\n if (!Lc) {\n Lc = {\n };\n q(a).unload(Mc);\n }\n ;\n ;\n Lc[g] = d;\n }\n ;\n ;\n j.onreadystatechange = d;\n }\n ;\n }\n ;\n ;\n },\n abort: function() {\n ((d && d(0, 1)));\n }\n };\n }\n ;\n ;\n })));\n var Qc, Rc, Sc = /^(?:toggle|show|hide)$/, Tc = new RegExp(((((\"^(?:([-+])=|)(\" + r)) + \")([a-z%]*)$\")), \"i\"), Uc = /queueHooks$/, Vc = [_c,], Wc = {\n \"*\": [function(a, b) {\n var c, d, e = this.createTween(a, b), f = Tc.exec(b), g = e.cur(), i = ((+g || 0)), j = 1, k = 20;\n if (f) {\n c = +f[2];\n d = ((f[3] || ((q.cssNumber[a] ? \"\" : \"px\"))));\n if (((((d !== \"px\")) && i))) {\n i = ((((q.css(e.elem, a, !0) || c)) || 1));\n do {\n j = ((j || \".5\"));\n i /= j;\n q.style(e.elem, a, ((i + d)));\n } while (((((((j !== (j = ((e.cur() / g))))) && ((j !== 1)))) && --k)));\n }\n ;\n ;\n e.unit = d;\n e.start = i;\n e.end = ((f[1] ? ((i + ((((f[1] + 1)) * c)))) : c));\n }\n ;\n ;\n return e;\n },]\n };\n q.Animation = q.extend(Zc, {\n tweener: function(a, b) {\n if (q.isFunction(a)) {\n b = a;\n a = [\"*\",];\n }\n else a = a.split(\" \");\n ;\n ;\n var c, d = 0, e = a.length;\n for (; ((d < e)); d++) {\n c = a[d];\n Wc[c] = ((Wc[c] || []));\n Wc[c].unshift(b);\n };\n ;\n },\n prefilter: function(a, b) {\n ((b ? Vc.unshift(a) : Vc.push(a)));\n }\n });\n q.Tween = ad;\n ad.prototype = {\n constructor: ad,\n init: function(a, b, c, d, e, f) {\n this.elem = a;\n this.prop = c;\n this.easing = ((e || \"swing\"));\n this.options = b;\n this.start = this.now = this.cur();\n this.end = d;\n this.unit = ((f || ((q.cssNumber[c] ? \"\" : \"px\"))));\n },\n cur: function() {\n var a = ad.propHooks[this.prop];\n return ((((a && a.get)) ? a.get(this) : ad.propHooks._default.get(this)));\n },\n run: function(a) {\n var b, c = ad.propHooks[this.prop];\n ((this.options.duration ? this.pos = b = q.easing[this.easing](a, ((this.options.duration * a)), 0, 1, this.options.duration) : this.pos = b = a));\n this.now = ((((((this.end - this.start)) * b)) + this.start));\n ((this.options.step && this.options.step.call(this.elem, this.now, this)));\n ((((c && c.set)) ? c.set(this) : ad.propHooks._default.set(this)));\n return this;\n }\n };\n ad.prototype.init.prototype = ad.prototype;\n ad.propHooks = {\n _default: {\n get: function(a) {\n var b;\n if (((((a.elem[a.prop] == null)) || ((!!a.elem.style && ((a.elem.style[a.prop] != null))))))) {\n b = q.css(a.elem, a.prop, !1, \"\");\n return ((((!b || ((b === \"auto\")))) ? 0 : b));\n }\n ;\n ;\n return a.elem[a.prop];\n },\n set: function(a) {\n ((q.fx.step[a.prop] ? q.fx.step[a.prop](a) : ((((a.elem.style && ((((a.elem.style[q.cssProps[a.prop]] != null)) || q.cssHooks[a.prop])))) ? q.style(a.elem, a.prop, ((a.now + a.unit))) : a.elem[a.prop] = a.now))));\n }\n }\n };\n ad.propHooks.scrollTop = ad.propHooks.scrollLeft = {\n set: function(a) {\n ((((a.elem.nodeType && a.elem.parentNode)) && (a.elem[a.prop] = a.now)));\n }\n };\n q.each([\"toggle\",\"show\",\"hide\",], function(a, b) {\n var c = q.fn[b];\n q.fn[b] = function(d, e, f) {\n return ((((((((d == null)) || ((typeof d == \"boolean\")))) || ((((!a && q.isFunction(d))) && q.isFunction(e))))) ? c.apply(this, arguments) : this.animate(bd(b, !0), d, e, f)));\n };\n });\n q.fn.extend({\n fadeTo: function(a, b, c, d) {\n return this.filter(ac).css(\"opacity\", 0).show().end().animate({\n opacity: b\n }, a, c, d);\n },\n animate: function(a, b, c, d) {\n var e = q.isEmptyObject(a), f = q.speed(b, c, d), g = function() {\n var b = Zc(this, q.extend({\n }, a), f);\n ((e && b.JSBNG__stop(!0)));\n };\n return ((((e || ((f.queue === !1)))) ? this.each(g) : this.queue(f.queue, g)));\n },\n JSBNG__stop: function(a, c, d) {\n var e = function(a) {\n var b = a.JSBNG__stop;\n delete a.JSBNG__stop;\n b(d);\n };\n if (((typeof a != \"string\"))) {\n d = c;\n c = a;\n a = b;\n }\n ;\n ;\n ((((c && ((a !== !1)))) && this.queue(((a || \"fx\")), [])));\n return this.each(function() {\n var b = !0, c = ((((a != null)) && ((a + \"queueHooks\")))), f = q.timers, g = q._data(this);\n if (c) {\n ((((g[c] && g[c].JSBNG__stop)) && e(g[c])));\n }\n else {\n {\n var fin37keys = ((window.top.JSBNG_Replay.forInKeys)((g))), fin37i = (0);\n (0);\n for (; (fin37i < fin37keys.length); (fin37i++)) {\n ((c) = (fin37keys[fin37i]));\n {\n ((((((g[c] && g[c].JSBNG__stop)) && Uc.test(c))) && e(g[c])));\n ;\n };\n };\n };\n }\n ;\n ;\n for (c = f.length; c--; ) {\n if (((((f[c].elem === this)) && ((((a == null)) || ((f[c].queue === a))))))) {\n f[c].anim.JSBNG__stop(d);\n b = !1;\n f.splice(c, 1);\n }\n ;\n ;\n };\n ;\n ((((b || !d)) && q.dequeue(this, a)));\n });\n }\n });\n q.each({\n slideDown: bd(\"show\"),\n slideUp: bd(\"hide\"),\n slideToggle: bd(\"toggle\"),\n fadeIn: {\n opacity: \"show\"\n },\n fadeOut: {\n opacity: \"hide\"\n },\n fadeToggle: {\n opacity: \"toggle\"\n }\n }, function(a, b) {\n q.fn[a] = function(a, c, d) {\n return this.animate(b, a, c, d);\n };\n });\n q.speed = function(a, b, c) {\n var d = ((((a && ((typeof a == \"object\")))) ? q.extend({\n }, a) : {\n complete: ((((c || ((!c && b)))) || ((q.isFunction(a) && a)))),\n duration: a,\n easing: ((((c && b)) || ((((b && !q.isFunction(b))) && b))))\n }));\n d.duration = ((q.fx.off ? 0 : ((((typeof d.duration == \"number\")) ? d.duration : ((((d.duration in q.fx.speeds)) ? q.fx.speeds[d.duration] : q.fx.speeds._default))))));\n if (((((d.queue == null)) || ((d.queue === !0))))) {\n d.queue = \"fx\";\n }\n ;\n ;\n d.old = d.complete;\n d.complete = function() {\n ((q.isFunction(d.old) && d.old.call(this)));\n ((d.queue && q.dequeue(this, d.queue)));\n };\n return d;\n };\n q.easing = {\n linear: function(a) {\n return a;\n },\n swing: function(a) {\n return ((91581 - ((Math.cos(((a * Math.PI))) / 2))));\n }\n };\n q.timers = [];\n q.fx = ad.prototype.init;\n q.fx.tick = function() {\n var a, c = q.timers, d = 0;\n Qc = q.now();\n for (; ((d < c.length)); d++) {\n a = c[d];\n ((((!a() && ((c[d] === a)))) && c.splice(d--, 1)));\n };\n ;\n ((c.length || q.fx.JSBNG__stop()));\n Qc = b;\n };\n q.fx.timer = function(a) {\n ((((((a() && q.timers.push(a))) && !Rc)) && (Rc = JSBNG__setInterval(q.fx.tick, q.fx.interval))));\n };\n q.fx.interval = 13;\n q.fx.JSBNG__stop = function() {\n JSBNG__clearInterval(Rc);\n Rc = null;\n };\n q.fx.speeds = {\n slow: 600,\n fast: 200,\n _default: 400\n };\n q.fx.step = {\n };\n ((((q.expr && q.expr.filters)) && (q.expr.filters.animated = function(a) {\n return q.grep(q.timers, function(b) {\n return ((a === b.elem));\n }).length;\n })));\n var cd = /^(?:body|html)$/i;\n q.fn.offset = function(a) {\n if (arguments.length) {\n return ((((a === b)) ? this : this.each(function(b) {\n q.offset.setOffset(this, a, b);\n })));\n }\n ;\n ;\n var c, d, e, f, g, i, j, k = {\n JSBNG__top: 0,\n left: 0\n }, l = this[0], m = ((l && l.ownerDocument));\n if (!m) {\n return;\n }\n ;\n ;\n if ((((d = m.body) === l))) {\n return q.offset.bodyOffset(l);\n }\n ;\n ;\n c = m.documentElement;\n if (!q.contains(c, l)) {\n return k;\n }\n ;\n ;\n ((((typeof l.getBoundingClientRect != \"undefined\")) && (k = l.getBoundingClientRect())));\n e = dd(m);\n f = ((((c.clientTop || d.clientTop)) || 0));\n g = ((((c.clientLeft || d.clientLeft)) || 0));\n i = ((e.JSBNG__pageYOffset || c.scrollTop));\n j = ((e.JSBNG__pageXOffset || c.scrollLeft));\n return {\n JSBNG__top: ((((k.JSBNG__top + i)) - f)),\n left: ((((k.left + j)) - g))\n };\n };\n q.offset = {\n bodyOffset: function(a) {\n var b = a.offsetTop, c = a.offsetLeft;\n if (q.support.doesNotIncludeMarginInBodyOffset) {\n b += ((parseFloat(q.css(a, \"marginTop\")) || 0));\n c += ((parseFloat(q.css(a, \"marginLeft\")) || 0));\n }\n ;\n ;\n return {\n JSBNG__top: b,\n left: c\n };\n },\n setOffset: function(a, b, c) {\n var d = q.css(a, \"position\");\n ((((d === \"static\")) && (a.style.position = \"relative\")));\n var e = q(a), f = e.offset(), g = q.css(a, \"JSBNG__top\"), i = q.css(a, \"left\"), j = ((((((d === \"absolute\")) || ((d === \"fixed\")))) && ((q.inArray(\"auto\", [g,i,]) > -1)))), k = {\n }, l = {\n }, m, n;\n if (j) {\n l = e.position();\n m = l.JSBNG__top;\n n = l.left;\n }\n else {\n m = ((parseFloat(g) || 0));\n n = ((parseFloat(i) || 0));\n }\n ;\n ;\n ((q.isFunction(b) && (b = b.call(a, c, f))));\n ((((b.JSBNG__top != null)) && (k.JSBNG__top = ((((b.JSBNG__top - f.JSBNG__top)) + m)))));\n ((((b.left != null)) && (k.left = ((((b.left - f.left)) + n)))));\n ((((\"using\" in b)) ? b.using.call(a, k) : e.css(k)));\n }\n };\n q.fn.extend({\n position: function() {\n if (!this[0]) {\n return;\n }\n ;\n ;\n var a = this[0], b = this.offsetParent(), c = this.offset(), d = ((cd.test(b[0].nodeName) ? {\n JSBNG__top: 0,\n left: 0\n } : b.offset()));\n c.JSBNG__top -= ((parseFloat(q.css(a, \"marginTop\")) || 0));\n c.left -= ((parseFloat(q.css(a, \"marginLeft\")) || 0));\n d.JSBNG__top += ((parseFloat(q.css(b[0], \"borderTopWidth\")) || 0));\n d.left += ((parseFloat(q.css(b[0], \"borderLeftWidth\")) || 0));\n return {\n JSBNG__top: ((c.JSBNG__top - d.JSBNG__top)),\n left: ((c.left - d.left))\n };\n },\n offsetParent: function() {\n return this.map(function() {\n var a = ((this.offsetParent || e.body));\n while (((((a && !cd.test(a.nodeName))) && ((q.css(a, \"position\") === \"static\"))))) {\n a = a.offsetParent;\n ;\n };\n ;\n return ((a || e.body));\n });\n }\n });\n q.each({\n scrollLeft: \"JSBNG__pageXOffset\",\n scrollTop: \"JSBNG__pageYOffset\"\n }, function(a, c) {\n var d = /Y/.test(c);\n q.fn[a] = function(e) {\n return q.access(this, function(a, e, f) {\n var g = dd(a);\n if (((f === b))) {\n return ((g ? ((((c in g)) ? g[c] : g.JSBNG__document.documentElement[e])) : a[e]));\n }\n ;\n ;\n ((g ? g.JSBNG__scrollTo(((d ? q(g).scrollLeft() : f)), ((d ? f : q(g).scrollTop()))) : a[e] = f));\n }, a, e, arguments.length, null);\n };\n });\n q.each({\n Height: \"height\",\n Width: \"width\"\n }, function(a, c) {\n q.each({\n padding: ((\"JSBNG__inner\" + a)),\n JSBNG__content: c,\n \"\": ((\"JSBNG__outer\" + a))\n }, function(d, e) {\n q.fn[e] = function(e, f) {\n var g = ((arguments.length && ((d || ((typeof e != \"boolean\")))))), i = ((d || ((((((e === !0)) || ((f === !0)))) ? \"margin\" : \"border\"))));\n return q.access(this, function(c, d, e) {\n var f;\n if (q.isWindow(c)) {\n return c.JSBNG__document.documentElement[((\"client\" + a))];\n }\n ;\n ;\n if (((c.nodeType === 9))) {\n f = c.documentElement;\n return Math.max(c.body[((\"JSBNG__scroll\" + a))], f[((\"JSBNG__scroll\" + a))], c.body[((\"offset\" + a))], f[((\"offset\" + a))], f[((\"client\" + a))]);\n }\n ;\n ;\n return ((((e === b)) ? q.css(c, d, e, i) : q.style(c, d, e, i)));\n }, c, ((g ? e : b)), g, null);\n };\n });\n });\n a.jQuery = a.$ = q;\n ((((((((typeof define == \"function\")) && define.amd)) && define.amd.jQuery)) && define(\"jquery\", [], function() {\n return q;\n })));\n })(window);\n (function(a) {\n ((((typeof define == \"function\")) ? define(a) : ((((typeof YUI == \"function\")) ? YUI.add(\"es5\", a) : a()))));\n })(function() {\n ((Function.prototype.bind || (Function.prototype.bind = function(b) {\n var c = this;\n if (((typeof c != \"function\"))) {\n throw new TypeError(((\"Function.prototype.bind called on incompatible \" + c)));\n }\n ;\n ;\n var e = d.call(arguments, 1), f = function() {\n if (((this instanceof f))) {\n var a = function() {\n \n };\n a.prototype = c.prototype;\n var g = new a, i = c.apply(g, e.concat(d.call(arguments)));\n return ((((Object(i) === i)) ? i : g));\n }\n ;\n ;\n return c.apply(b, e.concat(d.call(arguments)));\n };\n return f;\n })));\n var a = Function.prototype.call, b = Array.prototype, c = Object.prototype, d = b.slice, e = a.bind(c.toString), f = a.bind(c.hasOwnProperty), g, i, j, k, l;\n if (l = f(c, \"__defineGetter__\")) {\n g = a.bind(c.__defineGetter__);\n i = a.bind(c.__defineSetter__);\n j = a.bind(c.__lookupGetter__);\n k = a.bind(c.__lookupSetter__);\n }\n ;\n ;\n ((Array.isArray || (Array.isArray = function(b) {\n return ((e(b) == \"[object Array]\"));\n })));\n ((Array.prototype.forEach || (Array.prototype.forEach = function(b) {\n var c = v(this), d = arguments[1], f = -1, g = ((c.length >>> 0));\n if (((e(b) != \"[object Function]\"))) {\n throw new TypeError;\n }\n ;\n ;\n while (((++f < g))) {\n ((((f in c)) && b.call(d, c[f], f, c)));\n ;\n };\n ;\n })));\n ((Array.prototype.map || (Array.prototype.map = function(b) {\n var c = v(this), d = ((c.length >>> 0)), f = Array(d), g = arguments[1];\n if (((e(b) != \"[object Function]\"))) {\n throw new TypeError(((b + \" is not a function\")));\n }\n ;\n ;\n for (var i = 0; ((i < d)); i++) {\n ((((i in c)) && (f[i] = b.call(g, c[i], i, c))));\n ;\n };\n ;\n return f;\n })));\n ((Array.prototype.filter || (Array.prototype.filter = function(b) {\n var c = v(this), d = ((c.length >>> 0)), f = [], g, i = arguments[1];\n if (((e(b) != \"[object Function]\"))) {\n throw new TypeError(((b + \" is not a function\")));\n }\n ;\n ;\n for (var j = 0; ((j < d)); j++) {\n if (((j in c))) {\n g = c[j];\n ((b.call(i, g, j, c) && f.push(g)));\n }\n ;\n ;\n };\n ;\n return f;\n })));\n ((Array.prototype.every || (Array.prototype.every = function(b) {\n var c = v(this), d = ((c.length >>> 0)), f = arguments[1];\n if (((e(b) != \"[object Function]\"))) {\n throw new TypeError(((b + \" is not a function\")));\n }\n ;\n ;\n for (var g = 0; ((g < d)); g++) {\n if (((((g in c)) && !b.call(f, c[g], g, c)))) {\n return !1;\n }\n ;\n ;\n };\n ;\n return !0;\n })));\n ((Array.prototype.some || (Array.prototype.some = function(b) {\n var c = v(this), d = ((c.length >>> 0)), f = arguments[1];\n if (((e(b) != \"[object Function]\"))) {\n throw new TypeError(((b + \" is not a function\")));\n }\n ;\n ;\n for (var g = 0; ((g < d)); g++) {\n if (((((g in c)) && b.call(f, c[g], g, c)))) {\n return !0;\n }\n ;\n ;\n };\n ;\n return !1;\n })));\n ((Array.prototype.reduce || (Array.prototype.reduce = function(b) {\n var c = v(this), d = ((c.length >>> 0));\n if (((e(b) != \"[object Function]\"))) {\n throw new TypeError(((b + \" is not a function\")));\n }\n ;\n ;\n if (((!d && ((arguments.length == 1))))) {\n throw new TypeError(\"reduce of empty array with no initial value\");\n }\n ;\n ;\n var f = 0, g;\n if (((arguments.length >= 2))) {\n g = arguments[1];\n }\n else {\n do {\n if (((f in c))) {\n g = c[f++];\n break;\n }\n ;\n ;\n if (((++f >= d))) {\n throw new TypeError(\"reduce of empty array with no initial value\");\n }\n ;\n ;\n } while (!0);\n }\n ;\n ;\n for (; ((f < d)); f++) {\n ((((f in c)) && (g = b.call(void 0, g, c[f], f, c))));\n ;\n };\n ;\n return g;\n })));\n ((Array.prototype.reduceRight || (Array.prototype.reduceRight = function(b) {\n var c = v(this), d = ((c.length >>> 0));\n if (((e(b) != \"[object Function]\"))) {\n throw new TypeError(((b + \" is not a function\")));\n }\n ;\n ;\n if (((!d && ((arguments.length == 1))))) {\n throw new TypeError(\"reduceRight of empty array with no initial value\");\n }\n ;\n ;\n var f, g = ((d - 1));\n if (((arguments.length >= 2))) {\n f = arguments[1];\n }\n else {\n do {\n if (((g in c))) {\n f = c[g--];\n break;\n }\n ;\n ;\n if (((--g < 0))) {\n throw new TypeError(\"reduceRight of empty array with no initial value\");\n }\n ;\n ;\n } while (!0);\n }\n ;\n ;\n do ((((g in this)) && (f = b.call(void 0, f, c[g], g, c)))); while (g--);\n return f;\n })));\n ((Array.prototype.indexOf || (Array.prototype.indexOf = function(b) {\n var c = v(this), d = ((c.length >>> 0));\n if (!d) {\n return -1;\n }\n ;\n ;\n var e = 0;\n ((((arguments.length > 1)) && (e = t(arguments[1]))));\n e = ((((e >= 0)) ? e : Math.max(0, ((d + e)))));\n for (; ((e < d)); e++) {\n if (((((e in c)) && ((c[e] === b))))) {\n return e;\n }\n ;\n ;\n };\n ;\n return -1;\n })));\n ((Array.prototype.lastIndexOf || (Array.prototype.lastIndexOf = function(b) {\n var c = v(this), d = ((c.length >>> 0));\n if (!d) {\n return -1;\n }\n ;\n ;\n var e = ((d - 1));\n ((((arguments.length > 1)) && (e = Math.min(e, t(arguments[1])))));\n e = ((((e >= 0)) ? e : ((d - Math.abs(e)))));\n for (; ((e >= 0)); e--) {\n if (((((e in c)) && ((b === c[e]))))) {\n return e;\n }\n ;\n ;\n };\n ;\n return -1;\n })));\n if (!Object.keys) {\n var m = !0, n = [\"toString\",\"toLocaleString\",\"valueOf\",\"hasOwnProperty\",\"isPrototypeOf\",\"propertyIsEnumerable\",\"constructor\",], o = n.length;\n {\n var fin38keys = ((window.top.JSBNG_Replay.forInKeys)(({\n toString: null\n }))), fin38i = (0);\n var p;\n for (; (fin38i < fin38keys.length); (fin38i++)) {\n ((p) = (fin38keys[fin38i]));\n {\n m = !1;\n ;\n };\n };\n };\n ;\n Object.keys = function w(a) {\n if (((((((typeof a != \"object\")) && ((typeof a != \"function\")))) || ((a === null))))) {\n throw new TypeError(\"Object.keys called on a non-object\");\n }\n ;\n ;\n var w = [];\n {\n var fin39keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin39i = (0);\n var b;\n for (; (fin39i < fin39keys.length); (fin39i++)) {\n ((b) = (fin39keys[fin39i]));\n {\n ((f(a, b) && w.push(b)));\n ;\n };\n };\n };\n ;\n if (m) {\n for (var c = 0, d = o; ((c < d)); c++) {\n var e = n[c];\n ((f(a, e) && w.push(e)));\n };\n }\n ;\n ;\n return w;\n };\n }\n ;\n ;\n if (((!JSBNG__Date.prototype.toISOString || (((new JSBNG__Date(-62198755200000)).toISOString().indexOf(\"-000001\") === -1))))) {\n JSBNG__Date.prototype.toISOString = function() {\n var b, c, d, e;\n if (!isFinite(this)) {\n throw new RangeError(\"JSBNG__Date.prototype.toISOString called on non-finite value.\");\n }\n ;\n ;\n b = [((this.getUTCMonth() + 1)),this.getUTCDate(),this.getUTCHours(),this.getUTCMinutes(),this.getUTCSeconds(),];\n e = this.getUTCFullYear();\n e = ((((((e < 0)) ? \"-\" : ((((e > 9999)) ? \"+\" : \"\")))) + ((\"00000\" + Math.abs(e))).slice(((((((0 <= e)) && ((e <= 9999)))) ? -4 : -6)))));\n c = b.length;\n while (c--) {\n d = b[c];\n ((((d < 10)) && (b[c] = ((\"0\" + d)))));\n };\n ;\n return ((((((((((((((e + \"-\")) + b.slice(0, 2).join(\"-\"))) + \"T\")) + b.slice(2).join(\":\"))) + \".\")) + ((\"000\" + this.getUTCMilliseconds())).slice(-3))) + \"Z\"));\n };\n }\n ;\n ;\n ((JSBNG__Date.now || (JSBNG__Date.now = function() {\n return (new JSBNG__Date).getTime();\n })));\n ((JSBNG__Date.prototype.toJSON || (JSBNG__Date.prototype.toJSON = function(b) {\n if (((typeof this.toISOString != \"function\"))) {\n throw new TypeError(\"toISOString property is not callable\");\n }\n ;\n ;\n return this.toISOString();\n })));\n if (((!JSBNG__Date.parse || ((JSBNG__Date.parse(\"+275760-09-13T00:00:00.000Z\") !== 8640000000000000))))) {\n JSBNG__Date = function(a) {\n var b = function e(b, c, d, h, f, g, i) {\n var j = arguments.length;\n if (((this instanceof a))) {\n var k = ((((((j == 1)) && ((String(b) === b)))) ? new a(e.parse(b)) : ((((j >= 7)) ? new a(b, c, d, h, f, g, i) : ((((j >= 6)) ? new a(b, c, d, h, f, g) : ((((j >= 5)) ? new a(b, c, d, h, f) : ((((j >= 4)) ? new a(b, c, d, h) : ((((j >= 3)) ? new a(b, c, d) : ((((j >= 2)) ? new a(b, c) : ((((j >= 1)) ? new a(b) : new a))))))))))))))));\n k.constructor = e;\n return k;\n }\n ;\n ;\n return a.apply(this, arguments);\n }, c = new RegExp(\"^(\\\\d{4}|[+-]\\\\d{6})(?:-(\\\\d{2})(?:-(\\\\d{2})(?:T(\\\\d{2}):(\\\\d{2})(?::(\\\\d{2})(?:\\\\.(\\\\d{3}))?)?(?:Z|(?:([-+])(\\\\d{2}):(\\\\d{2})))?)?)?)?$\");\n {\n var fin40keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin40i = (0);\n var d;\n for (; (fin40i < fin40keys.length); (fin40i++)) {\n ((d) = (fin40keys[fin40i]));\n {\n b[d] = a[d];\n ;\n };\n };\n };\n ;\n b.now = a.now;\n b.UTC = a.UTC;\n b.prototype = a.prototype;\n b.prototype.constructor = b;\n b.parse = function(d) {\n var e = c.exec(d);\n if (e) {\n e.shift();\n for (var f = 1; ((f < 7)); f++) {\n e[f] = +((e[f] || ((((f < 3)) ? 1 : 0))));\n ((((f == 1)) && e[f]--));\n };\n ;\n var g = +e.pop(), i = +e.pop(), j = e.pop(), k = 0;\n if (j) {\n if (((((i > 23)) || ((g > 59))))) {\n return NaN;\n }\n ;\n ;\n k = ((((((((i * 60)) + g)) * 60000)) * ((((j == \"+\")) ? -1 : 1))));\n }\n ;\n ;\n var l = +e[0];\n if (((((0 <= l)) && ((l <= 99))))) {\n e[0] = ((l + 400));\n return ((((a.UTC.apply(this, e) + k)) - 12622780800000));\n }\n ;\n ;\n return ((a.UTC.apply(this, e) + k));\n }\n ;\n ;\n return a.parse.apply(this, arguments);\n };\n return b;\n }(JSBNG__Date);\n }\n ;\n ;\n var q = \"\\u0009\\u000a\\u000b\\u000c\\u000d \\u00a0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029\\ufeff\";\n if (((!String.prototype.trim || q.trim()))) {\n q = ((((\"[\" + q)) + \"]\"));\n var r = new RegExp(((((((\"^\" + q)) + q)) + \"*\"))), s = new RegExp(((((q + q)) + \"*$\")));\n String.prototype.trim = function() {\n if (((((this === undefined)) || ((this === null))))) {\n throw new TypeError(((((\"can't convert \" + this)) + \" to object\")));\n }\n ;\n ;\n return String(this).replace(r, \"\").replace(s, \"\");\n };\n }\n ;\n ;\n var t = function(a) {\n a = +a;\n ((((a !== a)) ? a = 0 : ((((((((a !== 0)) && ((a !== ((1 / 0)))))) && ((a !== -Infinity)))) && (a = ((((((a > 0)) || -1)) * Math.floor(Math.abs(a)))))))));\n return a;\n }, u = ((\"a\"[0] != \"a\")), v = function(a) {\n if (((a == null))) {\n throw new TypeError(((((\"can't convert \" + a)) + \" to object\")));\n }\n ;\n ;\n return ((((((u && ((typeof a == \"string\")))) && a)) ? a.split(\"\") : Object(a)));\n };\n });\n (function(a) {\n ((((typeof define == \"function\")) ? define(a) : ((((typeof YUI == \"function\")) ? YUI.add(\"es5-sham\", a) : a()))));\n })(function() {\n function b(a) {\n try {\n Object.defineProperty(a, \"sentinel\", {\n });\n return ((\"sentinel\" in a));\n } catch (b) {\n \n };\n ;\n };\n ;\n ((Object.getPrototypeOf || (Object.getPrototypeOf = function(b) {\n return ((b.__proto__ || ((b.constructor ? b.constructor.prototype : prototypeOfObject))));\n })));\n if (!Object.getOwnPropertyDescriptor) {\n var a = \"Object.getOwnPropertyDescriptor called on a non-object: \";\n Object.getOwnPropertyDescriptor = function(c, d) {\n if (((((((typeof c != \"object\")) && ((typeof c != \"function\")))) || ((c === null))))) {\n throw new TypeError(((a + c)));\n }\n ;\n ;\n if (!owns(c, d)) {\n return;\n }\n ;\n ;\n var e = {\n enumerable: !0,\n configurable: !0\n };\n if (supportsAccessors) {\n var f = c.__proto__;\n c.__proto__ = prototypeOfObject;\n var g = lookupGetter(c, d), i = lookupSetter(c, d);\n c.__proto__ = f;\n if (((g || i))) {\n ((g && (e.get = g)));\n ((i && (e.set = i)));\n return e;\n }\n ;\n ;\n }\n ;\n ;\n e.value = c[d];\n return e;\n };\n }\n ;\n ;\n ((Object.getOwnPropertyNames || (Object.getOwnPropertyNames = function(b) {\n return Object.keys(b);\n })));\n ((Object.create || (Object.create = function(b, c) {\n var d;\n if (((b === null))) d = {\n __proto__: null\n };\n else {\n if (((typeof b != \"object\"))) {\n throw new TypeError(((((\"typeof prototype[\" + typeof b)) + \"] != 'object'\")));\n }\n ;\n ;\n var e = function() {\n \n };\n e.prototype = b;\n d = new e;\n d.__proto__ = b;\n }\n ;\n ;\n ((((c !== void 0)) && Object.defineProperties(d, c)));\n return d;\n })));\n if (Object.defineProperty) {\n var c = b({\n }), d = ((((typeof JSBNG__document == \"undefined\")) || b(JSBNG__document.createElement(\"div\"))));\n if (((!c || !d))) {\n var e = Object.defineProperty;\n }\n ;\n ;\n }\n ;\n ;\n if (((!Object.defineProperty || e))) {\n var f = \"Property description must be an object: \", g = \"Object.defineProperty called on non-object: \", i = \"getters & setters can not be defined on this javascript engine\";\n Object.defineProperty = function(b, c, d) {\n if (((((((typeof b != \"object\")) && ((typeof b != \"function\")))) || ((b === null))))) {\n throw new TypeError(((g + b)));\n }\n ;\n ;\n if (((((((typeof d != \"object\")) && ((typeof d != \"function\")))) || ((d === null))))) {\n throw new TypeError(((f + d)));\n }\n ;\n ;\n if (e) {\n try {\n return e.call(Object, b, c, d);\n } catch (j) {\n \n };\n }\n ;\n ;\n if (owns(d, \"value\")) if (((supportsAccessors && ((lookupGetter(b, c) || lookupSetter(b, c)))))) {\n var k = b.__proto__;\n b.__proto__ = prototypeOfObject;\n delete b[c];\n b[c] = d.value;\n b.__proto__ = k;\n }\n else b[c] = d.value;\n \n else {\n if (!supportsAccessors) {\n throw new TypeError(i);\n }\n ;\n ;\n ((owns(d, \"get\") && defineGetter(b, c, d.get)));\n ((owns(d, \"set\") && defineSetter(b, c, d.set)));\n }\n ;\n ;\n return b;\n };\n }\n ;\n ;\n ((Object.defineProperties || (Object.defineProperties = function(b, c) {\n {\n var fin41keys = ((window.top.JSBNG_Replay.forInKeys)((c))), fin41i = (0);\n var d;\n for (; (fin41i < fin41keys.length); (fin41i++)) {\n ((d) = (fin41keys[fin41i]));\n {\n ((((owns(c, d) && ((d != \"__proto__\")))) && Object.defineProperty(b, d, c[d])));\n ;\n };\n };\n };\n ;\n return b;\n })));\n ((Object.seal || (Object.seal = function(b) {\n return b;\n })));\n ((Object.freeze || (Object.freeze = function(b) {\n return b;\n })));\n try {\n Object.freeze(function() {\n \n });\n } catch (j) {\n Object.freeze = function(b) {\n return function(c) {\n return ((((typeof c == \"function\")) ? c : b(c)));\n };\n }(Object.freeze);\n };\n ;\n ((Object.preventExtensions || (Object.preventExtensions = function(b) {\n return b;\n })));\n ((Object.isSealed || (Object.isSealed = function(b) {\n return !1;\n })));\n ((Object.isFrozen || (Object.isFrozen = function(b) {\n return !1;\n })));\n ((Object.isExtensible || (Object.isExtensible = function(b) {\n if (((Object(b) !== b))) {\n throw new TypeError;\n }\n ;\n ;\n var c = \"\";\n while (owns(b, c)) {\n c += \"?\";\n ;\n };\n ;\n b[c] = !0;\n var d = owns(b, c);\n delete b[c];\n return d;\n })));\n });\n (function(a, b) {\n function t(a) {\n for (var b = 1, c; c = arguments[b]; b++) {\n {\n var fin42keys = ((window.top.JSBNG_Replay.forInKeys)((c))), fin42i = (0);\n var d;\n for (; (fin42i < fin42keys.length); (fin42i++)) {\n ((d) = (fin42keys[fin42i]));\n {\n a[d] = c[d];\n ;\n };\n };\n };\n ;\n };\n ;\n return a;\n };\n ;\n function u(a) {\n return Array.prototype.slice.call(a);\n };\n ;\n function w(a, b) {\n for (var c = 0, d; d = a[c]; c++) {\n if (((b == d))) {\n return c;\n }\n ;\n ;\n };\n ;\n return -1;\n };\n ;\n function x() {\n var a = u(arguments), b = [];\n for (var c = 0, d = a.length; ((c < d)); c++) {\n ((((a[c].length > 0)) && b.push(a[c].replace(/\\/$/, \"\"))));\n ;\n };\n ;\n return b.join(\"/\");\n };\n ;\n function y(a, b, c) {\n var d = b.split(\"/\"), e = a;\n while (((d.length > 1))) {\n var f = d.shift();\n e = e[f] = ((e[f] || {\n }));\n };\n ;\n e[d[0]] = c;\n };\n ;\n function z() {\n \n };\n ;\n function A(a, b) {\n ((a && (this.id = this.path = this.resolvePath(a))));\n this.originalPath = a;\n this.force = !!b;\n };\n ;\n function B(a, b) {\n this.id = a;\n this.path = this.resolvePath(a);\n this.force = b;\n };\n ;\n function C(a, b) {\n this.id = a;\n this.contents = b;\n this.dep = O(a);\n this.deps = [];\n this.path = this.dep.path;\n };\n ;\n function D(a, b) {\n var d;\n this.body = b;\n if (!a) if (c) {\n d = ((i || K()));\n if (d) {\n this.setId(d.id);\n delete j[d.scriptId];\n this.then(function(a) {\n d.complete.call(d, a);\n });\n }\n ;\n ;\n }\n else g = this;\n \n else {\n this.setId(a);\n (((d = p[((\"module_\" + this.id))]) && this.then(function(a) {\n d.complete.call(d, a);\n })));\n }\n ;\n ;\n };\n ;\n function E(a) {\n var b = [];\n for (var c = 0, d; d = a[c]; c++) {\n ((((d instanceof H)) ? b = b.concat(E(d.deps)) : ((((d instanceof B)) && b.push(d)))));\n ;\n };\n ;\n return b;\n };\n ;\n function F() {\n for (var a = 0, b; b = this.deps[a]; a++) {\n if (b.forceFetch) b.forceFetch();\n else {\n b.force = !0;\n b.start();\n }\n ;\n ;\n };\n ;\n return this;\n };\n ;\n function G(a) {\n this.deps = a;\n ((((this.deps.length == 0)) && this.complete()));\n };\n ;\n function H(a) {\n this.deps = a;\n };\n ;\n function J() {\n this.entries = {\n };\n };\n ;\n function K() {\n {\n var fin43keys = ((window.top.JSBNG_Replay.forInKeys)((d))), fin43i = (0);\n var a;\n for (; (fin43i < fin43keys.length); (fin43i++)) {\n ((a) = (fin43keys[fin43i]));\n {\n if (((d[a].readyState == \"interactive\"))) {\n return j[d[a].id];\n }\n ;\n ;\n };\n };\n };\n ;\n };\n ;\n function L() {\n var a = u(arguments), b, c;\n ((((typeof a[0] == \"string\")) && (b = a.shift())));\n c = a.shift();\n return new D(b, c);\n };\n ;\n function M() {\n var a = u(arguments), b;\n ((((typeof a[((a.length - 1))] == \"function\")) && (b = a.pop())));\n var c = new G(N(a));\n ((b && c.then(b)));\n return c;\n };\n ;\n function N(a) {\n var b = [];\n for (var c = 0, d; d = a[c]; c++) {\n ((((typeof d == \"string\")) && (d = O(d))));\n ((v(d) && (d = new H(N(d)))));\n b.push(d);\n };\n ;\n return b;\n };\n ;\n function O(a) {\n var b, c;\n for (var d = 0, e; e = M.matchers[d]; d++) {\n var f = e[0], g = e[1];\n if (b = a.match(f)) {\n return g(a);\n }\n ;\n ;\n };\n ;\n throw new Error(((a + \" was not recognised by loader\")));\n };\n ;\n function Q() {\n a.using = k;\n a.provide = l;\n a.loadrunner = m;\n return P;\n };\n ;\n function R(a) {\n function d(b, d) {\n c[d] = ((c[d] || {\n }));\n c[d][a] = {\n key: a,\n start: b.startTime,\n end: b.endTime,\n duration: ((b.endTime - ((b.startTime || (new JSBNG__Date).getTime())))),\n JSBNG__status: d,\n origin: b\n };\n };\n ;\n var b, c = {\n };\n if (((a && (((((b = o[a]) || (b = p[a]))) || (b = n[a])))))) {\n return {\n start: b.startTime,\n end: b.endTime,\n duration: ((b.endTime - ((b.startTime || (new JSBNG__Date).getTime())))),\n origin: b\n };\n }\n ;\n ;\n {\n var fin44keys = ((window.top.JSBNG_Replay.forInKeys)((o))), fin44i = (0);\n var a;\n for (; (fin44i < fin44keys.length); (fin44i++)) {\n ((a) = (fin44keys[fin44i]));\n {\n d(o[a], \"met\");\n ;\n };\n };\n };\n ;\n {\n var fin45keys = ((window.top.JSBNG_Replay.forInKeys)((p))), fin45i = (0);\n var a;\n for (; (fin45i < fin45keys.length); (fin45i++)) {\n ((a) = (fin45keys[fin45i]));\n {\n d(p[a], \"inProgress\");\n ;\n };\n };\n };\n ;\n {\n var fin46keys = ((window.top.JSBNG_Replay.forInKeys)((n))), fin46i = (0);\n var a;\n for (; (fin46i < fin46keys.length); (fin46i++)) {\n ((a) = (fin46keys[fin46i]));\n {\n d(n[a], \"paused\");\n ;\n };\n };\n };\n ;\n return c;\n };\n ;\n function S() {\n n = {\n };\n o = {\n };\n p = {\n };\n M.bundles = new J;\n B.exports = {\n };\n D.provided = {\n };\n };\n ;\n function T(a) {\n return ((M.bundles.get(a) || undefined));\n };\n ;\n var c = ((a.JSBNG__attachEvent && !a.JSBNG__opera)), d = b.getElementsByTagName(\"script\"), e, f = b.createElement(\"script\"), g, i, j = {\n }, k = a.using, l = a.provide, m = a.loadrunner, n = {\n }, o = {\n }, p = {\n };\n for (var q = 0, r; r = d[q]; q++) {\n if (r.src.match(/loadrunner\\.js(\\?|#|$)/)) {\n e = r;\n break;\n }\n ;\n ;\n };\n ;\n var s = function() {\n var a = 0;\n return function() {\n return a++;\n };\n }(), v = ((Array.isArray || function(a) {\n return ((a.constructor == Array));\n }));\n z.prototype.then = function(b) {\n this.callbacks = ((this.callbacks || []));\n this.callbacks.push(b);\n ((this.completed ? b.apply(a, this.results) : ((((this.callbacks.length == 1)) && this.start()))));\n return this;\n };\n z.prototype.key = function() {\n ((this.id || (this.id = s())));\n return ((\"dependency_\" + this.id));\n };\n z.prototype.start = function() {\n var a = this, b, c;\n this.startTime = (new JSBNG__Date).getTime();\n if (b = o[this.key()]) {\n this.complete.apply(this, b.results);\n }\n else {\n if (c = p[this.key()]) {\n c.then(function() {\n a.complete.apply(a, arguments);\n });\n }\n else {\n if (this.shouldFetch()) {\n p[this.key()] = this;\n this.fetch();\n }\n else {\n n[this.key()] = ((n[this.key()] || []));\n n[this.key()].push(this);\n }\n ;\n }\n ;\n }\n ;\n ;\n };\n z.prototype.shouldFetch = function() {\n return !0;\n };\n z.prototype.complete = function() {\n var b;\n this.endTime = (new JSBNG__Date).getTime();\n delete p[this.key()];\n ((o[this.key()] || (o[this.key()] = this)));\n if (!this.completed) {\n this.results = u(arguments);\n this.completed = !0;\n if (this.callbacks) {\n for (var c = 0, d; d = this.callbacks[c]; c++) {\n d.apply(a, this.results);\n ;\n };\n }\n ;\n ;\n if (b = n[this.key()]) {\n for (var c = 0, e; e = b[c]; c++) {\n e.complete.apply(e, arguments);\n ;\n };\n ;\n delete n[this.key()];\n }\n ;\n ;\n }\n ;\n ;\n };\n A.autoFetch = !0;\n A.xhrTransport = function() {\n var a, b = this;\n if (window.JSBNG__XMLHttpRequest) {\n a = new window.JSBNG__XMLHttpRequest;\n }\n else {\n try {\n a = new window.ActiveXObject(\"Microsoft.XMLHTTP\");\n } catch (c) {\n return new Error(\"XHR not found.\");\n };\n }\n ;\n ;\n a.onreadystatechange = function() {\n var c;\n ((((a.readyState == 4)) && b.loaded(a.responseText)));\n };\n a.open(\"GET\", this.path, !0);\n a.send(null);\n };\n A.scriptTagTransport = function() {\n var b = f.cloneNode(!1), c = this;\n this.scriptId = ((\"LR\" + s()));\n b.id = this.scriptId;\n b.type = \"text/javascript\";\n b.async = !0;\n b.JSBNG__onerror = function() {\n throw new Error(((c.path + \" not loaded\")));\n };\n b.onreadystatechange = b.JSBNG__onload = function(b) {\n b = ((a.JSBNG__event || b));\n if (((((b.type == \"load\")) || ((w([\"loaded\",\"complete\",], this.readyState) > -1))))) {\n this.onreadystatechange = null;\n c.loaded();\n }\n ;\n ;\n };\n b.src = this.path;\n i = this;\n d[0].parentNode.insertBefore(b, d[0]);\n i = null;\n j[this.scriptId] = this;\n };\n A.prototype = new z;\n A.prototype.start = function() {\n var a = this, b;\n (((def = D.provided[this.originalPath]) ? def.then(function() {\n a.complete();\n }) : (((b = T(this.originalPath)) ? b.then(function() {\n a.start();\n }) : z.prototype.start.call(this)))));\n };\n A.prototype.resolvePath = function(a) {\n a = a.replace(/^\\$/, ((M.path.replace(/\\/$/, \"\") + \"/\")));\n return a;\n };\n A.prototype.key = function() {\n return ((\"script_\" + this.id));\n };\n A.prototype.shouldFetch = function() {\n return ((A.autoFetch || this.force));\n };\n A.prototype.fetch = A.scriptTagTransport;\n A.prototype.loaded = function() {\n this.complete();\n };\n B.exports = {\n };\n B.prototype = new A;\n B.prototype.start = function() {\n var a = this, b, c;\n (((b = D.provided[this.id]) ? b.then(function(b) {\n a.complete.call(a, b);\n }) : (((c = T(this.id)) ? c.then(function() {\n a.start();\n }) : A.prototype.start.call(this)))));\n };\n B.prototype.key = function() {\n return ((\"module_\" + this.id));\n };\n B.prototype.resolvePath = function(a) {\n return x(M.path, ((a + \".js\")));\n };\n B.prototype.loaded = function() {\n var a, b, d = this;\n if (!c) {\n a = g;\n g = null;\n if (a) {\n a.setId(this.id);\n a.then(function(a) {\n d.complete.call(d, a);\n });\n }\n else if (!D.provided[this.id]) {\n throw new Error(((((\"Tried to load '\" + this.id)) + \"' as a module, but it didn't have a 'provide()' in it.\")));\n }\n \n ;\n ;\n }\n ;\n ;\n };\n C.prototype = new A;\n C.prototype.start = function() {\n var a = this, b, c, d;\n for (var e = 0, f = this.contents.length; ((e < f)); e++) {\n c = O(this.contents[e]);\n this.deps.push(c);\n d = c.key();\n ((((((!o[d] && !p[d])) && !n[d])) && (n[d] = this)));\n };\n ;\n A.prototype.start.call(this);\n };\n C.prototype.loaded = function() {\n var a, b, c = this, d, e;\n for (var f = 0, g = this.deps.length; ((f < g)); f++) {\n d = this.deps[f];\n e = d.key();\n delete n[e];\n o[e] = this;\n };\n ;\n A.prototype.loaded.call(this);\n };\n D.provided = {\n };\n D.prototype = new z;\n D.prototype.key = function() {\n ((this.id || (this.id = ((\"anon_\" + s())))));\n return ((\"definition_\" + this.id));\n };\n D.prototype.setId = function(a) {\n this.id = a;\n D.provided[a] = this;\n };\n D.prototype.fetch = function() {\n var a = this;\n ((((typeof this.body == \"object\")) ? this.complete(this.body) : ((((typeof this.body == \"function\")) && this.body(function(b) {\n a.complete(b);\n })))));\n };\n D.prototype.complete = function(a) {\n a = ((a || {\n }));\n ((this.id && (this.exports = B.exports[this.id] = a)));\n z.prototype.complete.call(this, a);\n };\n G.prototype = new z;\n G.prototype.fetch = function() {\n function b() {\n var b = [];\n for (var c = 0, d; d = a.deps[c]; c++) {\n if (!d.completed) {\n return;\n }\n ;\n ;\n ((((d.results.length > 0)) && (b = b.concat(d.results))));\n };\n ;\n a.complete.apply(a, b);\n };\n ;\n var a = this;\n for (var c = 0, d; d = this.deps[c]; c++) {\n d.then(b);\n ;\n };\n ;\n return this;\n };\n G.prototype.forceFetch = F;\n G.prototype.as = function(a) {\n var b = this;\n return this.then(function() {\n var c = E(b.deps), d = {\n };\n for (var e = 0, f; f = c[e]; e++) {\n y(d, f.id, arguments[e]);\n ;\n };\n ;\n a.apply(this, [d,].concat(u(arguments)));\n });\n };\n H.prototype = new z;\n H.prototype.fetch = function() {\n var a = this, b = 0, c = [];\n (function d() {\n var e = a.deps[b++];\n ((e ? e.then(function(a) {\n ((((e.results.length > 0)) && (c = c.concat(e.results))));\n d();\n }) : a.complete.apply(a, c)));\n })();\n return this;\n };\n H.prototype.forceFetch = F;\n var I = [];\n J.prototype.push = function(a) {\n {\n var fin47keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin47i = (0);\n var b;\n for (; (fin47i < fin47keys.length); (fin47i++)) {\n ((b) = (fin47keys[fin47i]));\n {\n I[b] = new C(b, a[b]);\n for (var c = 0, d; d = a[b][c]; c++) {\n this.entries[d] = I[b];\n ;\n };\n ;\n };\n };\n };\n ;\n };\n J.prototype.get = function(a) {\n return this.entries[a];\n };\n var P = function(a) {\n return a(M, L, P);\n };\n P.Script = A;\n P.Module = B;\n P.Collection = G;\n P.Sequence = H;\n P.Definition = D;\n P.Dependency = z;\n P.noConflict = Q;\n P.debug = R;\n P.reset = S;\n a.loadrunner = P;\n a.using = M;\n a.provide = L;\n M.path = \"\";\n M.bundles = new J;\n M.matchers = [];\n M.matchers.add = function(a, b) {\n this.unshift([a,b,]);\n };\n M.matchers.add(/^(lr!)?[a-zA-Z0-9_\\/.-]+$/, function(a) {\n var b = new B(a.replace(/^lr!/, \"\"));\n return b;\n });\n M.matchers.add(/(^script!|\\.js$)/, function(a) {\n var b = new A(a.replace(/^script!/, \"\"));\n return b;\n });\n if (e) {\n M.path = ((((e.getAttribute(\"data-path\") || e.src.split(/loadrunner\\.js/)[0])) || \"\"));\n (((main = e.getAttribute(\"data-main\")) && M.apply(a, main.split(/\\s*,\\s*/)).then(function() {\n \n })));\n }\n ;\n ;\n })(this, JSBNG__document);\n (function(a) {\n loadrunner(function(b, c) {\n function e(a, b) {\n return new loadrunner.Definition(a, function(a) {\n a(b());\n });\n };\n ;\n var d;\n a.deferred = e;\n b.matchers.add(/(^script!|\\.js(!?)$)/, function(a) {\n var b = !!a.match(/!$/);\n a = a.replace(/!$/, \"\");\n if (d = loadrunner.Definition.provided[a]) {\n return d;\n }\n ;\n ;\n var c = new loadrunner.Script(a, b);\n ((b && c.start()));\n return c;\n });\n });\n })(this);\n (function(a) {\n loadrunner(function(b, c) {\n function d(a) {\n return Array.prototype.slice.call(a);\n };\n ;\n function f(a, b) {\n for (var c = 0, d; d = a[c]; c++) {\n if (((b == d))) {\n return c;\n }\n ;\n ;\n };\n ;\n return -1;\n };\n ;\n function g(a, b) {\n var c = ((b.id || \"\")), d = c.split(\"/\");\n d.pop();\n var e = a.split(\"/\"), f = !1;\n while (((((e[0] == \"..\")) && d.length))) {\n d.pop();\n e.shift();\n f = !0;\n };\n ;\n if (((e[0] == \".\"))) {\n e.shift();\n f = !0;\n }\n ;\n ;\n ((f && (e = d.concat(e))));\n return e.join(\"/\");\n };\n ;\n function i(a, b) {\n function d(a) {\n return loadrunner.Module.exports[g(a.replace(/^.+!/, \"\"), b)];\n };\n ;\n var c = [];\n for (var e = 0, f = a.length; ((e < f)); e++) {\n if (((a[e] == \"require\"))) {\n c.push(d);\n continue;\n }\n ;\n ;\n if (((a[e] == \"exports\"))) {\n b.exports = ((b.exports || {\n }));\n c.push(b.exports);\n continue;\n }\n ;\n ;\n if (((a[e] == \"module\"))) {\n c.push(b);\n continue;\n }\n ;\n ;\n c.push(d(a[e]));\n };\n ;\n return c;\n };\n ;\n function j() {\n var a = d(arguments), c = [], j, k;\n ((((typeof a[0] == \"string\")) && (j = a.shift())));\n ((e(a[0]) && (c = a.shift())));\n k = a.shift();\n var l = new loadrunner.Definition(j, function(a) {\n function l() {\n var b = i(d(c), j), e;\n ((((typeof k == \"function\")) ? e = k.apply(j, b) : e = k));\n ((((typeof e == \"undefined\")) && (e = j.exports)));\n a(e);\n };\n ;\n var e = [], j = this;\n for (var m = 0, n = c.length; ((m < n)); m++) {\n var o = c[m];\n ((((f([\"require\",\"exports\",\"module\",], o) == -1)) && e.push(g(o, j))));\n };\n ;\n ((((e.length > 0)) ? b.apply(this, e.concat(l)) : l()));\n });\n return l;\n };\n ;\n var e = ((Array.isArray || function(a) {\n return ((a.constructor == Array));\n }));\n a.define = j;\n });\n })(this);\n loadrunner(function(a, b, c, d) {\n function e(a) {\n this.id = this.path = a;\n };\n ;\n e.loaded = {\n };\n e.prototype = new c.Dependency;\n e.prototype.start = function() {\n if (e.loaded[this.path]) this.complete();\n else {\n e.loaded[this.path] = !0;\n this.load();\n }\n ;\n ;\n };\n e.prototype.load = function() {\n function j() {\n if ((($(f).length > 0))) {\n return i();\n }\n ;\n ;\n c += 1;\n ((((c < 200)) ? b = JSBNG__setTimeout(j, 50) : i()));\n };\n ;\n function k() {\n var d;\n try {\n d = !!a.sheet.cssRules;\n } catch (e) {\n c += 1;\n ((((c < 200)) ? b = JSBNG__setTimeout(k, 50) : i()));\n return;\n };\n ;\n i();\n };\n ;\n var a, b, c, d = JSBNG__document, e = this.path, f = ((((\"link[href=\\\"\" + e)) + \"\\\"]\")), g = $.browser;\n if ((($(f).length > 0))) {\n return this.complete();\n }\n ;\n ;\n var i = function() {\n JSBNG__clearTimeout(b);\n a.JSBNG__onload = a.JSBNG__onerror = null;\n this.complete();\n }.bind(this);\n if (((g.webkit || g.mozilla))) {\n c = 0;\n if (g.webkit) j();\n else {\n a = d.createElement(\"style\");\n a.innerHTML = ((((\"@import \\\"\" + e)) + \"\\\";\"));\n k(a);\n }\n ;\n ;\n }\n ;\n ;\n if (!a) {\n a = d.createElement(\"link\");\n a.setAttribute(\"rel\", \"stylesheet\");\n a.setAttribute(\"href\", e);\n a.setAttribute(\"charset\", \"utf-8\");\n }\n ;\n ;\n a.JSBNG__onload = a.JSBNG__onerror = i;\n ((d.head || d.getElementsByTagName(\"head\")[0])).appendChild(a);\n };\n a.matchers.add(/^css!/, function(a) {\n a = a.replace(/^css!/, \"\");\n return new e(a);\n });\n });\n using.aliases = {\n \"$jasmine.b28c2693f489d65bb33ece420c8a7abea6b777c2.js\": [\"test/core/clock_spec\",\"test/core/parameterize_spec\",\"test/fixtures/news_onebox\",\"test/fixtures/user_search\",\"test/fixtures/saved_searches_dropdown\",\"test/fixtures/advanced_search\",\"test/fixtures/trends_location_dialog_api\",\"test/fixtures/resend_password_help\",\"test/fixtures/own_profile_header\",\"test/fixtures/profile_image_upload_dialog\",\"test/fixtures/trends_api\",\"test/fixtures/discover_stories\",\"test/fixtures/user_onebox\",\"test/fixtures/tweet_export_dialog\",\"test/fixtures/user_actions_chatty\",\"test/fixtures/settings_design_page\",\"test/fixtures/media_onebox\",\"test/app/utils/image_spec\",\"test/app/utils/setup_polling_with_backoff_spec\",\"test/app/utils/params_spec\",\"test/app/utils/cookie_spec\",\"test/app/utils/ellipsis_spec\",\"test/app/utils/oauth_popup_spec\",\"test/app/utils/image_thumbnail_spec\",\"test/app/utils/third_party_application_spec\",\"test/app/utils/querystring_spec\",\"test/app/utils/request_logger_spec\",\"test/app/utils/with_event_params_spec\",\"test/app/utils/drag_drop_helper_spec\",\"test/app/utils/time_spec\",\"test/app/utils/image_resize_spec\",\"test/app/utils/html_text_spec\",\"test/app/utils/sandboxed_ajax_spec\",\"test/app/utils/auth_token_spec\",\"test/app/utils/chrome_spec\",\"test/app/utils/with_session_spec\",\"test/app/utils/string_spec\",\"test/app/utils/tweet_helper_spec\",\"test/app/utils/typeahead_helpers_spec\",\"test/app/utils/hide_or_show_divider_spec\",\"test/app/helpers/log_client_events_spec\",\"test/app/helpers/second_data_component\",\"test/app/helpers/global_after_each_spec\",\"test/app/helpers/test_component\",\"test/app/helpers/describe_component_spec\",\"test/app/helpers/extra_jquery_helpers_spec\",\"test/app/helpers/test_module\",\"test/app/helpers/describe_mixin_spec\",\"test/app/helpers/ajax_respond_with_spec\",\"test/app/helpers/test_scribing_component\",\"test/app/helpers/describe_component_with_data_components_spec\",\"test/app/helpers/describe_module_spec\",\"test/app/helpers/first_data_component\",\"test/app/helpers/test_mixin\",\"test/app/data/with_data_spec\",\"test/app/data/trends_scribe_spec\",\"test/app/data/resend_password_help_scribe_spec\",\"test/app/data/tweet_actions_spec\",\"test/app/data/permalink_scribe_spec\",\"test/app/data/activity_popup_scribe_spec\",\"test/app/data/login_verification_spec\",\"test/app/data/item_actions_scribe_spec\",\"test/app/data/resend_password_spec\",\"test/app/data/user_search_spec\",\"test/app/data/who_to_follow_scribe_spec\",\"test/app/data/url_resolver_spec\",\"test/app/data/oembed_scribe_spec\",\"test/app/data/promoted_logger_spec\",\"test/app/data/login_scribe_spec\",\"test/app/data/user_actions_scribe_spec\",\"test/app/data/facets_timeline_spec\",\"test/app/data/typeahead_scribe_spec\",\"test/app/data/saved_searches_spec\",\"test/app/data/geo_spec\",\"test/app/data/tweet_actions_scribe_spec\",\"test/app/data/scribing_context_spec\",\"test/app/data/prompt_mobile_app_scribe_spec\",\"test/app/data/settings_spec\",\"test/app/data/trends_spec\",\"test/app/data/tweet_translation_spec\",\"test/app/data/oembed_spec\",\"test/app/data/search_input_scribe_spec\",\"test/app/data/list_follow_card_spec\",\"test/app/data/notifications_spec\",\"test/app/data/tweet_box_scribe_spec\",\"test/app/data/conversations_spec\",\"test/app/data/embed_stats_scribe_spec\",\"test/app/data/search_assistance_scribe_spec\",\"test/app/data/activity_popup_spec\",\"test/app/data/with_widgets_spec\",\"test/app/data/list_members_dashboard_spec\",\"test/app/data/frontpage_scribe_spec\",\"test/app/data/ttft_navigation_spec\",\"test/app/data/share_via_email_dialog_data_spec\",\"test/app/data/contact_import_scribe_spec\",\"test/app/data/profile_popup_spec\",\"test/app/data/direct_messages_spec\",\"test/app/data/profile_canopy_scribe_spec\",\"test/app/data/form_scribe_spec\",\"test/app/data/with_conversation_metadata_spec\",\"test/app/data/simple_event_scribe_spec\",\"test/app/data/email_banner_spec\",\"test/app/data/timeline_spec\",\"test/app/data/user_info_spec\",\"test/app/data/with_interaction_data_scribe_spec\",\"test/app/data/dm_poll_spec\",\"test/app/data/profile_social_proof_scribe_spec\",\"test/app/data/async_profile_spec\",\"test/app/data/gallery_scribe_spec\",\"test/app/data/lists_spec\",\"test/app/data/tweet_spec\",\"test/app/data/with_scribe_spec\",\"test/app/data/user_search_scribe_spec\",\"test/app/data/follower_request_spec\",\"test/app/data/user_completion_module_scribe_spec\",\"test/app/data/temporary_password_spec\",\"test/app/data/profile_popup_scribe_spec\",\"test/app/data/archive_navigator_scribe_spec\",\"test/app/data/notification_listener_spec\",\"test/app/data/embed_scribe_spec\",\"test/app/data/signup_click_scribe_spec\",\"test/app/data/contact_import_spec\",\"test/app/data/with_card_metadata_spec\",\"test/app/data/onebox_scribe_spec\",\"test/app/data/media_settings_spec\",\"test/app/data/page_visibility_scribe_spec\",\"test/app/data/inline_edit_scribe_spec\",\"test/app/data/story_scribe_spec\",\"test/app/data/signup_data_spec\",\"test/app/data/user_spec\",\"test/app/data/media_timeline_spec\",\"test/app/data/direct_messages_scribe_spec\",\"test/app/data/navigation_spec\",\"test/app/data/with_auth_token_spec\",\"test/app/data/suggested_users_spec\",\"test/app/data/promptbird_spec\",\"test/app/data/signup_scribe_spec\",\"test/app/data/who_to_tweet_spec\",\"test/app/data/who_to_follow_spec\",\"test/app/data/media_thumbnails_scribe_spec\",\"test/app/ui/message_drawer_spec\",\"test/app/ui/color_picker_spec\",\"test/app/ui/with_forgot_password_spec\",\"test/app/ui/theme_preview_spec\",\"test/app/ui/search_query_source_spec\",\"test/app/ui/signin_dropdown_spec\",\"test/app/ui/tooltips_spec\",\"test/app/ui/user_search_spec\",\"test/app/ui/search_input_spec\",\"test/app/ui/with_focus_highlight_spec\",\"test/app/ui/with_inline_image_editing_spec\",\"test/app/ui/user_completion_module_spec\",\"test/app/ui/validating_fieldset_spec\",\"test/app/ui/alert_banner_to_message_drawer_spec\",\"test/app/ui/protected_verified_dialog_spec\",\"test/app/ui/with_item_actions_spec\",\"test/app/ui/oauth_revoker_spec\",\"test/app/ui/with_profile_stats_spec\",\"test/app/ui/with_timestamp_updating_spec\",\"test/app/ui/geo_deletion_spec\",\"test/app/ui/permalink_keyboard_support_spec\",\"test/app/ui/drag_state_spec\",\"test/app/ui/tweet_box_spec\",\"test/app/ui/with_story_clicks_spec\",\"test/app/ui/temporary_password_button_spec\",\"test/app/ui/with_loading_indicator_spec\",\"test/app/ui/navigation_links_spec\",\"test/app/ui/profile_image_monitor_dom_spec\",\"test/app/ui/image_uploader_spec\",\"test/app/ui/with_dialog_spec\",\"test/app/ui/with_upload_photo_affordance_spec\",\"test/app/ui/with_import_services_spec\",\"test/app/ui/hidden_descendants_spec\",\"test/app/ui/list_follow_card_spec\",\"test/app/ui/password_dialog_spec\",\"test/app/ui/keyboard_shortcuts_spec\",\"test/app/ui/infinite_scroll_watcher_spec\",\"test/app/ui/signup_call_out_spec\",\"test/app/ui/capped_file_upload_spec\",\"test/app/ui/list_members_dashboard_spec\",\"test/app/ui/alert_banner_spec\",\"test/app/ui/with_select_all_spec\",\"test/app/ui/password_match_pair_spec\",\"test/app/ui/password_spec\",\"test/app/ui/login_verification_confirmation_dialog_spec\",\"test/app/ui/settings_controls_spec\",\"test/app/ui/profile_popup_spec\",\"test/app/ui/aria_event_logger_spec\",\"test/app/ui/tweet_injector_spec\",\"test/app/ui/page_title_spec\",\"test/app/ui/page_visibility_spec\",\"test/app/ui/captcha_dialog_spec\",\"test/app/ui/with_discover_expando_spec\",\"test/app/ui/direct_message_link_handler_spec\",\"test/app/ui/with_dropdown_spec\",\"test/app/ui/facets_spec\",\"test/app/ui/inline_edit_spec\",\"test/app/ui/dashboard_tweetbox_spec\",\"test/app/ui/timezone_detector_spec\",\"test/app/ui/email_confirmation_spec\",\"test/app/ui/with_removable_stream_items_spec\",\"test/app/ui/cookie_warning_spec\",\"test/app/ui/inline_profile_editing_initializor_spec\",\"test/app/ui/with_stream_users_spec\",\"test/app/ui/geo_picker_spec\",\"test/app/ui/image_selector_spec\",\"test/app/ui/with_position_spec\",\"test/app/ui/with_user_actions_spec\",\"test/app/ui/email_field_highlight_spec\",\"test/app/ui/with_rich_editor_spec\",\"test/app/ui/theme_picker_spec\",\"test/app/ui/tweet_box_thumbnails_spec\",\"test/app/ui/with_rtl_tweet_box_spec\",\"test/app/ui/login_verification_form_spec\",\"test/app/ui/direct_message_dialog_spec\",\"test/app/ui/profile_image_monitor_spec\",\"test/app/ui/with_image_selection_spec\",\"test/app/ui/with_tweet_actions_spec\",\"test/app/ui/embed_stats_spec\",\"test/app/ui/with_tweet_translation_spec\",\"test/app/ui/search_dropdown_spec\",\"test/app/ui/new_tweet_button_spec\",\"test/app/ui/impression_cookies_spec\",\"test/app/ui/field_edit_warning_spec\",\"test/app/ui/profile_edit_param_spec\",\"test/app/ui/hidden_ancestors_spec\",\"test/app/ui/advanced_search_spec\",\"test/app/ui/with_click_outside_spec\",\"test/app/ui/discover_spec\",\"test/app/ui/design_spec\",\"test/app/ui/tweet_dialog_spec\",\"test/app/ui/with_inline_image_options_spec\",\"test/app/ui/global_nav_spec\",\"test/app/ui/navigation_spec\",\"test/app/ui/toolbar_spec\",\"test/app/ui/suggested_users_spec\",\"test/app/ui/promptbird_spec\",\"test/app/ui/deactivated_spec\",\"test/app/ui/with_conversation_actions_spec\",\"test/app/ui/who_to_tweet_spec\",\"test/app/ui/with_text_polling_spec\",\"test/app/ui/password_strength_spec\",\"test/app/ui/inline_profile_editing_spec\",\"test/app/ui/user_dropdown_spec\",\"test/app/ui/with_interaction_data_spec\",\"test/app/ui/with_password_strength_spec\",\"test/app/utils/image/image_loader_spec\",\"test/app/utils/crypto/aes_spec\",\"test/app/utils/storage/with_crypto_spec\",\"test/app/utils/storage/with_expiry_spec\",\"test/app/utils/storage/custom_spec\",\"test/app/utils/storage/core_spec\",\"test/app/data/feedback/feedback_spec\",\"test/app/data/typeahead/with_cache_spec\",\"test/app/data/typeahead/with_external_event_listeners_spec\",\"test/app/data/typeahead/context_helper_datasource_spec\",\"test/app/data/typeahead/typeahead_spec\",\"test/app/data/typeahead/saved_searches_datasource_spec\",\"test/app/data/typeahead/trend_locations_datasource_spec\",\"test/app/data/typeahead/topics_datasource_spec\",\"test/app/data/typeahead/recent_searches_datasource_spec\",\"test/app/data/typeahead/accounts_datasource_spec\",\"test/app/data/who_to_follow/web_personalized_proxy_spec\",\"test/app/data/who_to_follow/web_personalized_scribe_spec\",\"test/app/data/settings/facebook_proxy_spec\",\"test/app/data/settings/login_verification_test_run_spec\",\"test/app/data/welcome/intro_scribe_spec\",\"test/app/data/welcome/lifeline_scribe_spec\",\"test/app/data/welcome/welcome_cards_scribe_spec\",\"test/app/data/welcome/interests_picker_scribe_spec\",\"test/app/data/welcome/invitations_scribe_spec\",\"test/app/data/welcome/welcome_data_spec\",\"test/app/data/welcome/preview_stream_scribe_spec\",\"test/app/data/welcome/flow_nav_scribe_spec\",\"test/app/data/welcome/users_cards_spec\",\"test/app/data/mobile_gallery/download_links_scribe_spec\",\"test/app/data/mobile_gallery/send_download_link_spec\",\"test/app/data/trends/recent_locations_spec\",\"test/app/data/trends/location_dialog_spec\",\"test/app/ui/gallery/with_gallery_spec\",\"test/app/ui/gallery/grid_spec\",\"test/app/ui/gallery/gallery_spec\",\"test/app/ui/gallery/with_grid_spec\",\"test/app/ui/dialogs/temporary_password_dialog_spec\",\"test/app/ui/dialogs/delete_tweet_dialog_spec\",\"test/app/ui/dialogs/embed_tweet_spec\",\"test/app/ui/dialogs/block_user_dialog_spec\",\"test/app/ui/dialogs/profile_edit_error_dialog_spec\",\"test/app/ui/dialogs/promptbird_invite_contacts_dialog_spec\",\"test/app/ui/dialogs/sensitive_flag_confirmation_spec\",\"test/app/ui/dialogs/in_product_help_dialog_spec\",\"test/app/ui/dialogs/iph_search_result_dialog_spec\",\"test/app/ui/dialogs/activity_popup_spec\",\"test/app/ui/dialogs/goto_user_dialog_spec\",\"test/app/ui/dialogs/signin_or_signup_spec\",\"test/app/ui/dialogs/retweet_dialog_spec\",\"test/app/ui/dialogs/profile_confirm_image_delete_dialog_spec\",\"test/app/ui/dialogs/list_membership_dialog_spec\",\"test/app/ui/dialogs/list_operations_dialog_spec\",\"test/app/ui/dialogs/confirm_dialog_spec\",\"test/app/ui/dialogs/with_modal_tweet_spec\",\"test/app/ui/dialogs/tweet_export_dialog_spec\",\"test/app/ui/dialogs/profile_image_upload_dialog_spec\",\"test/app/ui/dialogs/confirm_email_dialog_spec\",\"test/app/ui/feedback/feedback_report_link_handler_spec\",\"test/app/ui/feedback/feedback_dialog_spec\",\"test/app/ui/search/related_queries_spec\",\"test/app/ui/search/user_onebox_spec\",\"test/app/ui/search/news_onebox_spec\",\"test/app/ui/search/archive_navigator_spec\",\"test/app/ui/search/media_onebox_spec\",\"test/app/ui/search/spelling_corrections_spec\",\"test/app/ui/typeahead/context_helpers_renderer_spec\",\"test/app/ui/typeahead/recent_searches_renderer_spec\",\"test/app/ui/typeahead/typeahead_input_spec\",\"test/app/ui/typeahead/saved_searches_renderer_spec\",\"test/app/ui/typeahead/accounts_renderer_spec\",\"test/app/ui/typeahead/trend_locations_renderer_spec\",\"test/app/ui/typeahead/typeahead_dropdown_spec\",\"test/app/ui/typeahead/topics_renderer_spec\",\"test/app/ui/vit/verification_step_spec\",\"test/app/ui/vit/mobile_topbar_spec\",\"test/app/ui/profile/canopy_spec\",\"test/app/ui/profile/head_spec\",\"test/app/ui/profile/social_proof_spec\",\"test/app/ui/account/resend_password_controls_spec\",\"test/app/ui/account/resend_password_help_controls_spec\",\"test/app/ui/expando/with_expanding_containers_spec\",\"test/app/ui/expando/expanding_tweets_spec\",\"test/app/ui/expando/with_expanding_social_activity_spec\",\"test/app/ui/expando/expando_helpers_spec\",\"test/app/ui/expando/close_all_button_spec\",\"test/app/ui/signup/with_signup_validation_spec\",\"test/app/ui/signup/suggestions_spec\",\"test/app/ui/signup/signup_form_spec\",\"test/app/ui/signup/stream_end_signup_module_spec\",\"test/app/ui/signup/with_captcha_spec\",\"test/app/ui/media/with_hidden_display_spec\",\"test/app/ui/media/with_legacy_media_spec\",\"test/app/ui/media/with_legacy_embeds_spec\",\"test/app/ui/media/with_flag_action_spec\",\"test/app/ui/media/media_thumbnails_spec\",\"test/app/ui/media/with_legacy_icons_spec\",\"test/app/ui/media/card_thumbnails_spec\",\"test/app/ui/signup_download/next_and_skip_buttons_spec\",\"test/app/ui/signup_download/us_phone_number_checker_spec\",\"test/app/ui/who_to_follow/import_services_spec\",\"test/app/ui/who_to_follow/web_personalized_settings_spec\",\"test/app/ui/who_to_follow/matched_contacts_list_spec\",\"test/app/ui/who_to_follow/with_unmatched_contacts_spec\",\"test/app/ui/who_to_follow/who_to_follow_dashboard_spec\",\"test/app/ui/who_to_follow/find_friends_spec\",\"test/app/ui/who_to_follow/invite_form_spec\",\"test/app/ui/who_to_follow/with_invite_messages_spec\",\"test/app/ui/who_to_follow/who_to_follow_timeline_spec\",\"test/app/ui/who_to_follow/with_user_recommendations_spec\",\"test/app/ui/who_to_follow/web_personalized_signup_spec\",\"test/app/ui/who_to_follow/with_invite_preview_spec\",\"test/app/ui/settings/facebook_iframe_height_adjuster_spec\",\"test/app/ui/settings/with_cropper_spec\",\"test/app/ui/settings/tweet_export_spec\",\"test/app/ui/settings/facebook_login_spec\",\"test/app/ui/settings/facebook_connect_spec\",\"test/app/ui/settings/sms_phone_create_form_spec\",\"test/app/ui/settings/tweet_export_download_spec\",\"test/app/ui/settings/notifications_spec\",\"test/app/ui/settings/widgets_configurator_spec\",\"test/app/ui/settings/device_verified_form_spec\",\"test/app/ui/settings/change_photo_spec\",\"test/app/ui/settings/facebook_spinner_spec\",\"test/app/ui/settings/facebook_connection_conflict_spec\",\"test/app/ui/settings/sms_phone_verify_form_spec\",\"test/app/ui/settings/facebook_connected_spec\",\"test/app/ui/settings/facebook_missing_permissions_spec\",\"test/app/ui/settings/widgets_spec\",\"test/app/ui/settings/facebook_mismatched_connection_spec\",\"test/app/ui/settings/login_verification_sms_check_spec\",\"test/app/ui/timelines/event_timeline_spec\",\"test/app/ui/timelines/with_cursor_pagination_spec\",\"test/app/ui/timelines/user_timeline_spec\",\"test/app/ui/timelines/universal_timeline_spec\",\"test/app/ui/timelines/with_keyboard_navigation_spec\",\"test/app/ui/timelines/with_story_pagination_spec\",\"test/app/ui/timelines/with_polling_spec\",\"test/app/ui/timelines/discover_timeline_spec\",\"test/app/ui/timelines/follower_request_timeline_spec\",\"test/app/ui/timelines/with_pinned_stream_items_spec\",\"test/app/ui/timelines/with_most_recent_story_pagination_spec\",\"test/app/ui/timelines/with_preserved_scroll_position_spec\",\"test/app/ui/timelines/with_tweet_pagination_spec\",\"test/app/ui/timelines/tweet_timeline_spec\",\"test/app/ui/timelines/with_activity_supplements_spec\",\"test/app/ui/welcome/interests_header_search_spec\",\"test/app/ui/welcome/intro_video_spec\",\"test/app/ui/welcome/import_services_cards_spec\",\"test/app/ui/welcome/lifeline_device_follow_dialog_spec\",\"test/app/ui/welcome/with_similarities_spec\",\"test/app/ui/welcome/invite_dialog_spec\",\"test/app/ui/welcome/learn_dashboard_spec\",\"test/app/ui/welcome/interests_category_flow_nav_spec\",\"test/app/ui/welcome/profile_flow_nav_spec\",\"test/app/ui/welcome/profile_form_spec\",\"test/app/ui/welcome/custom_interest_spec\",\"test/app/ui/welcome/with_nav_buttons_spec\",\"test/app/ui/welcome/with_interests_spec\",\"test/app/ui/welcome/interests_picker_spec\",\"test/app/ui/welcome/with_more_results_spec\",\"test/app/ui/welcome/with_welcome_search_spec\",\"test/app/ui/welcome/users_cards_spec\",\"test/app/ui/welcome/internal_link_disabler_spec\",\"test/app/ui/mobile_gallery/gallery_buttons_spec\",\"test/app/ui/forms/select_box_spec\",\"test/app/ui/forms/with_submit_disable_spec\",\"test/app/ui/forms/input_with_placeholder_spec\",\"test/app/ui/forms/mobile_gallery_email_form_spec\",\"test/app/ui/forms/form_value_modification_spec\",\"test/app/ui/forms/element_group_toggler_spec\",\"test/app/ui/trends/trends_spec\",\"test/app/ui/trends/trends_dialog_spec\",\"test/app/ui/banners/email_banner_spec\",\"test/app/ui/promptbird/with_invite_contacts_spec\",\"test/app/ui/promptbird/with_invite_contacts\",\"test/app/utils/storage/array/with_max_elements_spec\",\"test/app/utils/storage/array/with_array_spec\",\"test/app/utils/storage/array/with_unique_elements_spec\",\"test/app/ui/timelines/conversations/ancestor_timeline_spec\",\"test/app/ui/timelines/conversations/descendant_timeline_spec\",\"test/app/ui/trends/dialog/nearby_trends_spec\",\"test/app/ui/trends/dialog/with_location_info_spec\",\"test/app/ui/trends/dialog/recent_trends_spec\",\"test/app/ui/trends/dialog/location_search_spec\",\"test/app/ui/trends/dialog/location_dropdown_spec\",\"test/app/ui/trends/dialog/dialog_spec\",\"test/app/ui/trends/dialog/current_location_spec\",\"test/app/ui/trends/dialog/with_location_list_picker_spec\",\"app/data/welcome/preview_stream_scribe\",\"app/ui/welcome/with_nav_buttons\",\"app/ui/welcome/interests_category_flow_nav\",\"app/ui/welcome/with_similarities\",],\n \"$bundle/boot.2a31b60b327963d16b704386722149661e1cb6ea.js\": [\"app/data/geo\",\"app/data/tweet\",\"app/ui/tweet_dialog\",\"app/ui/new_tweet_button\",\"app/data/tweet_box_scribe\",\"lib/twitter-text\",\"app/ui/with_character_counter\",\"app/utils/with_event_params\",\"app/utils/caret\",\"app/ui/with_draft_tweets\",\"app/ui/with_text_polling\",\"app/ui/with_rtl_tweet_box\",\"app/ui/toolbar\",\"app/utils/tweet_helper\",\"app/utils/html_text\",\"app/ui/with_rich_editor\",\"app/ui/with_upload_photo_affordance\",\"$lib/jquery.swfobject.js\",\"app/utils/image\",\"app/utils/drag_drop_helper\",\"app/ui/with_drop_events\",\"app/ui/with_droppable_image\",\"app/ui/tweet_box\",\"app/utils/image_thumbnail\",\"app/ui/tweet_box_thumbnails\",\"app/utils/image_resize\",\"app/ui/with_image_selection\",\"app/ui/image_selector\",\"app/ui/typeahead/accounts_renderer\",\"app/ui/typeahead/saved_searches_renderer\",\"app/ui/typeahead/recent_searches_renderer\",\"app/ui/typeahead/topics_renderer\",\"app/ui/typeahead/trend_locations_renderer\",\"app/ui/typeahead/context_helpers_renderer\",\"app/utils/rtl_text\",\"app/ui/typeahead/typeahead_dropdown\",\"app/utils/event_support\",\"app/utils/string\",\"app/ui/typeahead/typeahead_input\",\"app/ui/with_click_outside\",\"app/ui/geo_picker\",\"app/ui/tweet_box_manager\",\"app/boot/tweet_boxes\",\"app/ui/user_dropdown\",\"app/ui/signin_dropdown\",\"app/ui/search_input\",\"app/utils/animate_window_scrolltop\",\"app/ui/global_nav\",\"app/ui/navigation_links\",\"app/data/search_input_scribe\",\"app/boot/top_bar\",\"app/ui/keyboard_shortcuts\",\"app/ui/dialogs/keyboard_shortcuts_dialog\",\"app/ui/dialogs/with_modal_tweet\",\"app/ui/dialogs/retweet_dialog\",\"app/ui/dialogs/delete_tweet_dialog\",\"app/ui/dialogs/block_user_dialog\",\"app/ui/dialogs/confirm_dialog\",\"app/ui/dialogs/confirm_email_dialog\",\"app/ui/dialogs/list_membership_dialog\",\"app/ui/dialogs/list_operations_dialog\",\"app/data/direct_messages\",\"app/data/direct_messages_scribe\",\"app/ui/direct_message_link_handler\",\"app/ui/with_timestamp_updating\",\"app/ui/direct_message_dialog\",\"app/boot/direct_messages\",\"app/data/profile_popup\",\"app/data/profile_popup_scribe\",\"app/ui/with_user_actions\",\"app/ui/with_item_actions\",\"app/ui/with_profile_stats\",\"app/ui/with_handle_overflow\",\"app/ui/profile_popup\",\"app/data/profile_edit_btn_scribe\",\"app/data/user\",\"app/data/lists\",\"app/boot/profile_popup\",\"app/data/typeahead/with_cache\",\"app/utils/typeahead_helpers\",\"app/data/with_datasource_helpers\",\"app/data/typeahead/accounts_datasource\",\"app/data/typeahead/saved_searches_datasource\",\"app/data/typeahead/recent_searches_datasource\",\"app/data/typeahead/with_external_event_listeners\",\"app/data/typeahead/topics_datasource\",\"app/data/typeahead/context_helper_datasource\",\"app/data/typeahead/trend_locations_datasource\",\"app/data/typeahead/typeahead\",\"app/data/typeahead_scribe\",\"app/ui/dialogs/goto_user_dialog\",\"app/utils/setup_polling_with_backoff\",\"app/ui/page_title\",\"app/ui/feedback/with_feedback_tweet\",\"app/ui/feedback/feedback_stories\",\"app/ui/feedback/with_feedback_discover\",\"app/ui/feedback/feedback_dialog\",\"app/ui/feedback/feedback_report_link_handler\",\"app/data/feedback/feedback\",\"app/ui/search_query_source\",\"app/ui/banners/email_banner\",\"app/data/email_banner\",\"app/ui/media/phoenix_shim\",\"app/utils/twt\",\"app/ui/media/types\",\"$lib/easyXDM.js\",\"app/utils/easy_xdm\",\"app/utils/sandboxed_ajax\",\"app/ui/media/with_legacy_icons\",\"app/utils/third_party_application\",\"app/ui/media/legacy_embed\",\"app/ui/media/with_legacy_embeds\",\"app/ui/media/with_flag_action\",\"app/ui/media/with_hidden_display\",\"app/ui/media/with_legacy_media\",\"app/utils/image/image_loader\",\"app/ui/with_tweet_actions\",\"app/ui/gallery/gallery\",\"app/data/gallery_scribe\",\"app/data/share_via_email_dialog_data\",\"app/ui/dialogs/share_via_email_dialog\",\"app/data/with_widgets\",\"app/ui/dialogs/embed_tweet\",\"app/data/embed_scribe\",\"app/data/oembed\",\"app/data/oembed_scribe\",\"app/ui/with_drag_events\",\"app/ui/drag_state\",\"app/data/notification_listener\",\"app/data/dm_poll\",\"app/boot/app\",],\n \"$bundle/frontpage.4fadf7a73f7269b9c27c826f2ebf9bed67255e74.js\": [\"app/data/frontpage_scribe\",\"app/ui/cookie_warning\",\"app/pages/frontpage\",\"app/data/login_scribe\",\"app/pages/login\",],\n \"$bundle/signup.990c69542ff942eb94bd30c41f9c7c6d04997ca3.js\": [\"app/ui/signup/with_captcha\",\"app/utils/common_regexp\",\"app/ui/signup/with_signup_validation\",\"app/ui/signup/signup_form\",\"app/ui/with_password_strength\",\"app/data/signup_data\",\"app/data/settings\",\"app/data/signup_scribe\",\"app/ui/signup/suggestions\",\"app/ui/signup/small_print_expander\",\"app/ui/signup_download/us_phone_number_checker\",\"app/pages/signup/signup\",],\n \"$bundle/timeline.b98b3cb4be7ab03238736d9d12f3be01e878d262.js\": [\"app/data/tweet_actions\",\"app/ui/expando/with_expanding_containers\",\"app/ui/expando/expando_helpers\",\"app/ui/gallery/with_gallery\",\"app/ui/with_tweet_translation\",\"app/ui/tweets\",\"app/ui/tweet_injector\",\"app/ui/expando/with_expanding_social_activity\",\"app/ui/expando/expanding_tweets\",\"app/ui/embed_stats\",\"app/data/url_resolver\",\"app/ui/media/with_native_media\",\"app/ui/media/media_tweets\",\"app/data/trends\",\"app/data/trends/location_dialog\",\"app/data/trends/recent_locations\",\"app/utils/scribe_event_initiators\",\"app/data/trends_scribe\",\"app/ui/trends/trends\",\"app/ui/trends/trends_dialog\",\"app/ui/trends/dialog/with_location_info\",\"app/ui/trends/dialog/location_dropdown\",\"app/ui/trends/dialog/location_search\",\"app/ui/trends/dialog/current_location\",\"app/ui/trends/dialog/with_location_list_picker\",\"app/ui/trends/dialog/nearby_trends\",\"app/ui/trends/dialog/recent_trends\",\"app/ui/trends/dialog/dialog\",\"app/boot/trends\",\"app/ui/infinite_scroll_watcher\",\"app/data/timeline\",\"app/boot/timeline\",\"app/data/activity_popup\",\"app/ui/dialogs/activity_popup\",\"app/data/activity_popup_scribe\",\"app/boot/activity_popup\",\"app/data/tweet_translation\",\"app/data/conversations\",\"app/data/media_settings\",\"app/ui/dialogs/sensitive_flag_confirmation\",\"app/ui/user_actions\",\"app/data/prompt_mobile_app_scribe\",\"app/boot/tweets\",\"app/boot/help_pips_enable\",\"app/data/help_pips\",\"app/data/help_pips_scribe\",\"app/ui/help_pip\",\"app/ui/help_pips_injector\",\"app/boot/help_pips\",\"app/ui/expando/close_all_button\",\"app/ui/timelines/with_keyboard_navigation\",\"app/ui/with_focus_highlight\",\"app/ui/timelines/with_base_timeline\",\"app/ui/timelines/with_old_items\",\"app/utils/chrome\",\"app/ui/timelines/with_traveling_ptw\",\"app/ui/timelines/with_autoplaying_timeline\",\"app/ui/timelines/with_polling\",\"app/ui/timelines/with_new_items\",\"app/ui/timelines/with_tweet_pagination\",\"app/ui/timelines/with_preserved_scroll_position\",\"app/ui/timelines/with_activity_supplements\",\"app/ui/with_conversation_actions\",\"app/ui/timelines/with_pinned_stream_items\",\"app/ui/timelines/tweet_timeline\",\"app/boot/tweet_timeline\",\"app/ui/user_completion_module\",\"app/data/user_completion_module_scribe\",\"app/boot/user_completion_module\",\"app/ui/who_to_follow/with_user_recommendations\",\"app/ui/who_to_follow/who_to_follow_dashboard\",\"app/ui/who_to_follow/who_to_follow_timeline\",\"app/data/who_to_follow\",\"app/data/who_to_follow_scribe\",\"app/ui/profile/recent_connections_module\",\"app/ui/promptbird/with_invite_contacts\",\"app/ui/promptbird\",\"app/utils/oauth_popup\",\"app/data/promptbird\",\"app/data/promptbird_scribe\",\"app/ui/with_select_all\",\"app/ui/who_to_follow/with_invite_messages\",\"app/ui/who_to_follow/with_invite_preview\",\"app/ui/who_to_follow/with_unmatched_contacts\",\"app/ui/dialogs/promptbird_invite_contacts_dialog\",\"app/data/contact_import\",\"app/data/contact_import_scribe\",\"app/ui/with_import_services\",\"app/ui/who_to_follow/import_services\",\"app/ui/who_to_follow/import_loading_dialog\",\"app/ui/dashboard_tweetbox\",\"app/utils/boomerang\",\"app/ui/profile_stats\",\"app/pages/home\",\"app/boot/wtf_module\",\"app/data/who_to_tweet\",\"app/boot/connect\",\"app/ui/who_to_follow/with_list_resizing\",\"app/ui/who_to_follow/matched_contacts_list\",\"app/ui/who_to_follow/unmatched_contacts_list\",\"app/ui/who_to_tweet\",\"app/ui/with_loading_indicator\",\"app/ui/who_to_follow/find_friends\",\"app/pages/connect/interactions\",\"app/pages/connect/mentions\",\"app/pages/connect/network_activity\",\"app/ui/inline_edit\",\"app/data/async_profile\",\"$lib/jquery_ui.profile.js\",\"$lib/jquery_webcam.js\",\"app/ui/settings/with_cropper\",\"app/ui/settings/with_webcam\",\"app/utils/is_showing_avatar_options\",\"app/ui/dialogs/profile_image_upload_dialog\",\"app/ui/dialogs/profile_edit_error_dialog\",\"app/ui/dialogs/profile_confirm_image_delete_dialog\",\"app/ui/droppable_image\",\"app/ui/profile_image_monitor\",\"app/data/inline_edit_scribe\",\"app/data/settings/profile_image_upload_scribe\",\"app/data/drag_and_drop_scribe\",\"app/ui/settings/change_photo\",\"app/ui/image_uploader\",\"app/ui/inline_profile_editing_initializor\",\"app/utils/hide_or_show_divider\",\"app/ui/with_inline_image_options\",\"app/ui/with_inline_image_editing\",\"app/ui/inline_profile_editing\",\"app/data/settings\",\"app/ui/profile_edit_param\",\"app/ui/alert_banner_to_message_drawer\",\"app/boot/inline_edit\",\"app/ui/profile/canopy\",\"app/data/profile_canopy_scribe\",\"app/ui/profile/head\",\"app/data/profile_head_scribe\",\"app/ui/profile/social_proof\",\"app/data/profile_social_proof_scribe\",\"app/ui/media/card_thumbnails\",\"app/data/media_timeline\",\"app/data/media_thumbnails_scribe\",\"app/ui/suggested_users\",\"app/data/suggested_users\",\"app/ui/gallery/grid\",\"app/boot/profile\",\"app/pages/profile/tweets\",\"app/ui/timelines/with_cursor_pagination\",\"app/ui/with_stream_users\",\"app/ui/timelines/user_timeline\",\"app/boot/user_timeline\",\"app/ui/timelines/follower_request_timeline\",\"app/data/follower_request\",\"app/pages/profile/follower_requests\",\"app/pages/profile/followers\",\"app/pages/profile/following\",\"app/pages/profile/favorites\",\"app/ui/timelines/list_timeline\",\"app/boot/list_timeline\",\"app/pages/profile/lists\",\"app/ui/with_removable_stream_items\",\"app/ui/similar_to\",\"app/pages/profile/similar_to\",\"app/ui/facets\",\"app/data/facets_timeline\",\"app/ui/dialogs/iph_search_result_dialog\",\"app/ui/search/archive_navigator\",\"app/data/archive_navigator_scribe\",\"app/boot/search\",\"app/ui/timelines/with_story_pagination\",\"app/ui/gallery/with_grid\",\"app/ui/timelines/universal_timeline\",\"app/boot/universal_timeline\",\"app/data/user_search\",\"app/data/user_search_scribe\",\"app/ui/user_search\",\"app/data/saved_searches\",\"app/ui/search_dropdown\",\"app/data/story_scribe\",\"app/data/onebox_scribe\",\"app/ui/with_story_clicks\",\"$lib/jquery_autoellipsis.js\",\"app/utils/ellipsis\",\"app/ui/with_story_ellipsis\",\"app/ui/search/news_onebox\",\"app/ui/search/user_onebox\",\"app/ui/search/event_onebox\",\"app/ui/search/media_onebox\",\"app/ui/search/spelling_corrections\",\"app/ui/search/related_queries\",\"app/data/search_assistance_scribe\",\"app/data/timeline_controls_scribe\",\"app/pages/search/search\",\"app/ui/timelines/with_search_media_pagination\",\"app/ui/timelines/media_timeline\",\"app/boot/media_timeline\",\"app/pages/search/media\",\"app/pages/simple_t1\",],\n \"$bundle/permalink.db92252904761daedf68bf11bbb2750235e32ce7.js\": [\"app/ui/permalink_keyboard_support\",\"app/ui/hidden_ancestors\",\"app/ui/hidden_descendants\",\"app/ui/dialogs/sms_codes\",\"app/ui/timelines/conversations/descendant_timeline\",\"app/ui/timelines/conversations/ancestor_timeline\",\"app/data/embed_stats_scribe\",\"app/data/permalink_scribe\",\"app/pages/permalink\",\"app/pages/permalink_photo\",],\n \"$bundle/lists_permalink.6e3de5369fc1b6a20122d38d988602ec8ea6a3e1.js\": [\"app/ui/list_members_dashboard\",\"app/data/list_members_dashboard\",\"app/ui/list_follow_card\",\"app/data/list_follow_card\",\"app/boot/list_permalink\",\"app/pages/list/permalink_tweets\",\"app/pages/list/permalink_users\",],\n \"$bundle/discover.814fb8dadcc0776c9fc9424643d16957d677e3c2.js\": [\"app/ui/discover_nav\",\"app/boot/discover\",\"app/ui/timelines/with_most_recent_story_pagination\",\"app/ui/timelines/discover_timeline\",\"app/boot/discover_timeline\",\"app/ui/with_discover_expando\",\"app/ui/discover\",\"app/pages/discover/discover\",\"app/ui/people_search_input\",\"app/boot/who_to_follow\",\"app/utils/common_regexp\",\"app/ui/who_to_follow/invite_form\",\"app/ui/who_to_follow/pymk_kicker\",\"app/ui/who_to_follow/wipe_addressbook_dialog\",\"app/pages/who_to_follow/import\",\"app/pages/who_to_follow/interests\",\"app/pages/who_to_follow/invite\",\"app/pages/who_to_follow/lifeline\",\"app/pages/who_to_follow/matches\",\"app/pages/who_to_follow/suggestions\",\"app/data/who_to_follow/web_personalized_scribe\",\"app/data/who_to_follow/web_personalized_proxy\",\"app/ui/who_to_follow/web_personalized_settings\",\"app/ui/who_to_follow/web_personalized_signup\",\"app/pages/who_to_follow/web_personalized\",],\n \"$bundle/settings.746ec42b535d98004e7c1b839e01418210fb34ed.js\": [\"app/ui/alert_banner\",\"app/ui/forms/with_submit_disable\",\"app/ui/forms/form_value_modification\",\"app/boot/settings\",\"app/data/settings/account_scribe\",\"app/data/settings/login_verification_test_run\",\"app/data/form_scribe\",\"app/ui/with_forgot_password\",\"app/ui/password_dialog\",\"app/ui/settings/login_verification_sms_check\",\"app/ui/login_verification_confirmation_dialog\",\"app/ui/protected_verified_dialog\",\"app/ui/email_field_highlight\",\"app/ui/validating_fieldset\",\"app/ui/email_confirmation\",\"app/ui/settings/tweet_export\",\"app/ui/dialogs/tweet_export_dialog\",\"app/ui/timezone_detector\",\"app/ui/deactivated\",\"app/ui/geo_deletion\",\"app/ui/settings_controls\",\"app/pages/settings/account\",\"app/data/temporary_password\",\"app/data/settings/applications_scribe\",\"app/ui/dialogs/temporary_password_dialog\",\"app/ui/temporary_password_button\",\"app/ui/oauth_revoker\",\"app/pages/settings/applications\",\"app/data/settings/confirm_deactivation_scribe\",\"app/pages/settings/confirm_deactivation\",\"app/data/settings/design_scribe\",\"$lib/jquery_color_picker.js\",\"app/ui/color_picker\",\"app/ui/design\",\"app/ui/theme_preview\",\"app/ui/theme_picker\",\"app/pages/settings/design\",\"app/pages/settings/email_follow\",\"app/ui/settings/tweet_export_download\",\"app/pages/settings/tweet_export_download\",\"app/ui/settings/notifications\",\"app/pages/settings/notifications\",\"app/ui/password\",\"app/ui/password_match_pair\",\"app/ui/with_password_strength\",\"app/ui/password_strength\",\"app/pages/settings/password\",\"app/boot/avatar_uploading\",\"app/data/settings/profile_scribe\",\"app/ui/settings/facebook_iframe_height_adjuster\",\"app/ui/field_edit_warning\",\"app/ui/dialogs/in_product_help_dialog\",\"app/boot/header_upload\",\"app/ui/bio_box\",\"app/pages/settings/profile\",\"app/data/settings/facebook_proxy\",\"app/ui/settings/with_facebook_container\",\"app/ui/settings/facebook_spinner\",\"app/ui/settings/with_facebook_banner\",\"app/ui/settings/facebook_login\",\"app/ui/settings/facebook_connect\",\"app/ui/settings/facebook_missing_permissions\",\"app/ui/settings/facebook_mismatched_connection\",\"app/ui/settings/facebook_connection_conflict\",\"app/ui/settings/facebook_connected\",\"app/data/settings/facebook_scribe\",\"app/pages/settings/facebook\",\"app/data/settings/sms_scribe\",\"app/ui/forms/select_box\",\"app/ui/settings/sms_phone_create_form\",\"app/ui/forms/element_group_toggler\",\"app/ui/settings/device_verified_form\",\"app/ui/settings/sms_phone_verify_form\",\"app/pages/settings/sms\",\"app/ui/settings/widgets\",\"app/pages/settings/widgets\",\"app/ui/settings/widgets_configurator\",\"app/pages/settings/widgets_configurator\",],\n \"$bundle/events.d9845cf638173afdb25220e5ab241f0f6c09021a.js\": [\"app/ui/media/media_thumbnails\",\"app/ui/timelines/event_timeline\",\"app/ui/page_visibility\",\"app/data/page_visibility_scribe\",\"app/pages/events/hashtag\",],\n \"$bundle/accounts.0ca4815a3944f19c9eaeef0c85bf7984b25d3632.js\": [\"app/ui/account/password_reset_controls\",\"app/ui/password_match_pair\",\"app/ui/with_password_strength\",\"app/ui/password_strength\",\"app/pages/account/password_reset\",\"app/ui/captcha_dialog\",\"app/ui/account/resend_password_controls\",\"app/ui/validating_fieldset\",\"app/data/resend_password\",\"app/pages/account/resend_password\",\"app/ui/account/verify_personal_information_controls\",\"app/pages/account/verify_personal_information\",\"app/ui/account/verify_device_token_controls\",\"app/pages/account/verify_device_token\",\"app/ui/account/resend_password_help_controls\",\"app/data/resend_password_help\",\"app/data/resend_password_help_scribe\",\"app/pages/account/resend_password_help\",\"app/pages/account/errors\",],\n \"$bundle/search.b7757a9e20dfb014aacc3cd4959de0a8058f4006.js\": [\"app/ui/dialogs/search_operators_dialog\",\"app/pages/search/home\",\"app/ui/advanced_search\",\"app/pages/search/advanced\",\"app/pages/search/users\",],\n \"$bundle/vitonboarding.bc3a6ee0b7d3407a82a383148a420a678f6925af.js\": [\"$lib/jquery.hashchange.js\",\"app/ui/vit/verification_step\",\"app/ui/vit/mobile_topbar\",\"app/pages/vit/onboarding\",],\n \"$bundle/mobile_gallery.db430b6898f0144b313838368d3e6edcee89eb6f.js\": [\"app/ui/dialogs/mobile_gallery_download_dialog\",\"app/ui/mobile_gallery/gallery_buttons\",\"app/ui/forms/mobile_gallery_email_form\",\"app/data/mobile_gallery/send_download_link\",\"app/pages/mobile_gallery/gallery\",\"app/pages/mobile_gallery/apps\",\"app/ui/mobile_gallery/firefox_tweet_button\",\"app/pages/mobile_gallery/firefox\",\"app/data/mobile_gallery/download_links_scribe\",\"app/pages/mobile_gallery/splash\",],\n \"$bundle/signup_download.8c964a5fd99e25aca3f0844968e0379e4a42ed59.js\": [\"app/ui/signup_download/next_and_skip_buttons\",\"app/ui/signup_download/us_phone_number_checker\",\"app/pages/signup_download/download\",\"app/ui/signup_download/signup_phone_verify_form\",\"app/pages/signup_download/verify\",],\n \"$bundle/welcome.0a6e0a3608c754e79a2a771e71faf0945c0627ad.js\": [\"app/data/welcome/invitations_scribe\",\"app/data/welcome/welcome_cards_scribe\",\"app/data/welcome/flow_nav_scribe\",\"app/data/welcome/preview_stream\",\"app/ui/welcome/invite_dialog\",\"app/ui/welcome/with_nav_buttons\",\"app/ui/welcome/header_progress\",\"app/ui/welcome/internal_link_disabler\",\"app/ui/welcome/learn_dashboard\",\"app/ui/welcome/learn_preview_timeline\",\"app/boot/welcome\",\"app/pages/welcome/import\",\"app/data/welcome/intro_scribe\",\"app/ui/welcome/flow_nav\",\"app/ui/welcome/intro_video\",\"app/ui/welcome/lifeline_device_follow_dialog\",\"app/pages/welcome/intro\",\"app/data/welcome/interests_picker_scribe\",\"app/ui/welcome/with_interests\",\"app/ui/welcome/custom_interest\",\"app/ui/welcome/interests_header_search\",\"app/ui/welcome/interests_picker\",\"app/data/welcome/welcome_data\",\"app/pages/welcome/interests\",\"app/data/welcome/users_cards\",\"app/ui/welcome/import_services_cards\",\"app/ui/welcome/with_card_scribe_context\",\"app/ui/welcome/with_more_results\",\"app/ui/welcome/with_welcome_search\",\"app/ui/welcome/users_cards\",\"app/pages/welcome/interests_category\",\"app/data/welcome/lifeline_scribe\",\"app/pages/welcome/lifeline\",\"app/boot/avatar_uploading\",\"app/ui/alert_banner\",\"app/ui/welcome/profile_flow_nav\",\"app/ui/welcome/profile_form\",\"app/pages/welcome/profile\",\"app/pages/welcome/recommendations\",],\n \"$bundle/directory.5bb8717366f875004b902864cc429411910c67f8.js\": [\"app/ui/history_back\",\"app/pages/directory/directory\",],\n \"$bundle/boomerang.ce977240704bc785401822f8d5486667b860593d.js\": [\"$lib/boomerang.js\",\"app/utils/boomerang_lib\",],\n \"$bundle/sandbox.1a1d8d9e5b807e92548fba6d79824ebe5104b03a.js\": [\"$components/jquery/jquery.js\",\"$lib/easyXDM.js\",\"app/boot/sandbox\",],\n \"$bundle/html2canvas.82a64ea2711e964e829140881de78438319774a0.js\": [\"$lib/html2canvas.js\",],\n \"$bundle/loginverification.c610b4269b6c7632a1176cc616d0766fdfdcef42.js\": [\"app/ui/login_verification_form\",\"app/data/login_verification\",\"app/pages/login_verification_page\",]\n };\n define(\"components/flight/lib/utils\", [], function() {\n var a = [], b = 100, c = {\n isDomObj: function(a) {\n return ((!!a.nodeType || ((a === window))));\n },\n toArray: function(b, c) {\n return a.slice.call(b, c);\n },\n merge: function() {\n var a = arguments.length, b = 0, c = new Array(((a + 1)));\n for (; ((b < a)); b++) {\n c[((b + 1))] = arguments[b];\n ;\n };\n ;\n return ((((a === 0)) ? {\n } : (c[0] = {\n }, ((((c[((c.length - 1))] === !0)) && (c.pop(), c.unshift(!0)))), $.extend.apply(undefined, c))));\n },\n push: function(a, b, c) {\n return ((a && Object.keys(((b || {\n }))).forEach(function(d) {\n if (((a[d] && c))) {\n throw Error(((((\"utils.push attempted to overwrite '\" + d)) + \"' while running in protected mode\")));\n }\n ;\n ;\n ((((((typeof a[d] == \"object\")) && ((typeof b[d] == \"object\")))) ? this.push(a[d], b[d]) : a[d] = b[d]));\n }, this))), a;\n },\n isEnumerable: function(a, b) {\n return ((Object.keys(a).indexOf(b) > -1));\n },\n compose: function() {\n var a = arguments;\n return function() {\n var b = arguments;\n for (var c = ((a.length - 1)); ((c >= 0)); c--) {\n b = [a[c].apply(this, b),];\n ;\n };\n ;\n return b[0];\n };\n },\n uniqueArray: function(a) {\n var b = {\n }, c = [];\n for (var d = 0, e = a.length; ((d < e)); ++d) {\n if (b.hasOwnProperty(a[d])) {\n continue;\n }\n ;\n ;\n c.push(a[d]), b[a[d]] = 1;\n };\n ;\n return c;\n },\n debounce: function(a, c, d) {\n ((((typeof c != \"number\")) && (c = b)));\n var e, f;\n return function() {\n var b = this, g = arguments, h = function() {\n e = null, ((d || (f = a.apply(b, g))));\n }, i = ((d && !e));\n return JSBNG__clearTimeout(e), e = JSBNG__setTimeout(h, c), ((i && (f = a.apply(b, g)))), f;\n };\n },\n throttle: function(a, c) {\n ((((typeof c != \"number\")) && (c = b)));\n var d, e, f, g, h, i, j = this.debounce(function() {\n h = g = !1;\n }, c);\n return function() {\n d = this, e = arguments;\n var b = function() {\n f = null, ((h && (i = a.apply(d, e)))), j();\n };\n return ((f || (f = JSBNG__setTimeout(b, c)))), ((g ? h = !0 : (g = !0, i = a.apply(d, e)))), j(), i;\n };\n },\n countThen: function(a, b) {\n return function() {\n if (!--a) {\n return b.apply(this, arguments);\n }\n ;\n ;\n };\n },\n delegate: function(a) {\n return function(b, c) {\n var d = $(b.target), e;\n Object.keys(a).forEach(function(f) {\n if ((e = d.closest(f)).length) {\n return c = ((c || {\n })), c.el = e[0], a[f].apply(this, [b,c,]);\n }\n ;\n ;\n }, this);\n };\n }\n };\n return c;\n });\n define(\"components/flight/lib/registry\", [\"./utils\",], function(a) {\n function b(a, b) {\n var c, d, e, f = b.length;\n return ((((typeof b[((f - 1))] == \"function\")) && (f -= 1, e = b[f]))), ((((typeof b[((f - 1))] == \"object\")) && (f -= 1))), ((((f == 2)) ? (c = b[0], d = b[1]) : (c = a.node, d = b[0]))), {\n element: c,\n type: d,\n callback: e\n };\n };\n ;\n function c(a, b) {\n return ((((((a.element == b.element)) && ((a.type == b.type)))) && ((((b.callback == null)) || ((a.callback == b.callback))))));\n };\n ;\n function d() {\n function d(b) {\n this.component = b, this.attachedTo = [], this.instances = {\n }, this.addInstance = function(a) {\n var b = new e(a);\n return this.instances[a.identity] = b, this.attachedTo.push(a.node), b;\n }, this.removeInstance = function(b) {\n delete this.instances[b.identity];\n var c = this.attachedTo.indexOf(b.node);\n ((((c > -1)) && this.attachedTo.splice(c, 1))), ((Object.keys(this.instances).length || a.removeComponentInfo(this)));\n }, this.isAttachedTo = function(a) {\n return ((this.attachedTo.indexOf(a) > -1));\n };\n };\n ;\n function e(b) {\n this.instance = b, this.events = [], this.addBind = function(b) {\n this.events.push(b), a.events.push(b);\n }, this.removeBind = function(a) {\n for (var b = 0, d; d = this.events[b]; b++) {\n ((c(d, a) && this.events.splice(b, 1)));\n ;\n };\n ;\n };\n };\n ;\n var a = this;\n (this.reset = function() {\n this.components = [], this.allInstances = {\n }, this.events = [];\n }).call(this), this.addInstance = function(a) {\n var b = this.findComponentInfo(a);\n ((b || (b = new d(a.constructor), this.components.push(b))));\n var c = b.addInstance(a);\n return this.allInstances[a.identity] = c, b;\n }, this.removeInstance = function(a) {\n var b, c = this.findInstanceInfo(a), d = this.findComponentInfo(a);\n ((d && d.removeInstance(a))), delete this.allInstances[a.identity];\n }, this.removeComponentInfo = function(a) {\n var b = this.components.indexOf(a);\n ((((b > -1)) && this.components.splice(b, 1)));\n }, this.findComponentInfo = function(a) {\n var b = ((a.attachTo ? a : a.constructor));\n for (var c = 0, d; d = this.components[c]; c++) {\n if (((d.component === b))) {\n return d;\n }\n ;\n ;\n };\n ;\n return null;\n }, this.findInstanceInfo = function(a) {\n return ((this.allInstances[a.identity] || null));\n }, this.findInstanceInfoByNode = function(a) {\n var b = [];\n return Object.keys(this.allInstances).forEach(function(c) {\n var d = this.allInstances[c];\n ((((d.instance.node === a)) && b.push(d)));\n }, this), b;\n }, this.JSBNG__on = function(c) {\n var d = a.findInstanceInfo(this), e, f = arguments.length, g = 1, h = new Array(((f - 1)));\n for (; ((g < f)); g++) {\n h[((g - 1))] = arguments[g];\n ;\n };\n ;\n if (d) {\n e = c.apply(null, h), ((e && (h[((h.length - 1))] = e)));\n var i = b(this, h);\n d.addBind(i);\n }\n ;\n ;\n }, this.off = function(d, e, f) {\n var g = b(this, arguments), h = a.findInstanceInfo(this);\n ((h && h.removeBind(g)));\n for (var i = 0, j; j = a.events[i]; i++) {\n ((c(j, g) && a.events.splice(i, 1)));\n ;\n };\n ;\n }, a.trigger = new Function, this.teardown = function() {\n a.removeInstance(this);\n }, this.withRegistration = function() {\n this.before(\"initialize\", function() {\n a.addInstance(this);\n }), this.around(\"JSBNG__on\", a.JSBNG__on), this.after(\"off\", a.off), ((((window.DEBUG && DEBUG.enabled)) && this.after(\"trigger\", a.trigger))), this.after(\"teardown\", {\n obj: a,\n fnName: \"teardown\"\n });\n };\n };\n ;\n return new d;\n });\n define(\"components/flight/tools/debug/debug\", [\"../../lib/registry\",\"../../lib/utils\",], function(a, b) {\n function d(a, b, c) {\n var c = ((c || {\n })), e = ((c.obj || window)), g = ((c.path || ((((e == window)) ? \"window\" : \"\")))), h = Object.keys(e);\n h.forEach(function(c) {\n ((((f[a] || a))(b, e, c) && JSBNG__console.log([g,\".\",c,].join(\"\"), \"-\\u003E\", [\"(\",typeof e[c],\")\",].join(\"\"), e[c]))), ((((((((Object.prototype.toString.call(e[c]) == \"[object Object]\")) && ((e[c] != e)))) && ((g.split(\".\").indexOf(c) == -1)))) && d(a, b, {\n obj: e[c],\n path: [g,c,].join(\".\")\n })));\n });\n };\n ;\n function e(a, b, c, e) {\n ((((!b || ((typeof c == b)))) ? d(a, c, e) : JSBNG__console.error([c,\"must be\",b,].join(\" \"))));\n };\n ;\n function g(a, b) {\n e(\"JSBNG__name\", \"string\", a, b);\n };\n ;\n function h(a, b) {\n e(\"nameContains\", \"string\", a, b);\n };\n ;\n function i(a, b) {\n e(\"type\", \"function\", a, b);\n };\n ;\n function j(a, b) {\n e(\"value\", null, a, b);\n };\n ;\n function k(a, b) {\n e(\"valueCoerced\", null, a, b);\n };\n ;\n function l(a, b) {\n d(a, null, b);\n };\n ;\n function p() {\n var a = [].slice.call(arguments);\n ((c.eventNames.length || (c.eventNames = m))), c.actions = ((a.length ? a : m)), t();\n };\n ;\n function q() {\n var a = [].slice.call(arguments);\n ((c.actions.length || (c.actions = m))), c.eventNames = ((a.length ? a : m)), t();\n };\n ;\n function r() {\n c.actions = [], c.eventNames = [], t();\n };\n ;\n function s() {\n c.actions = m, c.eventNames = m, t();\n };\n ;\n function t() {\n ((window.JSBNG__localStorage && (JSBNG__localStorage.setItem(\"logFilter_eventNames\", c.eventNames), JSBNG__localStorage.setItem(\"logFilter_actions\", c.actions))));\n };\n ;\n function u() {\n var a = {\n eventNames: ((((window.JSBNG__localStorage && JSBNG__localStorage.getItem(\"logFilter_eventNames\"))) || n)),\n actions: ((((window.JSBNG__localStorage && JSBNG__localStorage.getItem(\"logFilter_actions\"))) || o))\n };\n return Object.keys(a).forEach(function(b) {\n var c = a[b];\n ((((((typeof c == \"string\")) && ((c !== m)))) && (a[b] = c.split(\",\"))));\n }), a;\n };\n ;\n var c, f = {\n JSBNG__name: function(a, b, c) {\n return ((a == c));\n },\n nameContains: function(a, b, c) {\n return ((c.indexOf(a) > -1));\n },\n type: function(a, b, c) {\n return ((b[c] instanceof a));\n },\n value: function(a, b, c) {\n return ((b[c] === a));\n },\n valueCoerced: function(a, b, c) {\n return ((b[c] == a));\n }\n }, m = \"all\", n = [], o = [], c = u();\n return {\n enable: function(a) {\n this.enabled = !!a, ((((a && window.JSBNG__console)) && (JSBNG__console.info(\"Booting in DEBUG mode\"), JSBNG__console.info(\"You can configure event logging with DEBUG.events.logAll()/logNone()/logByName()/logByAction()\")))), window.DEBUG = this;\n },\n JSBNG__find: {\n byName: g,\n byNameContains: h,\n byType: i,\n byValue: j,\n byValueCoerced: k,\n custom: l\n },\n events: {\n logFilter: c,\n logByAction: p,\n logByName: q,\n logAll: s,\n logNone: r\n }\n };\n });\n define(\"components/flight/lib/compose\", [\"./utils\",\"../tools/debug/debug\",], function(a, b) {\n function f(a, b) {\n if (!c) {\n return;\n }\n ;\n ;\n var e = Object.create(null);\n Object.keys(a).forEach(function(c) {\n if (((d.indexOf(c) < 0))) {\n var f = Object.getOwnPropertyDescriptor(a, c);\n f.writable = b, e[c] = f;\n }\n ;\n ;\n }), Object.defineProperties(a, e);\n };\n ;\n function g(a, b, d) {\n var e;\n if (((!c || !a.hasOwnProperty(b)))) {\n d.call(a);\n return;\n }\n ;\n ;\n e = Object.getOwnPropertyDescriptor(a, b).writable, Object.defineProperty(a, b, {\n writable: !0\n }), d.call(a), Object.defineProperty(a, b, {\n writable: e\n });\n };\n ;\n function h(a, b) {\n a.mixedIn = ((a.hasOwnProperty(\"mixedIn\") ? a.mixedIn : [])), b.forEach(function(b) {\n ((((a.mixedIn.indexOf(b) == -1)) && (f(a, !1), b.call(a), a.mixedIn.push(b))));\n }), f(a, !0);\n };\n ;\n var c = ((b.enabled && !a.isEnumerable(Object, \"getOwnPropertyDescriptor\"))), d = [\"mixedIn\",];\n if (c) {\n try {\n Object.getOwnPropertyDescriptor(Object, \"keys\");\n } catch (e) {\n c = !1;\n };\n }\n ;\n ;\n return {\n mixin: h,\n unlockProperty: g\n };\n });\n define(\"components/flight/lib/advice\", [\"./utils\",\"./compose\",], function(a, b) {\n var c = {\n around: function(a, b) {\n return function() {\n var d = 0, e = arguments.length, f = new Array(((e + 1)));\n f[0] = a.bind(this);\n for (; ((d < e)); d++) {\n f[((d + 1))] = arguments[d];\n ;\n };\n ;\n return b.apply(this, f);\n };\n },\n before: function(a, b) {\n var c = ((((typeof b == \"function\")) ? b : b.obj[b.fnName]));\n return function() {\n return c.apply(this, arguments), a.apply(this, arguments);\n };\n },\n after: function(a, b) {\n var c = ((((typeof b == \"function\")) ? b : b.obj[b.fnName]));\n return function() {\n var d = ((a.unbound || a)).apply(this, arguments);\n return c.apply(this, arguments), d;\n };\n },\n withAdvice: function() {\n [\"before\",\"after\",\"around\",].forEach(function(a) {\n this[a] = function(d, e) {\n b.unlockProperty(this, d, function() {\n return ((((typeof this[d] == \"function\")) ? this[d] = c[a](this[d], e) : this[d] = e));\n });\n };\n }, this);\n }\n };\n return c;\n });\n define(\"components/flight/lib/logger\", [\"./compose\",\"./utils\",], function(a, b) {\n function d(a) {\n var b = ((a.tagName ? a.tagName.toLowerCase() : a.toString())), c = ((a.className ? ((\".\" + a.className)) : \"\")), d = ((b + c));\n return ((a.tagName ? [\"'\",\"'\",].join(d) : d));\n };\n ;\n function e(a, b, e) {\n var f, g, h, i, j, k, l, m;\n ((((typeof e[((e.length - 1))] == \"function\")) && (h = e.pop(), h = ((h.unbound || h))))), ((((typeof e[((e.length - 1))] == \"object\")) && e.pop())), ((((e.length == 2)) ? (g = e[0], f = e[1]) : (g = b.$node[0], f = e[0]))), ((((window.DEBUG && window.DEBUG.enabled)) && (j = DEBUG.events.logFilter, l = ((((j.actions == \"all\")) || ((j.actions.indexOf(a) > -1)))), k = function(a) {\n return ((a.test ? a : new RegExp(((((\"^\" + a.replace(/\\*/g, \".*\"))) + \"$\")))));\n }, m = ((((j.eventNames == \"all\")) || j.eventNames.some(function(a) {\n return k(a).test(f);\n }))), ((((l && m)) && JSBNG__console.info(c[a], a, ((((\"[\" + f)) + \"]\")), d(g), b.constructor.describe.split(\" \").slice(0, 3).join(\" \")))))));\n };\n ;\n function f() {\n this.before(\"trigger\", function() {\n e(\"trigger\", this, b.toArray(arguments));\n }), this.before(\"JSBNG__on\", function() {\n e(\"JSBNG__on\", this, b.toArray(arguments));\n }), this.before(\"off\", function(a) {\n e(\"off\", this, b.toArray(arguments));\n });\n };\n ;\n var c = {\n JSBNG__on: \"\\u003C-\",\n trigger: \"-\\u003E\",\n off: \"x \"\n };\n return f;\n });\n define(\"components/flight/lib/component\", [\"./advice\",\"./utils\",\"./compose\",\"./registry\",\"./logger\",\"../tools/debug/debug\",], function(a, b, c, d, e, f) {\n function i(a) {\n a.events.slice().forEach(function(a) {\n var b = [a.type,];\n ((a.element && b.unshift(a.element))), ((((typeof a.callback == \"function\")) && b.push(a.callback))), this.off.apply(this, b);\n }, a.instance);\n };\n ;\n function j() {\n i(d.findInstanceInfo(this));\n };\n ;\n function k() {\n var a = d.findComponentInfo(this);\n ((a && Object.keys(a.instances).forEach(function(b) {\n var c = a.instances[b];\n c.instance.teardown();\n })));\n };\n ;\n function l(a, b) {\n try {\n window.JSBNG__postMessage(b, \"*\");\n } catch (c) {\n throw JSBNG__console.log(\"unserializable data for event\", a, \":\", b), new Error([\"The event\",a,\"on component\",this.toString(),\"was triggered with non-serializable data\",].join(\" \"));\n };\n ;\n };\n ;\n function m() {\n this.trigger = function() {\n var a, b, c, d, e, g = ((arguments.length - 1)), h = arguments[g];\n return ((((((typeof h != \"string\")) && ((!h || !h.defaultBehavior)))) && (g--, c = h))), ((((g == 1)) ? (a = $(arguments[0]), d = arguments[1]) : (a = this.$node, d = arguments[0]))), ((d.defaultBehavior && (e = d.defaultBehavior, d = $.JSBNG__Event(d.type)))), b = ((d.type || d)), ((((f.enabled && window.JSBNG__postMessage)) && l.call(this, b, c))), ((((typeof this.attr.eventData == \"object\")) && (c = $.extend(!0, {\n }, this.attr.eventData, c)))), a.trigger(((d || b)), c), ((((e && !d.isDefaultPrevented())) && ((this[e] || e)).call(this))), a;\n }, this.JSBNG__on = function() {\n var a, c, d, e, f = ((arguments.length - 1)), g = arguments[f];\n ((((typeof g == \"object\")) ? e = b.delegate(this.resolveDelegateRules(g)) : e = g)), ((((f == 2)) ? (a = $(arguments[0]), c = arguments[1]) : (a = this.$node, c = arguments[0])));\n if (((((typeof e != \"function\")) && ((typeof e != \"object\"))))) {\n throw new Error(((((\"Unable to bind to '\" + c)) + \"' because the given callback is not a function or an object\")));\n }\n ;\n ;\n return d = e.bind(this), d.target = e, ((e.guid && (d.guid = e.guid))), a.JSBNG__on(c, d), e.guid = d.guid, d;\n }, this.off = function() {\n var a, b, c, d = ((arguments.length - 1));\n return ((((typeof arguments[d] == \"function\")) && (c = arguments[d], d -= 1))), ((((d == 1)) ? (a = $(arguments[0]), b = arguments[1]) : (a = this.$node, b = arguments[0]))), a.off(b, c);\n }, this.resolveDelegateRules = function(a) {\n var b = {\n };\n return Object.keys(a).forEach(function(c) {\n if (((!c in this.attr))) {\n throw new Error(((((((((\"Component \\\"\" + this.toString())) + \"\\\" wants to listen on \\\"\")) + c)) + \"\\\" but no such attribute was defined.\")));\n }\n ;\n ;\n b[this.attr[c]] = a[c];\n }, this), b;\n }, this.defaultAttrs = function(a) {\n ((b.push(this.defaults, a, !0) || (this.defaults = a)));\n }, this.select = function(a) {\n return this.$node.JSBNG__find(this.attr[a]);\n }, this.initialize = $.noop, this.teardown = j;\n };\n ;\n function n(a) {\n var c = arguments.length, e = new Array(((c - 1)));\n for (var f = 1; ((f < c)); f++) {\n e[((f - 1))] = arguments[f];\n ;\n };\n ;\n if (!a) {\n throw new Error(\"Component needs to be attachTo'd a jQuery object, native node or selector string\");\n }\n ;\n ;\n var g = b.merge.apply(b, e);\n $(a).each(function(a, b) {\n var c = ((b.jQuery ? b[0] : b)), e = d.findComponentInfo(this);\n if (((e && e.isAttachedTo(c)))) {\n return;\n }\n ;\n ;\n new this(b, g);\n }.bind(this));\n };\n ;\n function o() {\n function l(a, b) {\n b = ((b || {\n })), this.identity = h++;\n if (!a) {\n throw new Error(\"Component needs a node\");\n }\n ;\n ;\n ((a.jquery ? (this.node = a[0], this.$node = a) : (this.node = a, this.$node = $(a)))), this.toString = l.toString, ((f.enabled && (this.describe = this.toString())));\n var c = Object.create(b);\n {\n var fin48keys = ((window.top.JSBNG_Replay.forInKeys)((this.defaults))), fin48i = (0);\n var d;\n for (; (fin48i < fin48keys.length); (fin48i++)) {\n ((d) = (fin48keys[fin48i]));\n {\n ((b.hasOwnProperty(d) || (c[d] = this.defaults[d])));\n ;\n };\n };\n };\n ;\n this.attr = c, this.initialize.call(this, b);\n };\n ;\n var b = arguments.length, i = new Array(((b + 3)));\n for (var j = 0; ((j < b)); j++) {\n i[j] = arguments[j];\n ;\n };\n ;\n return l.toString = function() {\n var a = i.map(function(a) {\n if (((a.JSBNG__name == null))) {\n var b = a.toString().match(g);\n return ((((b && b[1])) ? b[1] : \"\"));\n }\n ;\n ;\n return ((((a.JSBNG__name != \"withBaseComponent\")) ? a.JSBNG__name : \"\"));\n }).filter(Boolean).join(\", \");\n return a;\n }, ((f.enabled && (l.describe = l.toString()))), l.attachTo = n, l.teardownAll = k, ((f.enabled && i.unshift(e))), i.unshift(m, a.withAdvice, d.withRegistration), c.mixin(l.prototype, i), l;\n };\n ;\n var g = /function (.*?)\\s?\\(/, h = 0;\n return o.teardownAll = function() {\n d.components.slice().forEach(function(a) {\n a.component.teardownAll();\n }), d.reset();\n }, o;\n });\n define(\"core/component\", [\"module\",\"require\",\"exports\",\"components/flight/lib/component\",], function(module, require, exports) {\n var flightComponent = require(\"components/flight/lib/component\");\n module.exports = flightComponent;\n });\n define(\"core/registry\", [\"module\",\"require\",\"exports\",\"components/flight/lib/registry\",], function(module, require, exports) {\n var flightRegistry = require(\"components/flight/lib/registry\");\n module.exports = flightRegistry;\n });\n provide(\"core/clock\", function(a) {\n using(\"core/component\", \"core/registry\", function(b, c) {\n function h() {\n \n };\n ;\n function i() {\n this.timers = [], this.clockComponent = function() {\n if (((!this.currentClock || !c.findInstanceInfo(this.currentClock)))) {\n this.reset(), this.currentClock = new d(JSBNG__document);\n }\n ;\n ;\n return this.currentClock;\n }, this.trigger = function(a, b) {\n this.clockComponent().trigger(a, b);\n }, this.reset = function() {\n this.timers = [];\n }, this.tick = function() {\n this.timers.forEach(function(a) {\n a.tick(f);\n });\n }, this.setTicker = function() {\n this.pause(), this.ticker = window.JSBNG__setInterval(this.tick.bind(this), f);\n }, this.init = function() {\n this.clockComponent(), ((this.ticker || this.setTicker()));\n }, this.clear = function(a) {\n ((a && this.timers.splice(this.timers.indexOf(a), 1)));\n }, this.setTimeoutEvent = function(a, b, c) {\n if (((typeof a != \"string\"))) {\n return JSBNG__console.error(\"clock.setTimeoutEvent was passed a function instead of a string.\");\n }\n ;\n ;\n this.init();\n var d = new k(a, b, c);\n return this.timers.push(d), d;\n }, this.JSBNG__clearTimeout = function(a) {\n ((((a instanceof k)) && this.clear(a)));\n }, this.setIntervalEvent = function(a, b, c) {\n if (((typeof a != \"string\"))) {\n return JSBNG__console.error(\"clock.setIntervalEvent was passed a function instead of a string.\");\n }\n ;\n ;\n this.init();\n var d = new m(a, b, c);\n return this.timers.push(d), d;\n }, this.JSBNG__clearInterval = function(a) {\n ((((a instanceof m)) && this.clear(a)));\n }, this.resume = this.restart = this.setTicker, this.pause = function(a, b) {\n JSBNG__clearInterval(((this.ticker || 0)));\n };\n };\n ;\n function j() {\n this.callback = function() {\n e.trigger(this.eventName, this.data);\n }, this.clear = function() {\n e.clear(this);\n }, this.pause = function() {\n this.paused = !0;\n }, this.resume = function() {\n this.paused = !1;\n }, this.tickUnlessPaused = this.tick, this.tick = function() {\n if (this.paused) {\n return;\n }\n ;\n ;\n this.tickUnlessPaused.apply(this, arguments);\n };\n };\n ;\n function k(a, b, c) {\n this.countdown = b, this.eventName = a, this.data = c;\n };\n ;\n function m(a, b, c) {\n this.countdown = this.interval = this.maxInterval = this.initialInterval = b, this.backoffFactor = g, this.eventName = a, this.data = c;\n };\n ;\n var d = b(h), e = new i, f = 1000, g = 2, l = function() {\n this.tick = function(a) {\n this.countdown -= a, ((((this.countdown <= 0)) && (this.clear(), this.callback())));\n };\n };\n l.call(k.prototype), j.call(k.prototype);\n var n = function() {\n this.tick = function(a) {\n this.countdown -= a;\n if (((this.countdown <= 0))) {\n this.callback();\n if (((this.interval < this.maxInterval))) {\n var b = ((Math.ceil(((((this.interval * this.backoffFactor)) / f))) * f));\n this.interval = Math.min(b, this.maxInterval);\n }\n ;\n ;\n this.countdown = this.interval;\n }\n ;\n ;\n }, this.backoff = function(a, b) {\n this.maxInterval = a, this.backoffFactor = ((b || g)), ((((this.interval > this.maxInterval)) && (this.interval = a)));\n }, this.cancelBackoff = function() {\n this.interval = this.maxInterval = this.initialInterval, this.countdown = Math.min(this.countdown, this.interval), this.resume();\n };\n };\n n.call(m.prototype), j.call(m.prototype), a(e);\n });\n });\n define(\"core/compose\", [\"module\",\"require\",\"exports\",\"components/flight/lib/compose\",], function(module, require, exports) {\n var flightCompose = require(\"components/flight/lib/compose\");\n module.exports = flightCompose;\n });\n define(\"core/advice\", [\"module\",\"require\",\"exports\",\"components/flight/lib/advice\",], function(module, require, exports) {\n var flightAdvice = require(\"components/flight/lib/advice\");\n module.exports = flightAdvice;\n });\n provide(\"core/parameterize\", function(a) {\n function c(a, c, d) {\n return ((c ? a.replace(b, function(a, b) {\n if (b) {\n if (c[b]) {\n return c[b];\n }\n ;\n ;\n if (d) {\n throw new Error(((\"Cannot parameterize string, no replacement found for \" + b)));\n }\n ;\n ;\n return \"\";\n }\n ;\n ;\n return a;\n }) : a));\n };\n ;\n var b = /\\{\\{(.+?)\\}\\}/g;\n a(c);\n });\n provide(\"core/i18n\", function(a) {\n using(\"core/parameterize\", function(b) {\n a(b);\n });\n });\n define(\"core/logger\", [\"module\",\"require\",\"exports\",\"components/flight/lib/logger\",], function(module, require, exports) {\n var flightLogger = require(\"components/flight/lib/logger\");\n module.exports = flightLogger;\n });\n define(\"core/utils\", [\"module\",\"require\",\"exports\",\"components/flight/lib/utils\",], function(module, require, exports) {\n var flightUtils = require(\"components/flight/lib/utils\");\n module.exports = flightUtils;\n });\n define(\"debug/debug\", [\"module\",\"require\",\"exports\",\"components/flight/tools/debug/debug\",], function(module, require, exports) {\n var flightDebug = require(\"components/flight/tools/debug/debug\");\n module.exports = flightDebug;\n });\n provide(\"app/utils/auth_token\", function(a) {\n var b;\n a({\n get: function() {\n if (!b) {\n throw new Error(\"authToken should have been set!\");\n }\n ;\n ;\n return b;\n },\n set: function(a) {\n b = a;\n },\n addTo: function(a, c) {\n return a.authenticity_token = b, ((c && (a.post_authenticity_token = b))), a;\n }\n });\n });\n define(\"app/data/scribe_transport\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function ScribeTransport(a) {\n this.SESSION_BUFFER_KEY = \"ScribeTransport\", this.SCRIBE_API_ENDPOINT = \"/i/jot\", this.options = {\n }, ((a && (this.updateOptions(a), this.registerEventHandlers(a))));\n };\n ;\n ScribeTransport.prototype = {\n flush: function(a, b) {\n if (((!a || !a.length))) {\n return;\n }\n ;\n ;\n ((((b === undefined)) && (b = !!this.options.sync)));\n if (this.options.useAjax) {\n var c = {\n url: this.options.url,\n data: $.extend(this.ajaxParams(a), this.options.requestParameters),\n type: \"POST\",\n dataType: \"json\",\n async: !b\n };\n ((this.options.debug && (((this.options.debugHandler && (c.success = this.options.debugHandler))), c.data.debug = \"1\"))), $.ajax(c);\n }\n else {\n var d = ((this.options.debug ? \"&debug=1\" : \"\"));\n (new JSBNG__Image).src = ((((((((((this.options.url + \"?q=\")) + (+(new JSBNG__Date)).toString().slice(-4))) + d)) + \"&\")) + this.imageParams(a)));\n }\n ;\n ;\n this.reset();\n },\n ajaxParams: function(a) {\n if (((typeof a == \"string\"))) {\n return {\n log: ((((\"[\" + a)) + \"]\"))\n };\n }\n ;\n ;\n var b = this.options.encodeParameters;\n return ((((b && ((typeof b == \"function\")))) ? b.apply(this, arguments) : {\n log: JSON.stringify(a)\n }));\n },\n imageParams: function(a) {\n if (((typeof a == \"string\"))) {\n return ((((\"log=%5B\" + a)) + \"%5D\"));\n }\n ;\n ;\n var b = this.options.encodeParameters;\n return ((((b && ((typeof b == \"function\")))) ? b.apply(this, arguments) : ((\"log=\" + encodeURIComponent(JSON.stringify(a))))));\n },\n reset: function() {\n ((this.options.bufferEvents && (this.skipUnloadFlush = !1, JSBNG__sessionStorage.removeItem(this.options.bufferKey))));\n },\n getBuffer: function() {\n return ((JSBNG__sessionStorage.getItem(this.options.bufferKey) || \"\"));\n },\n send: function(a, b, c) {\n if (((((!b || !a)) || ((this.options.bufferSize < 0))))) {\n return;\n }\n ;\n ;\n a._category_ = b;\n if (((((c || !this.options.bufferEvents)) || !this.options.bufferSize))) this.flush([a,], c);\n else {\n var d = JSON.stringify(a);\n ((this.options.useAjax || (d = encodeURIComponent(d))));\n var e = this.getBuffer(), f = ((e + ((e ? ((this.SEPARATOR + d)) : d))));\n ((((this.options.bufferSize && this.fullBuffer(f))) ? ((this.options.useAjax ? this.flush(f) : (this.flush(e), JSBNG__sessionStorage.setItem(this.options.bufferKey, d)))) : JSBNG__sessionStorage.setItem(this.options.bufferKey, f)));\n }\n ;\n ;\n ((this.options.debug && $(JSBNG__document).trigger(((\"scribedata.\" + this.options.bufferKey)), a))), ((((this.options.metrics && ((a.event_info != \"debug\")))) && $(JSBNG__document).trigger(\"debugscribe\", a)));\n },\n fullBuffer: function(a) {\n return ((a.length >= ((this.options.useAjax ? ((this.options.bufferSize * 2083)) : ((2050 - this.options.url.length))))));\n },\n updateOptions: function(a) {\n this.options = $.extend({\n }, this.options, a), ((this.options.requestParameters || (this.options.requestParameters = {\n }))), ((((this.options.flushOnUnload === undefined)) && (this.options.flushOnUnload = !0))), ((this.options.bufferKey || (this.options.bufferKey = this.SESSION_BUFFER_KEY))), ((((this.options.bufferSize === 0)) && (this.options.bufferEvents = !1))), ((((this.options.useAjax === undefined)) && (this.options.useAjax = !0)));\n if (((this.options.bufferEvents || ((this.options.bufferEvents == undefined))))) {\n try {\n JSBNG__sessionStorage.setItem(((this.SESSION_BUFFER_KEY + \".init\")), \"test\");\n var b = ((JSBNG__sessionStorage.getItem(((this.SESSION_BUFFER_KEY + \".init\"))) == \"test\"));\n JSBNG__sessionStorage.removeItem(((this.SESSION_BUFFER_KEY + \".init\"))), this.options.bufferEvents = b;\n } catch (c) {\n this.options.bufferEvents = !1;\n };\n }\n ;\n ;\n if (((this.options.debug && !this.options.debugHandler))) {\n var d = this;\n this.options.debugHandler = ((a.debugHandler || function(a) {\n $(JSBNG__document).trigger(((\"handlescribe.\" + d.options.bufferKey)), a);\n }));\n }\n ;\n ;\n var e = ((((window.JSBNG__location.protocol === \"https:\")) ? \"https:\" : \"http:\"));\n ((((this.options.url === undefined)) ? ((this.options.useAjax ? this.options.url = this.SCRIBE_API_ENDPOINT : this.options.url = ((\"https://twitter.com\" + this.SCRIBE_API_ENDPOINT)))) : this.options.url = this.options.url.replace(/^[a-z]+:/g, e).replace(/\\/$/, \"\"))), ((((this.options.bufferEvents && ((this.options.bufferSize === undefined)))) && (this.options.bufferSize = 20)));\n },\n appHost: function() {\n return window.JSBNG__location.host;\n },\n registerEventHandlers: function() {\n var a = this, b = $(JSBNG__document);\n if (this.options.bufferEvents) {\n b.JSBNG__on(((\"flushscribe.\" + a.options.bufferKey)), function(b) {\n a.flush(a.getBuffer(), !0);\n });\n if (this.options.flushOnUnload) {\n var c = function(b) {\n a.skipUnloadFlush = ((((!b || !b.match(/http/))) || !!b.match(new RegExp(((\"^https?://\" + a.appHost())), \"gi\")))), ((a.skipUnloadFlush && window.JSBNG__setTimeout(function() {\n a.skipUnloadFlush = !1;\n }, 3000)));\n };\n b.JSBNG__on(((\"mouseup.\" + this.options.bufferKey)), \"a\", function(a) {\n if (((((((((((this.getAttribute(\"target\") || a.button)) || a.metaKey)) || a.shiftKey)) || a.altKey)) || a.ctrlKey))) {\n return;\n }\n ;\n ;\n c(this.getAttribute(\"href\"));\n }), b.JSBNG__on(((\"submit.\" + this.options.bufferKey)), \"form\", function(a) {\n c(this.getAttribute(\"action\"));\n }), b.JSBNG__on(((\"uiNavigate.\" + this.options.bufferKey)), function(a, b) {\n c(b.url);\n }), $(window).JSBNG__on(((\"unload.\" + this.options.bufferKey)), function() {\n ((a.skipUnloadFlush || a.flush(a.getBuffer(), !0))), a.skipUnloadFlush = !1;\n });\n }\n ;\n ;\n }\n ;\n ;\n this.SEPARATOR = ((this.options.useAjax ? \",\" : encodeURIComponent(\",\")));\n },\n destroy: function() {\n this.flush(this.getBuffer()), $(JSBNG__document).off(((\"flushscribe.\" + this.options.bufferKey))), $(window).off(((\"unload.\" + this.options.bufferKey))), $(JSBNG__document).off(((\"mouseup.\" + this.options.bufferKey))), $(JSBNG__document).off(((\"submit.\" + this.options.bufferKey))), $(JSBNG__document).off(((\"uiNavigate.\" + this.options.bufferKey)));\n }\n }, module.exports = new ScribeTransport;\n });\n define(\"app/data/scribe_monitor\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function scribeMonitor() {\n function a(a) {\n if (((window.scribeConsole && window.scribeConsole.JSBNG__postMessage))) {\n var b = ((((window.JSBNG__location.protocol + \"//\")) + window.JSBNG__location.host));\n try {\n window.scribeConsole.JSBNG__postMessage(a, b);\n } catch (c) {\n var d = ((((\"ScribeMonitor.postToConsole - Scribe Console error or unserializable data [\" + a._category_)) + \"]\"));\n JSBNG__console.error(d, a);\n };\n ;\n }\n ;\n ;\n };\n ;\n this.after(\"initialize\", function() {\n this.JSBNG__on(\"keypress\", function(a) {\n if (((((((a.charCode == 205)) && a.shiftKey)) && a.altKey))) {\n var b = \"menubar=no,toolbar=no,personalbar=no,location=no,resizable=yes,status=no,dependent=yes,height=600,width=600,screenX=100,screenY=100,scrollbars=yes\", c = window.JSBNG__location.host;\n if (((!c || !c.match(/^(staging[0-9]+\\.[^\\.]+\\.twitter.com|twitter\\.com|localhost\\.twitter\\.com\\:[0-9]+)$/)))) {\n c = \"twitter.com\";\n }\n ;\n ;\n window.scribeConsole = window.open(((((((window.JSBNG__location.protocol + \"//\")) + c)) + \"/scribe/console\")), \"scribe_console\", b);\n }\n ;\n ;\n }), this.JSBNG__on(\"scribedata.ScribeTransport handlescribe.ScribeTransport\", function(b, c) {\n a(c);\n }), ((this.attr.scribesForScribeConsole && this.JSBNG__on(\"uiSwiftLoaded uiPageChanged\", function(b, c) {\n ((((((b.type == \"uiSwiftLoaded\")) || !c.fromCache)) && this.attr.scribesForScribeConsole.forEach(function(b) {\n b._category_ = \"client_event\", a(b);\n })));\n })));\n });\n };\n ;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(scribeMonitor);\n });\n define(\"app/data/client_event\", [\"module\",\"require\",\"exports\",\"app/data/scribe_transport\",], function(module, require, exports) {\n function ClientEvent(a) {\n this.scribeContext = {\n }, this.scribeData = {\n }, this.scribe = function(b, c) {\n var d = ((a || window.scribeTransport));\n if (!d) {\n throw new Error(\"You must create a global scribeTransport variable or pass one into this constructor.\");\n }\n ;\n ;\n if (((((!b || ((typeof b != \"object\")))) || ((c && ((typeof c != \"object\"))))))) {\n throw new Error(\"Invalid terms or data hash argument when calling ClientEvent.scribe().\");\n }\n ;\n ;\n if (this.scribeContext) {\n var e = ((((typeof this.scribeContext == \"function\")) ? this.scribeContext() : this.scribeContext));\n b = $.extend({\n }, e, b);\n }\n ;\n ;\n {\n var fin49keys = ((window.top.JSBNG_Replay.forInKeys)((b))), fin49i = (0);\n var f;\n for (; (fin49i < fin49keys.length); (fin49i++)) {\n ((f) = (fin49keys[fin49i]));\n {\n b[f] = ((b[f] && ((\"\" + b[f])).toLowerCase().replace(/_?[^a-z0-9_]+_?/g, \"_\")));\n ;\n };\n };\n };\n ;\n ((d.options.debug && $.each([\"client\",\"action\",], function(a, c) {\n if (!b[c]) {\n throw new Error(((((\"You must specify a \" + c)) + \" term in your client_event.\")));\n }\n ;\n ;\n })));\n var c = $.extend({\n }, c);\n if (this.scribeData) {\n var g = ((((typeof this.scribeData == \"function\")) ? this.scribeData() : this.scribeData));\n c = $.extend({\n }, g, c);\n }\n ;\n ;\n c.event_namespace = b, c.triggered_on = ((c.triggered_on || +(new JSBNG__Date))), c.format_version = ((c.format_version || 2)), d.send(c, \"client_event\");\n };\n };\n ;\n var scribeTransport = require(\"app/data/scribe_transport\");\n module.exports = new ClientEvent(scribeTransport);\n });\n define(\"app/data/ddg\", [\"module\",\"require\",\"exports\",\"app/data/client_event\",], function(module, require, exports) {\n function DDG(a, b) {\n this.experiments = ((a || {\n })), this.impressions = {\n }, this.scribeExperiment = function(a, c, d) {\n var e = $.extend({\n page: \"ddg\",\n section: a.experiment_key,\n component: \"\",\n element: \"\"\n }, c);\n d = ((d || {\n })), d.experiment_key = a.experiment_key, d.bucket = a.bucket, d.version = a.version, ((b || window.clientEvent)).scribe(e, d);\n }, this.impression = function(a) {\n var b = this.experiments[a];\n ((b && (a = b.experiment_key, ((this.impressions[a] || (this.scribeExperiment(b, {\n action: \"experiment\"\n }), this.impressions[a] = !0))))));\n }, this.track = function(a, b, c) {\n if (!b) {\n throw new Error(\"You must specify an event name to track custom DDG events. Event names should be lower-case, snake_cased strings.\");\n }\n ;\n ;\n var d = this.experiments[a];\n ((d && this.scribeExperiment(d, {\n element: b,\n action: \"track\"\n }, c)));\n }, this.bucket = function(a) {\n var b = this.experiments[a];\n return ((b ? b.bucket : \"\"));\n };\n };\n ;\n var clientEvent = require(\"app/data/client_event\");\n module.exports = new DDG({\n }, clientEvent);\n });\n define(\"app/utils/scribe_association_types\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = {\n associatedTweet: 1,\n platformCardPublisher: 2,\n platformCardCreator: 3,\n conversationOrigin: 4,\n associatedUser: 5,\n associatedTimeline: 6\n };\n });\n define(\"app/data/with_scribe\", [\"module\",\"require\",\"exports\",\"app/data/client_event\",\"core/utils\",], function(module, require, exports) {\n function withScribe() {\n function a(a) {\n if (!a) {\n return;\n }\n ;\n ;\n a = ((a.sourceEventData ? a.sourceEventData : a));\n if (((a.scribeContext || a.scribeData))) {\n return a;\n }\n ;\n ;\n };\n ;\n this.scribe = function() {\n var b = Array.prototype.slice.call(arguments), c, d, e, f, g;\n c = ((((typeof b[0] == \"string\")) ? {\n action: b[0]\n } : b[0])), b.shift();\n if (b[0]) {\n e = b[0], ((e.sourceEventData && (e = e.sourceEventData)));\n if (((e.scribeContext || e.scribeData))) {\n f = e.scribeContext, g = e.scribeData;\n }\n ;\n ;\n ((((((((b[0].scribeContext || b[0].scribeData)) || b[0].sourceEventData)) || ((b.length === 2)))) && b.shift()));\n }\n ;\n ;\n c = utils.merge({\n }, f, c), d = ((((typeof b[0] == \"function\")) ? b[0].bind(this)(e) : b[0])), d = utils.merge({\n }, g, d), this.transport(c, d);\n }, this.scribeOnEvent = function(b, c, d) {\n this.JSBNG__on(b, function(a, b) {\n b = ((b || {\n })), this.scribe(c, ((b.sourceEventData || b)), d);\n });\n }, this.transport = function(b, c) {\n clientEvent.scribe(b, c);\n };\n };\n ;\n var clientEvent = require(\"app/data/client_event\"), utils = require(\"core/utils\");\n module.exports = withScribe;\n });\n define(\"app/utils/with_session\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withSession() {\n this.setSessionItem = function(a, b) {\n ((window.JSBNG__sessionStorage && JSBNG__sessionStorage.setItem(a, b)));\n }, this.removeSessionItem = function(a) {\n ((window.JSBNG__sessionStorage && JSBNG__sessionStorage.removeItem(a)));\n }, this.getSessionItem = function(a) {\n return ((window.JSBNG__sessionStorage && JSBNG__sessionStorage.getItem(a)));\n }, this.setSessionObject = function(a, b) {\n ((((b === undefined)) ? this.removeSessionItem(a) : this.setSessionItem(a, JSON.stringify(b))));\n }, this.getSessionObject = function(a) {\n var b = this.getSessionItem(a);\n return ((((b === undefined)) ? b : JSON.parse(b)));\n };\n };\n ;\n module.exports = withSession;\n });\n define(\"app/utils/scribe_item_types\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = {\n tweet: 0,\n promotedTweet: 1,\n popularTweet: 2,\n retweet: 10,\n user: 3,\n promotedUser: 4,\n message: 6,\n story: 7,\n trend: 8,\n promotedTrend: 9,\n popularTrend: 15,\n list: 11,\n search: 12,\n savedSearch: 13,\n peopleSearch: 14\n };\n });\n define(\"app/data/with_interaction_data_scribe\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/data/with_scribe\",\"app/utils/with_session\",\"app/utils/scribe_item_types\",\"app/utils/scribe_association_types\",\"app/data/client_event\",\"core/utils\",], function(module, require, exports) {\n function withInteractionDataScribe() {\n this.defaultAttrs({\n profileClickContextExpirationMs: 600000,\n profileClickContextSessionKey: \"profileClickContext\"\n }), compose.mixin(this, [withScribe,withSession,]), this.scribeInteraction = function(a, b, c) {\n if (((!a || !b))) {\n return;\n }\n ;\n ;\n ((((typeof a == \"string\")) && (a = {\n action: a\n })));\n var d = a.action;\n if (!d) {\n return;\n }\n ;\n ;\n b = utils.merge(b, b.sourceEventData), a = this.getInteractionScribeContext(a, b);\n var e = {\n };\n ((b.url && (e.url = b.url))), ((b.query && (e.query = b.query))), ((b.impressionId && (e.promoted = !0)));\n var f = this.interactionItem(b);\n ((f && (e.items = [f,])));\n var g = this.interactionTarget(b, a);\n ((g && (e.targets = [g,]))), c = utils.merge(e, c, b.scribeData), ((b.conversationOriginTweetId && (c.associations = ((c.associations || {\n })), c.associations[associationTypes.conversationOrigin] = {\n association_id: b.conversationOriginTweetId,\n association_type: itemTypes.tweet\n }))), ((((((d == \"profile_click\")) || ((d == \"mention_click\")))) && this.saveProfileClickContext(b)));\n if (((((d == \"report_as_spam\")) || ((d == \"block\"))))) {\n var h = this.getUserActionAssociations(b);\n ((h && (c.associations = utils.merge(c.associations, h))));\n }\n ;\n ;\n this.scribe(a, b, c);\n }, this.interactionItem = function(a) {\n var b = {\n };\n if (((((a.position === 0)) || a.position))) {\n b.position = a.position;\n }\n ;\n ;\n ((a.impressionId && (b.promoted_id = a.impressionId)));\n switch (a.itemType) {\n case \"user\":\n this.userDetails(b, a);\n break;\n case \"tweet\":\n this.tweetDetails(b, a), this.cardDetails(b, a), this.translationDetails(b, a), this.conversationDetails(b, a);\n break;\n case \"activity\":\n this.activityDetails(b, a), ((((a.activityType == \"follow\")) ? (this.userDetails(b, a), ((a.isNetworkActivity || (b.id = this.attr.userId)))) : ((a.listId ? this.listDetails(b, a) : (this.tweetDetails(b, a), this.cardDetails(b, a))))));\n break;\n case \"story\":\n this.storyDetails(b, a), ((a.tweetId ? this.tweetDetails(b, a) : ((a.userId ? this.userDetails(b, a) : b.item_type = itemTypes.story))));\n };\n ;\n return b;\n }, this.interactionTarget = function(a, b) {\n if (this.isUserTarget(b.action)) {\n var c = ((((a.isMentionClick ? a.userId : a.targetUserId)) || a.userId));\n return this.userDetails({\n }, {\n userId: c\n });\n }\n ;\n ;\n }, this.tweetDetails = function(a, b) {\n return a.id = b.tweetId, a.item_type = itemTypes.tweet, ((b.relevanceType && (a.is_popular_tweet = !0))), ((b.retweetId && (a.retweeting_tweet_id = b.retweetId))), a;\n }, this.cardDetails = function(a, b) {\n return ((b.cardItem && utils.push(a, b.cardItem))), a;\n }, this.translationDetails = function(a, b) {\n return a.dest = b.dest, a;\n }, this.conversationDetails = function(a, b) {\n ((b.isConversation && (a.description = \"focal\"))), ((b.isConversationComponent && (a.description = b.description, a.id = b.tweetId)));\n }, this.userDetails = function(a, b) {\n return a.id = ((b.containerUserId || b.userId)), a.item_type = itemTypes.user, ((b.feedbackToken && (a.token = b.feedbackToken))), a;\n }, this.listDetails = function(a, b) {\n return a.id = b.listId, a.item_type = itemTypes.list, a;\n }, this.activityDetails = function(a, b) {\n return a.activity_type = b.activityType, ((b.actingUserIds && (a.acting_user_ids = b.actingUserIds))), a;\n }, this.storyDetails = function(a, b) {\n return a.story_type = b.storyType, a.story_source = b.storySource, a.social_proof_type = b.socialProofType, a;\n }, this.isUserTarget = function(a) {\n return (([\"mention_click\",\"profile_click\",\"follow\",\"unfollow\",\"block\",\"unblock\",\"report_as_spam\",\"add_to_list\",\"dm\",].indexOf(a) != -1));\n }, this.getInteractionScribeContext = function(a, b) {\n return ((((((a.action == \"profile_click\")) && ((a.element === undefined)))) && (a.element = ((b.isPromotedBadgeClick ? \"promoted_badge\" : b.profileClickTarget))))), a;\n }, this.scribeInteractiveResults = function(a, b, c, d) {\n var e = [], f = !1;\n ((((typeof a == \"string\")) && (a = {\n action: a\n })));\n if (((!a.action || !b))) {\n return;\n }\n ;\n ;\n ((b.length || (a.action = \"no_results\"))), b.forEach(function(a) {\n ((f || (f = !!a.impressionId))), e.push(this.interactionItem(a));\n }.bind(this)), a = this.getInteractionScribeContext(a, c);\n var g = {\n };\n ((((e && e.length)) && (g.items = e))), ((f && (g.promoted = !0))), this.scribe(a, c, utils.merge(g, d));\n }, this.associationNamespace = function(a, b) {\n var c = {\n page: a.page,\n section: a.section\n };\n return (((([\"conversation\",\"replies\",\"in_reply_to\",].indexOf(b) >= 0)) && (c.component = b))), c;\n }, this.getProfileUserAssociations = function() {\n var a = ((this.attr.profile_user && this.attr.profile_user.id_str)), b = null;\n return ((a && (b = {\n }, b[associationTypes.associatedUser] = {\n association_id: a,\n association_type: itemTypes.user,\n association_namespace: this.associationNamespace(clientEvent.scribeContext)\n }))), b;\n }, this.getProfileClickContextAssociations = function(a) {\n var b = ((this.getSessionObject(this.attr.profileClickContextSessionKey) || null));\n return ((((((((b && ((b.userId == a)))) && ((b.expires > (new JSBNG__Date).getTime())))) && b.associations)) || null));\n }, this.saveProfileClickContext = function(a) {\n var b = {\n };\n ((a.tweetId ? (b[associationTypes.associatedTweet] = {\n association_id: a.tweetId,\n association_type: itemTypes.tweet,\n association_namespace: this.associationNamespace(clientEvent.scribeContext, a.scribeContext.component)\n }, ((a.conversationOriginTweetId && (b[associationTypes.conversationOrigin] = {\n association_id: a.conversationOriginTweetId,\n association_type: itemTypes.tweet\n })))) : b = this.getProfileUserAssociations())), this.setSessionObject(this.attr.profileClickContextSessionKey, {\n userId: a.userId,\n associations: b,\n expires: (((new JSBNG__Date).getTime() + this.attr.profileClickContextExpirationMs))\n });\n }, this.getUserActionAssociations = function(a) {\n var b = a.scribeContext.component, c;\n return ((((((b == \"profile_dialog\")) || ((b == \"profile_follow_card\")))) ? c = this.getProfileClickContextAssociations(a.userId) : ((((b == \"user\")) ? c = this.getProfileUserAssociations() : c = null)))), c;\n };\n };\n ;\n var compose = require(\"core/compose\"), withScribe = require(\"app/data/with_scribe\"), withSession = require(\"app/utils/with_session\"), itemTypes = require(\"app/utils/scribe_item_types\"), associationTypes = require(\"app/utils/scribe_association_types\"), clientEvent = require(\"app/data/client_event\"), utils = require(\"core/utils\");\n module.exports = withInteractionDataScribe;\n });\n define(\"app/utils/scribe_card_types\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = {\n photoTweet: 1,\n photoCard: 2,\n playerCard: 3,\n summaryCard: 4,\n promotionCard: 5,\n plusCard: 6\n };\n });\n define(\"app/data/with_card_metadata\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/utils/scribe_association_types\",\"app/data/with_interaction_data_scribe\",\"app/utils/scribe_item_types\",\"app/utils/scribe_card_types\",], function(module, require, exports) {\n function withCardMetadata() {\n compose.mixin(this, [withInteractionDataScribe,]);\n var a = \"Swift-1\";\n this.cardAssociationsForData = function(a) {\n var b = {\n associations: {\n }\n };\n return b.associations[associationTypes.platformCardPublisher] = {\n association_id: a.publisherUserId,\n association_type: itemTypes.user\n }, b.associations[associationTypes.platformCardCreator] = {\n association_id: a.creatorUserId,\n association_type: itemTypes.user\n }, b.message = a.cardUrl, b;\n }, this.getCardDataFromTweet = function(a) {\n var b = {\n }, c = a.closest(\".tweet\"), d, e, f, g;\n return (((d = c.closest(\".permalink-tweet-container\")).length || (d = $(c.attr(\"data-expanded-footer\"))))), b.tweetHasCard = c.hasClass(\"has-cards\"), g = !!d.JSBNG__find(\".card2\").length, b.interactionInsideCard = !1, ((g ? (b.tweetHasCard2 = g, b.tweetPreExpanded = c.hasClass(\"preexpanded\"), b.itemId = ((c.attr(\"data-item-id\") || null)), b.promotedId = ((c.attr(\"data-impression-id\") || null)), f = d.JSBNG__find(\".card2\"), b.cardName = f.attr(\"data-card2-name\"), b.cardUrl = f.JSBNG__find(\".card2-holder\").attr(\"data-card2-url\"), b.publisherUserId = this.getUserIdFromElement(f.JSBNG__find(\".card2-attribution\").JSBNG__find(\".js-user-profile-link\")), b.creatorUserId = this.getUserIdFromElement(f.JSBNG__find(\".card2-byline\").JSBNG__find(\".js-user-profile-link\")), b.interactionInsideCard = !!a.closest(\".card2\").length) : ((b.tweetHasCard && (e = d.JSBNG__find(\".cards-base\"), ((((e.length > 0)) && (b.cardType = e.data(\"card-type\"), b.cardUrl = e.data(\"card-url\"), b.publisherUserId = this.getUserIdFromElement(e.JSBNG__find(\".source .js-user-profile-link\")), b.creatorUserId = this.getUserIdFromElement(e.JSBNG__find(\".byline .js-user-profile-link\")), b.interactionInsideCard = this.interactionInsideCard(a))))))))), b;\n }, this.interactionInsideCard = function(a) {\n return !!a.closest(\".cards-base\").length;\n }, this.scribeCardInteraction = function(a, b) {\n ((b.tweetHasCard2 ? this.scribeCard2Interaction(a, b) : ((b.tweetHasCard && this.scribeClassicCardInteraction(a, b)))));\n }, this.scribeClassicCardInteraction = function(a, b) {\n var c = this.cardAssociationsForData(b);\n this.scribeInteraction({\n element: ((((\"platform_\" + b.cardType)) + \"_card\")),\n action: a\n }, b, c);\n }, this.getCard2Item = function(b) {\n return {\n item_type: itemTypes.tweet,\n id: b.itemId,\n promoted_id: b.promotedId,\n pre_expanded: ((b.tweetPreExpanded || !1)),\n card_type: cardTypes.plusCard,\n card_name: b.cardName,\n card_url: b.cardUrl,\n card_platform_key: a,\n publisher_id: b.publisherUserId\n };\n }, this.scribeCard2Interaction = function(a, b) {\n var c = {\n items: [this.getCard2Item(b),]\n };\n this.scribeInteraction({\n element: \"platform_card\",\n action: a\n }, b, c);\n }, this.getUserIdFromElement = function(a) {\n return ((a.length ? a.attr(\"data-user-id\") : null));\n };\n };\n ;\n var compose = require(\"core/compose\"), associationTypes = require(\"app/utils/scribe_association_types\"), withInteractionDataScribe = require(\"app/data/with_interaction_data_scribe\"), itemTypes = require(\"app/utils/scribe_item_types\"), cardTypes = require(\"app/utils/scribe_card_types\");\n module.exports = withCardMetadata;\n });\n define(\"app/data/with_conversation_metadata\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = function() {\n this.defaultAttrs({\n hasConversationModuleClassAlt: \"has-conversation-module\",\n conversationModuleSelectorAlt: \".conversation-module\",\n rootClass: \"root\",\n conversationRootTweetSelector: \".conversation-module .conversation-tweet-item.root .tweet\",\n conversationAncestorTweetSelector: \".conversation-module .conversation-tweet-item:not(root) .tweet\"\n }), this.getConversationAttrs = function(a) {\n var b = {\n };\n if (a.hasClass(this.attr.hasConversationModuleClass)) {\n var c = a.closest(this.attr.conversationModuleSelector);\n b.isConversation = !0, b.conversationAncestors = c.attr(\"data-ancestors\").split(\",\");\n }\n else ((a.hasClass(\"conversation-tweet\") && (b.isConversationComponent = !0, b.description = ((a.hasClass(this.attr.rootClass) ? \"root\" : \"ancestor\")))));\n ;\n ;\n return b;\n }, this.conversationComponentInteractionData = function(a, b) {\n return {\n itemType: \"tweet\",\n tweetId: $(a).attr(\"data-item-id\"),\n description: b,\n isConversationComponent: !0\n };\n }, this.extraInteractionData = function(a) {\n if (((a.JSBNG__find(this.attr.conversationModuleSelector).length > 0))) {\n var b = a.JSBNG__find(this.conversationRootTweetSelector).map(function(a, b) {\n return this.conversationComponentInteractionData(b, \"root\");\n }.bind(this)).get(), c = a.JSBNG__find(this.attr.conversationAncestorTweetSelector).map(function(a, b) {\n return this.conversationComponentInteractionData(b, \"ancestor\");\n }.bind(this)).get();\n return b.concat(c);\n }\n ;\n ;\n return [];\n }, this.addConversationScribeContext = function(a, b) {\n return ((((b && b.isConversation)) ? (a.component = \"conversation\", a.element = \"tweet\") : ((((b && b.isConversationComponent)) && (a.component = \"conversation\", a.element = b.description))))), a;\n }, this.after(\"initialize\", function() {\n ((this.attr.conversationModuleSelector || (this.attr.conversationModuleSelector = this.attr.conversationModuleSelectorAlt))), ((this.attr.hasConversationModuleClass || (this.attr.hasConversationModuleClass = this.attr.hasConversationModuleClassAlt)));\n });\n };\n });\n define(\"app/ui/with_interaction_data\", [\"module\",\"require\",\"exports\",\"core/compose\",\"core/utils\",\"app/data/with_card_metadata\",\"app/data/with_conversation_metadata\",], function(module, require, exports) {\n function withInteractionData() {\n compose.mixin(this, [withCardMetadata,withConversationMetadata,]), this.defaultAttrs({\n genericInteractionItemSelector: \".js-stream-item\",\n expandoContainerSelector: \".expanded-conversation\",\n expandoAncestorSelector: \".ancestor\",\n expandoDescendantSelector: \".descendant\",\n streamItemContainerSelector: \".js-stream-item, .permalink\",\n activityTargetSelector: \".activity-truncated-tweet .js-actionable-tweet, .js-activity-list_member_added [data-list-id]\",\n activityItemSelector: \".js-activity\",\n itemAvatarSelector: \".js-action-profile-avatar, .avatar.size48\",\n itemSmallAvatarSelector: \".avatar.size24, .avatar.size32\",\n itemMentionSelector: \".twitter-atreply\",\n discoveryStoryItemSelector: \".js-story-item\",\n discoveryStoryHeadlineSelector: \".js-news-headline a\",\n originalTweetSelector: \".js-original-tweet[data-tweet-id]\",\n promotedBadgeSelector: \".js-promoted-badge\",\n elementContextSelector: \"[data-element-context]\",\n componentContextSelector: \"[data-component-context]\",\n scribeContextSelector: \"[data-scribe-context]\",\n userTargetSelector: \".js-user-profile-link, .twitter-atreply\"\n });\n var a = {\n feedbackToken: \"data-feedback-token\",\n impressionId: \"data-impression-id\",\n disclosureType: \"data-disclosure-type\",\n impressionCookie: \"data-impression-cookie\",\n relevanceType: \"data-relevance-type\",\n associatedTweetId: \"data-associated-tweet-id\"\n }, b = utils.merge({\n tweetId: \"data-tweet-id\",\n retweetId: \"data-retweet-id\",\n isReplyTo: \"data-is-reply-to\",\n hasParentTweet: \"data-has-parent-tweet\"\n }, a), c = utils.merge({\n activityType: \"data-activity-type\"\n }, b), d = utils.merge({\n storyType: \"data-story-type\",\n query: \"data-query\",\n url: \"data-url\",\n storySource: \"data-source\",\n storyMediaType: \"data-card-media-type\",\n socialProofType: \"data-social-proof-type\"\n }, b);\n this.interactionDataWithCard = function(a, b) {\n return this.interactionData(a, b, !0);\n }, this.interactionData = function(a, b, c) {\n var d = {\n }, e = {\n }, f = !!c, g = ((a.target ? $(a.target) : $(a)));\n ((this.setItemType && this.setItemType(g))), b = ((b || {\n })), ((this.attr.eventData && (d = this.attr.eventData.scribeContext, e = this.attr.eventData.scribeData)));\n var h = utils.merge(this.getEventData(g, f), b), i = g.closest(this.attr.scribeContextSelector).data(\"scribe-context\");\n ((i && (e = utils.merge(i, e)))), d = utils.merge({\n }, d, this.getScribeContext(g, h));\n if (((((this.attr.itemType == \"tweet\")) && (([\"replies\",\"conversation\",\"in_reply_to\",].indexOf(d.component) >= 0))))) {\n var j = g.closest(this.attr.streamItemContainerSelector).JSBNG__find(this.attr.originalTweetSelector);\n ((j.length && (h.conversationOriginTweetId = j.attr(\"data-tweet-id\"))));\n }\n ;\n ;\n return utils.merge({\n scribeContext: d,\n scribeData: e\n }, h);\n }, this.getScribeContext = function(a, b) {\n var c = {\n }, d = a.closest(this.attr.componentContextSelector).attr(\"data-component-context\");\n ((d && (c.component = d)));\n var e = a.closest(this.attr.elementContextSelector).attr(\"data-element-context\");\n ((e && (c.element = e)));\n if (((c.element || c.component))) {\n return c;\n }\n ;\n ;\n }, this.getInteractionItemPosition = function(a, b) {\n if (((b && ((b.position >= 0))))) {\n return b.position;\n }\n ;\n ;\n var c = ((this.getItemPosition && this.getItemPosition(a)));\n return ((((c >= 0)) ? c : (c = this.getExpandoPosition(a), ((((c != -1)) ? c : ((((a.attr(\"data-is-tweet-proof\") === \"true\")) ? this.getTweetProofPosition(a) : this.getStreamPosition(a))))))));\n }, this.getExpandoPosition = function(a) {\n var b, c = -1, d = a.closest(this.attr.expandoAncestorSelector), e = a.closest(this.attr.expandoDescendantSelector);\n return ((d.length && (b = d.closest(this.attr.expandoContainerSelector), c = b.JSBNG__find(this.attr.expandoAncestorSelector).index(d)))), ((e.length && (b = e.closest(this.attr.expandoContainerSelector), c = b.JSBNG__find(this.attr.expandoDescendantSelector).index(e)))), ((a.closest(\".in-reply-to,.replies-to\").length && (b = a.closest(\".in-reply-to,.replies-to\"), c = b.JSBNG__find(\".tweet\").index(a.closest(\".tweet\"))))), c;\n }, this.getTweetProofPosition = function(a) {\n var b = a.closest(this.attr.trendItemSelector).index();\n return ((((b != -1)) ? b : -1));\n }, this.getStreamPosition = function(a) {\n var b = a.closest(this.attr.genericInteractionItemSelector).index();\n if (((b != -1))) {\n return b;\n }\n ;\n ;\n }, this.getEventData = function(c, d) {\n var e, f;\n switch (this.attr.itemType) {\n case \"activity\":\n return this.getActivityEventData(c);\n case \"story\":\n return this.getStoryEventData(c);\n case \"user\":\n return this.getDataAttrs(c, a);\n case \"tweet\":\n return f = utils.merge(this.getDataAttrs(c, b), this.getConversationAttrs(c)), ((d ? utils.merge(this.getCardAttrs(c), f) : f));\n case \"list\":\n return this.getDataAttrs(c, a);\n case \"trend\":\n return this.getDataAttrs(c, b);\n default:\n return JSBNG__console.warn(\"You must configure your UI component with an \\\"itemType\\\" attribute of activity, story, user, tweet, list, or trend in order for it to scribe properly.\"), {\n };\n };\n ;\n }, this.getActivityEventData = function(a) {\n var b = a.closest(this.attr.activityItemSelector), d = b.JSBNG__find(this.attr.activityTargetSelector);\n ((d.length || (d = a)));\n var e = this.getDataAttrs(a, c, d);\n e.isNetworkActivity = !!a.closest(\".discover-stream\").length, ((e.activityType || ((e.isReplyTo ? e.activityType = \"reply\" : e.activityType = ((e.retweetId ? \"retweet\" : \"mention\"))))));\n var f = [], g = ((e.isNetworkActivity ? \".stream-item-activity-header\" : \"ol.activity-supplement\"));\n return b.JSBNG__find(((g + \" a[data-user-id]\"))).each(function() {\n f.push($(this).data(\"user-id\"));\n }), ((f.length && (e.actingUserIds = f))), e;\n }, this.getStoryEventData = function(a) {\n var b = this.getDataAttrs(a, d), c = a.closest(this.attr.discoveryStoryItemSelector), e = c.JSBNG__find(this.attr.discoveryStoryHeadlineSelector).text();\n return b.storyTitle = e.replace(/^\\s+|\\s+$/g, \"\"), b;\n }, this.getTargetUserId = function(a) {\n var b = a.closest(this.attr.userTargetSelector);\n if (b.length) {\n return ((b.closest(\"[data-user-id]\").attr(\"data-user-id\") || b.JSBNG__find(\"[data-user-id]\").attr(\"data-user-id\")));\n }\n ;\n ;\n }, this.getDataAttrs = function(a, b, c) {\n var d = {\n };\n c = ((c || a)), $.each(b, function(a, b) {\n ((c.is(((((\"[\" + b)) + \"]\"))) ? d[a] = c.attr(b) : d[a] = c.closest(((((\"[\" + b)) + \"]\"))).attr(b)));\n }), d.isReplyTo = ((d.isReplyTo === \"true\")), d = utils.merge(d, {\n position: this.getInteractionItemPosition(a, d),\n isMentionClick: ((a.closest(this.attr.itemMentionSelector).length > 0)),\n isPromotedBadgeClick: ((a.closest(this.attr.promotedBadgeSelector).length > 0)),\n itemType: this.attr.itemType\n }), ((a.is(this.attr.itemAvatarSelector) ? d.profileClickTarget = \"avatar\" : ((a.is(this.attr.itemSmallAvatarSelector) ? d.profileClickTarget = \"mini_avatar\" : d.profileClickTarget = \"screen_name\"))));\n var e = this.getTargetUserId(a);\n return ((e && (d.targetUserId = e))), d.userId = a.closest(\"[data-user-id]\").attr(\"data-user-id\"), d.containerUserId = c.closest(\"[data-user-id]\").attr(\"data-user-id\"), d;\n }, this.getCardAttrs = function(a) {\n var b = this.getCardDataFromTweet(a);\n return ((b.tweetHasCard2 ? {\n cardItem: this.getCard2Item(b)\n } : {\n }));\n };\n };\n ;\n var compose = require(\"core/compose\"), utils = require(\"core/utils\"), withCardMetadata = require(\"app/data/with_card_metadata\"), withConversationMetadata = require(\"app/data/with_conversation_metadata\");\n module.exports = withInteractionData;\n });\n define(\"app/data/tweet_actions_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/ui/with_interaction_data\",\"app/data/with_conversation_metadata\",\"app/data/with_interaction_data_scribe\",], function(module, require, exports) {\n function tweetActionsScribe() {\n this.scribeTweet = function(a) {\n return function(b, c) {\n var d = this.addConversationScribeContext({\n action: a\n }, c.sourceEventData);\n this.scribeInteraction(d, utils.merge(c, c.sourceEventData));\n }.bind(this);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiReplyButtonTweetSuccess\", this.scribeTweet(\"reply\")), this.JSBNG__on(\"uiDidRetweetSuccess\", this.scribeTweet(\"retweet\")), this.JSBNG__on(\"uiDidDeleteTweet\", this.scribeTweet(\"delete\")), this.JSBNG__on(\"dataDidFavoriteTweet\", this.scribeTweet(\"favorite\")), this.JSBNG__on(\"dataDidUnfavoriteTweet\", this.scribeTweet(\"unfavorite\")), this.JSBNG__on(\"dataDidUnretweet\", this.scribeTweet(\"unretweet\")), this.JSBNG__on(\"uiPermalinkClick\", this.scribeTweet(\"permalink\")), this.JSBNG__on(\"uiDidShareViaEmailSuccess\", this.scribeTweet(\"share_via_email\")), this.JSBNG__on(\"dataTweetTranslationSuccess\", this.scribeTweet(\"translate\"));\n });\n };\n ;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withInteractionData = require(\"app/ui/with_interaction_data\"), withConversationMetadata = require(\"app/data/with_conversation_metadata\"), withInteractionDataScribe = require(\"app/data/with_interaction_data_scribe\");\n module.exports = defineComponent(tweetActionsScribe, withInteractionData, withConversationMetadata, withInteractionDataScribe);\n });\n define(\"app/data/user_actions_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/scribe_item_types\",\"app/utils/scribe_association_types\",\"app/data/with_interaction_data_scribe\",], function(module, require, exports) {\n function userActionsScribe() {\n function a(a) {\n var b = ((a && a.associatedTweetId)), c = {\n };\n if (!b) {\n return;\n }\n ;\n ;\n return c[associationTypes.associatedTweet] = {\n association_type: itemTypes.tweet,\n association_id: b\n }, {\n associations: c\n };\n };\n ;\n this.defaultAttrs({\n urlToActionMap: {\n \"/i/user/follow\": \"follow\",\n \"/i/user/unfollow\": \"unfollow\",\n \"/i/user/block\": \"block\",\n \"/i/user/unblock\": \"unblock\",\n \"/i/user/report_spam\": \"report_as_spam\",\n \"/i/user/hide\": \"dismiss\"\n },\n userActionToActionMap: {\n uiMentionAction: \"reply\",\n uiDmAction: \"dm\",\n uiListAction: \"add_to_list\",\n uiRetweetOnAction: {\n element: \"allow_retweets\",\n action: \"JSBNG__on\"\n },\n uiRetweetOffAction: {\n element: \"allow_retweets\",\n action: \"off\"\n },\n uiDeviceNotificationsOnAction: {\n element: \"mobile_notifications\",\n action: \"JSBNG__on\"\n },\n uiDeviceNotificationsOffAction: {\n element: \"mobile_notifications\",\n action: \"off\"\n },\n uiShowMobileNotificationsConfirm: {\n element: \"mobile_notifications\",\n action: \"failure\"\n },\n uiShowPushTweetsNotificationsConfirm: {\n element: \"mobile_notifications\",\n action: \"failure\"\n },\n uiEmailFollowAction: {\n element: \"email_follow\",\n action: \"email_follow\"\n },\n uiEmailUnfollowAction: {\n element: \"email_follow\",\n action: \"email_unfollow\"\n }\n }\n }), this.handleUserEvent = function(b, c) {\n this.scribeInteraction(this.attr.urlToActionMap[c.requestUrl], c, a(c.sourceEventData)), ((c.isFollowBack && this.scribeInteraction(\"follow_back\", c, a(c.sourceEventData))));\n }, this.handleAction = function(b, c) {\n this.scribeInteraction(this.attr.userActionToActionMap[b.type], c, a(c));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataFollowStateChange dataUserActionSuccess dataEmailFollow dataEmailUnfollow\", this.handleUserEvent), this.JSBNG__on(JSBNG__document, \"uiMentionAction uiListAction uiDmAction uiRetweetOnAction uiRetweetOffAction uiDeviceNotificationsOnAction uiDeviceNotificationsOffAction uiShowMobileNotificationsConfirm uiShowPushTweetsNotificationsConfirm uiEmailFollowAction uiEmailUnfollowAction\", this.handleAction);\n });\n };\n ;\n var defineComponent = require(\"core/component\"), itemTypes = require(\"app/utils/scribe_item_types\"), associationTypes = require(\"app/utils/scribe_association_types\"), withInteractionDataScribe = require(\"app/data/with_interaction_data_scribe\");\n module.exports = defineComponent(userActionsScribe, withInteractionDataScribe);\n });\n define(\"app/data/item_actions_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_interaction_data_scribe\",\"app/data/with_conversation_metadata\",\"app/data/with_card_metadata\",], function(module, require, exports) {\n function itemActionsScribe() {\n this.handleNewerTimelineItems = function(a, b) {\n this.scribeInteractiveResults({\n element: \"newer\",\n action: \"results\"\n }, b.items, b);\n }, this.handleRangeTimelineItems = function(a, b) {\n this.scribeInteractiveResults({\n element: \"range\",\n action: \"results\"\n }, b.items, b);\n }, this.handleProfilePopup = function(a, b) {\n var c = b.sourceEventData, d = ((c.isMentionClick ? \"mention_click\" : \"profile_click\"));\n c.userId = b.user_id, ((c.interactionInsideCard ? this.scribeCardAction(d, a, c) : this.scribeInteraction(d, c)));\n }, this.scribeItemAction = function(a, b, c) {\n var d = this.addConversationScribeContext({\n action: a\n }, c);\n this.scribeInteraction(d, c);\n }, this.scribeSearchTagClick = function(a, b) {\n var c = ((((a.type == \"uiCashtagClick\")) ? \"cashtag\" : \"hashtag\"));\n this.scribeInteraction({\n element: c,\n action: \"search\"\n }, b);\n }, this.scribeLinkClick = function(a, b) {\n var c = {\n };\n ((b.tcoUrl && (c.message = b.tcoUrl))), ((((b.text && ((b.text.indexOf(\"pic.twitter.com\") == 0)))) && (b.url = ((\"http://\" + b.text))))), this.scribeInteraction(\"open_link\", b, c);\n }, this.scribeCardAction = function(a, b, c) {\n ((((c && c.tweetHasCard)) && this.scribeCardInteraction(a, c)));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiHasInjectedNewTimeline\", this.handleNewerTimelineItems), this.JSBNG__on(JSBNG__document, \"uiHasInjectedRangeTimelineItems\", this.handleRangeTimelineItems), this.JSBNG__on(JSBNG__document, \"dataProfilePopupSuccess\", this.handleProfilePopup), this.JSBNG__on(JSBNG__document, \"uiItemSelected\", this.scribeItemAction.bind(this, \"select\")), this.JSBNG__on(JSBNG__document, \"uiItemDeselected\", this.scribeItemAction.bind(this, \"deselect\")), this.JSBNG__on(JSBNG__document, \"uiHashtagClick uiCashtagClick\", this.scribeSearchTagClick), this.JSBNG__on(JSBNG__document, \"uiItemLinkClick\", this.scribeLinkClick), this.JSBNG__on(JSBNG__document, \"uiCardInteractionLinkClick\", this.scribeCardAction.bind(this, \"click\")), this.JSBNG__on(JSBNG__document, \"uiCardExternalLinkClick\", this.scribeCardAction.bind(this, \"open_link\")), this.JSBNG__on(JSBNG__document, \"uiItemSelected\", this.scribeCardAction.bind(this, \"show\")), this.JSBNG__on(JSBNG__document, \"uiItemDeselected\", this.scribeCardAction.bind(this, \"hide\")), this.JSBNG__on(JSBNG__document, \"uiMapShow\", this.scribeItemAction.bind(this, \"show\")), this.JSBNG__on(JSBNG__document, \"uiMapClick\", this.scribeItemAction.bind(this, \"click\")), this.JSBNG__on(JSBNG__document, \"uiShareViaEmailDialogOpened\", this.scribeItemAction.bind(this, \"open\"));\n });\n };\n ;\n var defineComponent = require(\"core/component\"), withInteractionDataScribe = require(\"app/data/with_interaction_data_scribe\"), withConversationMetadata = require(\"app/data/with_conversation_metadata\"), withCardMetadata = require(\"app/data/with_card_metadata\");\n module.exports = defineComponent(itemActionsScribe, withInteractionDataScribe, withConversationMetadata, withCardMetadata);\n });\n define(\"app/utils/full_path\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function fullPath() {\n return [JSBNG__location.pathname,JSBNG__location.search,].join(\"\");\n };\n ;\n module.exports = fullPath;\n });\n define(\"app/data/navigation_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/client_event\",\"app/data/with_scribe\",\"app/utils/full_path\",], function(module, require, exports) {\n function navigationScribe() {\n this.scribeNav = function(a, b) {\n this.scribe(\"JSBNG__navigate\", b, {\n url: b.url\n });\n }, this.scribeCachedImpression = function(a, b) {\n ((b.fromCache && this.scribe(\"impression\")));\n }, this.after(\"initialize\", function() {\n clientEvent.internalReferer = fullPath(), this.JSBNG__on(\"uiNavigationLinkClick\", this.scribeNav), this.JSBNG__on(\"uiPageChanged\", this.scribeCachedImpression);\n });\n };\n ;\n var defineComponent = require(\"core/component\"), clientEvent = require(\"app/data/client_event\"), withScribe = require(\"app/data/with_scribe\"), fullPath = require(\"app/utils/full_path\");\n module.exports = defineComponent(navigationScribe, withScribe);\n });\n define(\"app/data/simple_event_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function simpleEventScribe() {\n this.defaultAttrs({\n eventToActionMap: {\n uiEnableEmailFollowAction: {\n action: \"enable\"\n },\n uiDisableEmailFollowAction: {\n action: \"disable\"\n }\n }\n }), this.scribeSimpleEvent = function(a, b) {\n this.scribe(this.attr.eventToActionMap[a.type], b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiEnableEmailFollowAction\", this.scribeSimpleEvent), this.JSBNG__on(\"uiDisableEmailFollowAction\", this.scribeSimpleEvent);\n });\n };\n ;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(simpleEventScribe, withScribe);\n });\n define(\"app/boot/scribing\", [\"module\",\"require\",\"exports\",\"app/data/scribe_transport\",\"app/data/scribe_monitor\",\"app/data/client_event\",\"app/data/ddg\",\"app/data/tweet_actions_scribe\",\"app/data/user_actions_scribe\",\"app/data/item_actions_scribe\",\"app/data/navigation_scribe\",\"app/data/simple_event_scribe\",], function(module, require, exports) {\n function initialize(a) {\n var b = {\n useAjax: !0,\n bufferEvents: ((((((a.environment != \"development\")) && ((a.environment != \"staging\")))) && !a.preflight)),\n flushOnUnload: ((a.environment != \"selenium\")),\n bufferSize: ((((a.environment == \"selenium\")) ? ((1000 * a.scribeBufferSize)) : a.scribeBufferSize)),\n debug: !!a.debugAllowed,\n requestParameters: a.scribeParameters\n };\n scribeTransport.updateOptions(b), scribeTransport.registerEventHandlers(), clientEvent.scribeContext = {\n client: \"web\",\n page: a.pageName,\n section: a.sectionName\n }, clientEvent.scribeData = {\n internal_referer: ((clientEvent.internalReferer || a.internalReferer)),\n client_version: ((a.macawSwift ? \"macaw-swift\" : \"swift\"))\n }, delete clientEvent.internalReferer, ((a.loggedIn || (clientEvent.scribeData.user_id = 0))), ddg.experiments = a.experiments, ((((((((a.environment != \"production\")) || a.preflight)) || a.scribesForScribeConsole)) && ScribeMonitor.attachTo(JSBNG__document, {\n scribesForScribeConsole: a.scribesForScribeConsole\n }))), TweetActionsScribe.attachTo(JSBNG__document, a), UserActionsScribe.attachTo(JSBNG__document, a), ItemActionsScribe.attachTo(JSBNG__document, a), NavigationScribe.attachTo(JSBNG__document, a), SimpleEventScribe.attachTo(JSBNG__document, a);\n };\n ;\n var scribeTransport = require(\"app/data/scribe_transport\"), ScribeMonitor = require(\"app/data/scribe_monitor\"), clientEvent = require(\"app/data/client_event\"), ddg = require(\"app/data/ddg\"), TweetActionsScribe = require(\"app/data/tweet_actions_scribe\"), UserActionsScribe = require(\"app/data/user_actions_scribe\"), ItemActionsScribe = require(\"app/data/item_actions_scribe\"), NavigationScribe = require(\"app/data/navigation_scribe\"), SimpleEventScribe = require(\"app/data/simple_event_scribe\");\n module.exports = initialize;\n });\n define(\"app/ui/navigation\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/full_path\",], function(module, require, exports) {\n function navigation() {\n this.defaultAttrs({\n spinnerContainer: \"body\",\n pushStateSelector: \"a.js-nav\",\n pageContainer: \"#page-container\",\n docContainer: \"#doc\",\n globalHeadingSelector: \".global-nav h1\",\n spinnerClass: \"pushing-state\",\n spinnerSelector: \".pushstate-spinner\",\n baseFoucClass: \"swift-loading\"\n }), this.JSBNG__navigate = function(a) {\n var b, c;\n if (((((((a.shiftKey || a.ctrlKey)) || a.metaKey)) || ((((a.which != undefined)) && ((a.which > 1))))))) {\n return;\n }\n ;\n ;\n b = $(a.target), c = b.closest(this.attr.pushStateSelector), ((((c.length && !a.isDefaultPrevented())) && (this.trigger(c, \"uiNavigate\", {\n href: c.attr(\"href\")\n }), a.preventDefault(), a.stopImmediatePropagation())));\n }, this.updatePage = function(a, b, c) {\n this.hideSpinner(), this.trigger(\"uiBeforePageChanged\", b), this.trigger(\"uiTeardown\", b), $(\"html\").attr(\"class\", ((((b.init_data.htmlClassNames + \" \")) + b.init_data.htmlFoucClassNames))), $(\"body\").attr(\"class\", b.body_class_names), this.select(\"docContainer\").attr(\"class\", b.doc_class_names), this.select(\"pageContainer\").attr(\"class\", b.page_container_class_names);\n var d = ((((b.banners && !b.fromCache)) ? ((b.banners + b.page)) : b.page));\n this.$node.JSBNG__find(b.init_data.viewContainer).html(d), ((b.isPopState || $(window).scrollTop(0))), using(b.module, function(a) {\n a(b.init_data), $(\"html\").removeClass(this.attr.baseFoucClass), this.trigger(\"uiPageChanged\", b);\n }.bind(this));\n }, this.showSpinner = function(a, b) {\n this.select(\"spinnerContainer\").addClass(this.attr.spinnerClass);\n }, this.hideSpinner = function(a, b) {\n this.select(\"spinnerContainer\").removeClass(this.attr.spinnerClass);\n }, this.addSpinner = function() {\n ((this.select(\"spinnerSelector\").length || $(\"\\u003Cdiv class=\\\"pushstate-spinner\\\"\\u003E\\u003C/div\\u003E\").insertAfter(this.select(\"globalHeadingSelector\"))));\n }, this.onPopState = function(a) {\n ((a.originalEvent.state && (((isSafari && (JSBNG__document.body.style.display = \"none\", JSBNG__document.body.offsetHeight, JSBNG__document.body.style.display = \"block\"))), this.trigger(\"uiNavigate\", {\n isPopState: !0,\n href: fullPath()\n }))));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", this.JSBNG__navigate), this.JSBNG__on(window, \"popstate\", this.onPopState), this.JSBNG__on(\"uiSwiftLoaded\", this.addSpinner), this.JSBNG__on(\"dataPageRefresh\", this.updatePage), this.JSBNG__on(\"dataPageFetch\", this.showSpinner);\n });\n };\n ;\n var component = require(\"core/component\"), fullPath = require(\"app/utils/full_path\"), Navigation = component(navigation), isSafari = (($.browser.safari === !0));\n module.exports = Navigation;\n });\n provide(\"app/utils/time\", function(a) {\n function b(a) {\n this.ms = a;\n };\n ;\n function c(a) {\n var c = {\n seconds: new b(((a * 1000))),\n minutes: new b(((((a * 1000)) * 60))),\n hours: new b(((((((a * 1000)) * 60)) * 60))),\n days: new b(((((((((a * 1000)) * 60)) * 60)) * 24)))\n };\n return c.second = c.seconds, c.minute = c.minutes, c.hour = c.hours, c.day = c.days, c;\n };\n ;\n c.now = function() {\n return (new JSBNG__Date).getTime();\n }, b.prototype.fromNow = function() {\n return new JSBNG__Date(((c.now() + this.ms)));\n }, b.prototype.ago = function() {\n return new JSBNG__Date(((c.now() - this.ms)));\n }, b.prototype.getTime = b.prototype.valueOf = function() {\n return this.ms;\n }, a(c);\n });\n define(\"app/utils/storage/core\", [\"module\",\"require\",\"exports\",\"core/compose\",\"core/advice\",], function(module, require, exports) {\n function JSBNG__localStorage() {\n this.initialize = function(a) {\n this.namespace = a, this.prefix = [\"__\",this.namespace,\"__:\",].join(\"\"), this.matcher = new RegExp(((\"^\" + this.prefix)));\n }, this.getItem = function(a) {\n return this.decode(window.JSBNG__localStorage.getItem(((this.prefix + a))));\n }, this.setItem = function(a, b) {\n try {\n return window.JSBNG__localStorage.setItem(((this.prefix + a)), this.encode(b));\n } catch (c) {\n return ((((window.DEBUG && window.DEBUG.enabled)) && JSBNG__console.error(c))), undefined;\n };\n ;\n }, this.removeItem = function(a) {\n return window.JSBNG__localStorage.removeItem(((this.prefix + a)));\n }, this.keys = function() {\n var a = [];\n for (var b = 0, c = window.JSBNG__localStorage.length, d; ((b < c)); b++) {\n d = window.JSBNG__localStorage.key(b), ((d.match(this.matcher) && a.push(d.replace(this.matcher, \"\"))));\n ;\n };\n ;\n return a;\n }, this.clear = function() {\n this.keys().forEach(function(a) {\n this.removeItem(a);\n }, this);\n }, this.clearAll = function() {\n window.JSBNG__localStorage.clear();\n };\n };\n ;\n function userData() {\n function b(b, c) {\n var d = c.xmlDocument.documentElement;\n a[b] = {\n };\n while (d.firstChild) {\n d.removeChild(d.firstChild);\n ;\n };\n ;\n c.save(b);\n };\n ;\n function c(a) {\n return JSBNG__document.getElementById(((\"__storage_\" + a)));\n };\n ;\n var a = {\n };\n this.initialize = function(b) {\n this.namespace = b, (((this.dataStore = c(this.namespace)) || this.createStorageElement())), this.xmlDoc = this.dataStore.xmlDocument, this.xmlDocEl = this.xmlDoc.documentElement, a[this.namespace] = ((a[this.namespace] || {\n }));\n }, this.createStorageElement = function() {\n this.dataStore = JSBNG__document.createElement(\"div\"), this.dataStore.id = ((\"__storage_\" + this.namespace)), this.dataStore.style.display = \"none\", JSBNG__document.appendChild(this.dataStore), this.dataStore.addBehavior(\"#default#userData\"), this.dataStore.load(this.namespace);\n }, this.getNodeByKey = function(b) {\n var c = this.xmlDocEl.childNodes, d;\n if (d = a[this.namespace][b]) {\n return d;\n }\n ;\n ;\n for (var e = 0, f = c.length; ((e < f)); e++) {\n d = c.item(e);\n if (((d.getAttribute(\"key\") == b))) {\n return a[this.namespace][b] = d, d;\n }\n ;\n ;\n };\n ;\n return null;\n }, this.getItem = function(a) {\n var b = this.getNodeByKey(a), c = null;\n return ((b && (c = b.getAttribute(\"value\")))), this.decode(c);\n }, this.setItem = function(b, c) {\n var d = this.getNodeByKey(b);\n return ((d ? d.setAttribute(\"value\", this.encode(c)) : (d = this.xmlDoc.createNode(1, \"item\", \"\"), d.setAttribute(\"key\", b), d.setAttribute(\"value\", this.encode(c)), this.xmlDocEl.appendChild(d), a[this.namespace][b] = d))), this.dataStore.save(this.namespace), c;\n }, this.removeItem = function(b) {\n var c = this.getNodeByKey(b);\n ((c && (this.xmlDocEl.removeChild(c), delete a[this.namespace][b]))), this.dataStore.save(this.namespace);\n }, this.keys = function() {\n var a = this.xmlDocEl.childNodes.length, b = [];\n for (var c = 0; ((c < a)); c++) {\n b.push(this.xmlDocEl.childNodes[c].getAttribute(\"key\"));\n ;\n };\n ;\n return b;\n }, this.clear = function() {\n b(this.namespace, this.dataStore);\n }, this.clearAll = function() {\n {\n var fin50keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin50i = (0);\n var d;\n for (; (fin50i < fin50keys.length); (fin50i++)) {\n ((d) = (fin50keys[fin50i]));\n {\n b(d, c(d)), a[d] = {\n };\n ;\n };\n };\n };\n ;\n };\n };\n ;\n function noStorage() {\n this.initialize = $.noop, this.getNodeByKey = function(a) {\n return null;\n }, this.getItem = function(a) {\n return null;\n }, this.setItem = function(a, b) {\n return b;\n }, this.removeItem = function(a) {\n return null;\n }, this.keys = function() {\n return [];\n }, this.clear = $.noop, this.clearAll = $.noop;\n };\n ;\n function memory() {\n this.initialize = function(a) {\n this.namespace = a, ((memoryStore[this.namespace] || (memoryStore[this.namespace] = {\n }))), this.store = memoryStore[this.namespace];\n }, this.getItem = function(a) {\n return ((this.store[a] ? this.decode(this.store[a]) : undefined));\n }, this.setItem = function(a, b) {\n return this.store[a] = this.encode(b);\n }, this.removeItem = function(a) {\n delete this.store[a];\n }, this.keys = function() {\n return Object.keys(this.store);\n }, this.clear = function() {\n this.store = memoryStore[this.namespace] = {\n };\n }, this.clearAll = function() {\n memoryStore = {\n };\n };\n };\n ;\n function browserStore() {\n ((supportsLocalStorage() ? JSBNG__localStorage.call(this) : ((JSBNG__document.documentElement.addBehavior ? noStorage.call(this) : memory.call(this)))));\n };\n ;\n function supportsLocalStorage() {\n if (((doesLocalStorage === undefined))) {\n try {\n window.JSBNG__localStorage.setItem(\"~~~~\", 1), window.JSBNG__localStorage.removeItem(\"~~~~\"), doesLocalStorage = !0;\n } catch (a) {\n doesLocalStorage = !1;\n };\n }\n ;\n ;\n return doesLocalStorage;\n };\n ;\n function encoding() {\n this.encode = function(a) {\n return ((((a === undefined)) && (a = null))), JSON.stringify(a);\n }, this.decode = function(a) {\n return JSON.parse(a);\n };\n };\n ;\n function CoreStorage() {\n ((arguments.length && this.initialize.apply(this, arguments)));\n };\n ;\n var compose = require(\"core/compose\"), advice = require(\"core/advice\"), memoryStore = {\n }, doesLocalStorage;\n compose.mixin(CoreStorage.prototype, [encoding,browserStore,advice.withAdvice,]), CoreStorage.clearAll = CoreStorage.prototype.clearAll, module.exports = CoreStorage;\n });\n define(\"app/data/notifications\", [\"module\",\"require\",\"exports\",\"core/clock\",\"app/utils/storage/core\",\"app/utils/time\",], function(module, require, exports) {\n function JSBNG__Notification(a, b, c, d) {\n this.key = b, this.timestamp = 0, this.active = a, this.seenFirstResponse = !1, this.pollEvent = c, this.paramAdder = d;\n };\n ;\n function Notifications() {\n this.entries = [];\n };\n ;\n var clock = require(\"core/clock\"), JSBNG__Storage = require(\"app/utils/storage/core\"), time = require(\"app/utils/time\"), pollDelay = 20000, storage = new JSBNG__Storage(\"DM\"), filteredEndpoints = [\"/i/users/recommendations\",\"/i/timeline\",\"/i/profiles/show\",\"/messages\",];\n JSBNG__Notification.prototype = {\n reset: function() {\n this.timestamp = time.now();\n },\n isResponseValid: function(a) {\n return ((((((((((this.active && a)) && a[this.key])) && a.notCached)) && ((a[this.key].JSBNG__status == \"ok\")))) && ((a[this.key].response !== null))));\n },\n update: function(a) {\n ((this.isResponseValid(a) ? this.reset() : ((((!this.seenFirstResponse && this.pollEvent)) && $(JSBNG__document).trigger(this.pollEvent))))), this.seenFirstResponse = !0;\n },\n shouldPoll: function() {\n return ((((time.now() - this.timestamp)) > pollDelay));\n },\n addParam: function(a) {\n this.paramAdder(a);\n }\n }, Notifications.prototype = {\n init: function(a) {\n this.initialized = !0, this.dm = new JSBNG__Notification(a.notifications_dm, \"d\", \"uiDMPoll\", this.addDMData), this.connect = new JSBNG__Notification(a.notifications_timeline, \"t\", null, function() {\n \n }), this.spoonbill = new JSBNG__Notification(a.notifications_spoonbill, \"n\", null, function() {\n \n }), this.entries = [this.dm,this.connect,this.spoonbill,], ((a.notifications_dm_poll_scale && (pollDelay = ((a.notifications_dm_poll_scale * 1000)))));\n },\n getPollDelay: function() {\n return pollDelay;\n },\n addDMData: function(a) {\n a.oldest_unread_id = ((storage.getItem(\"oldestUnreadMessageId\") || 0));\n },\n updateNotificationState: function(a) {\n this.entries.forEach(function(b) {\n b.update(a);\n });\n },\n resetDMState: function(a, b) {\n this.dm.reset();\n },\n shouldPoll: function() {\n return ((this.initialized ? ((this.dm.active ? this.dm.shouldPoll() : !1)) : !1));\n },\n extraParameters: function(a) {\n if (((!a || !this.shouldPoll()))) {\n return {\n };\n }\n ;\n ;\n var b = {\n };\n return ((filteredEndpoints.some(function(b) {\n return ((a.indexOf(b) == 0));\n }) && this.entries.forEach(function(a) {\n a.addParam(b);\n }))), b;\n }\n }, module.exports = new Notifications;\n });\n provide(\"app/utils/querystring\", function(a) {\n function b(a) {\n return encodeURIComponent(a).replace(/\\+/g, \"%2B\");\n };\n ;\n function c(a) {\n return decodeURIComponent(a.replace(/\\+/g, \" \"));\n };\n ;\n function d(a) {\n var c = [];\n {\n var fin51keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin51i = (0);\n var d;\n for (; (fin51i < fin51keys.length); (fin51i++)) {\n ((d) = (fin51keys[fin51i]));\n {\n ((((((a[d] !== null)) && ((typeof a[d] != \"undefined\")))) && c.push(((((b(d) + \"=\")) + b(a[d]))))));\n ;\n };\n };\n };\n ;\n return c.sort().join(\"&\");\n };\n ;\n function e(a) {\n var b = {\n }, d, e, f, g;\n if (a) {\n d = a.split(\"&\");\n for (g = 0; f = d[g]; g++) {\n e = f.split(\"=\"), ((((e.length == 2)) && (b[c(e[0])] = c(e[1]))));\n ;\n };\n ;\n }\n ;\n ;\n return b;\n };\n ;\n a({\n decode: e,\n encode: d,\n encodePart: b,\n decodePart: c\n });\n });\n define(\"app/utils/params\", [\"module\",\"require\",\"exports\",\"app/utils/querystring\",], function(module, require, exports) {\n var qs = require(\"app/utils/querystring\"), fromQuery = function(a) {\n var b = a.search.substr(1);\n return qs.decode(b);\n }, fromFragment = function(a) {\n var b = a.href, c = b.indexOf(\"#\"), d = ((((c < 0)) ? \"\" : b.substring(((c + 1)))));\n return qs.decode(d);\n }, combined = function(a) {\n var b = {\n }, c = fromQuery(a), d = fromFragment(a);\n {\n var fin52keys = ((window.top.JSBNG_Replay.forInKeys)((c))), fin52i = (0);\n var e;\n for (; (fin52i < fin52keys.length); (fin52i++)) {\n ((e) = (fin52keys[fin52i]));\n {\n ((c.hasOwnProperty(e) && (b[e] = c[e])));\n ;\n };\n };\n };\n ;\n {\n var fin53keys = ((window.top.JSBNG_Replay.forInKeys)((d))), fin53i = (0);\n var e;\n for (; (fin53i < fin53keys.length); (fin53i++)) {\n ((e) = (fin53keys[fin53i]));\n {\n ((d.hasOwnProperty(e) && (b[e] = d[e])));\n ;\n };\n };\n };\n ;\n return b;\n };\n module.exports = {\n combined: combined,\n fromQuery: fromQuery,\n fromFragment: fromFragment\n };\n });\n define(\"app/data/with_auth_token\", [\"module\",\"require\",\"exports\",\"app/utils/auth_token\",\"core/utils\",], function(module, require, exports) {\n function withAuthToken() {\n this.addAuthToken = function(b) {\n if (!authToken.get()) {\n throw \"addAuthToken requires a formAuthenticityToken\";\n }\n ;\n ;\n return b = ((b || {\n })), utils.merge(b, {\n authenticity_token: authToken.get()\n });\n }, this.addPHXAuthToken = function(b) {\n if (!authToken.get()) {\n throw \"addPHXAuthToken requires a formAuthenticityToken\";\n }\n ;\n ;\n return b = ((b || {\n })), utils.merge(b, {\n post_authenticity_token: authToken.get()\n });\n }, this.getAuthToken = function() {\n return this.attr.formAuthenticityToken;\n };\n };\n ;\n var authToken = require(\"app/utils/auth_token\"), utils = require(\"core/utils\");\n module.exports = withAuthToken;\n });\n deferred(\"$lib/gibberish-aes.js\", function() {\n (function(a) {\n var b = function() {\n var a = 14, c = 8, d = !1, e = function(a) {\n try {\n return unescape(encodeURIComponent(a));\n } catch (b) {\n throw \"Error on UTF-8 encode\";\n };\n ;\n }, f = function(a) {\n try {\n return decodeURIComponent(escape(a));\n } catch (b) {\n throw \"Bad Key\";\n };\n ;\n }, g = function(a) {\n var b = [], c, d;\n ((((a.length < 16)) && (c = ((16 - a.length)), b = [c,c,c,c,c,c,c,c,c,c,c,c,c,c,c,c,])));\n for (d = 0; ((d < a.length)); d++) {\n b[d] = a[d];\n ;\n };\n ;\n return b;\n }, h = function(a, b) {\n var c = \"\", d, e;\n if (b) {\n d = a[15];\n if (((d > 16))) {\n throw \"Decryption error: Maybe bad key\";\n }\n ;\n ;\n if (((d == 16))) {\n return \"\";\n }\n ;\n ;\n for (e = 0; ((e < ((16 - d)))); e++) {\n c += String.fromCharCode(a[e]);\n ;\n };\n ;\n }\n else for (e = 0; ((e < 16)); e++) {\n c += String.fromCharCode(a[e]);\n ;\n }\n ;\n ;\n return c;\n }, i = function(a) {\n var b = \"\", c;\n for (c = 0; ((c < a.length)); c++) {\n b += ((((((a[c] < 16)) ? \"0\" : \"\")) + a[c].toString(16)));\n ;\n };\n ;\n return b;\n }, j = function(a) {\n var b = [];\n return a.replace(/(..)/g, function(a) {\n b.push(parseInt(a, 16));\n }), b;\n }, k = function(a) {\n a = e(a);\n var b = [], c;\n for (c = 0; ((c < a.length)); c++) {\n b[c] = a.charCodeAt(c);\n ;\n };\n ;\n return b;\n }, l = function(b) {\n switch (b) {\n case 128:\n a = 10, c = 4;\n break;\n case 192:\n a = 12, c = 6;\n break;\n case 256:\n a = 14, c = 8;\n break;\n default:\n throw ((\"Invalid Key Size Specified:\" + b));\n };\n ;\n }, m = function(a) {\n var b = [], c;\n for (c = 0; ((c < a)); c++) {\n b = b.concat(Math.floor(((Math.JSBNG__random() * 256))));\n ;\n };\n ;\n return b;\n }, n = function(d, e) {\n var f = ((((a >= 12)) ? 3 : 2)), g = [], h = [], i = [], j = [], k = d.concat(e), l;\n i[0] = b.Hash.MD5(k), j = i[0];\n for (l = 1; ((l < f)); l++) {\n i[l] = b.Hash.MD5(i[((l - 1))].concat(k)), j = j.concat(i[l]);\n ;\n };\n ;\n return g = j.slice(0, ((4 * c))), h = j.slice(((4 * c)), ((((4 * c)) + 16))), {\n key: g,\n iv: h\n };\n }, o = function(a, b, c) {\n b = x(b);\n var d = Math.ceil(((a.length / 16))), e = [], f, h = [];\n for (f = 0; ((f < d)); f++) {\n e[f] = g(a.slice(((f * 16)), ((((f * 16)) + 16))));\n ;\n };\n ;\n ((((((a.length % 16)) === 0)) && (e.push([16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,]), d++)));\n for (f = 0; ((f < e.length)); f++) {\n e[f] = ((((f === 0)) ? w(e[f], c) : w(e[f], h[((f - 1))]))), h[f] = q(e[f], b);\n ;\n };\n ;\n return h;\n }, p = function(a, b, c, d) {\n b = x(b);\n var e = ((a.length / 16)), g = [], i, j = [], k = \"\";\n for (i = 0; ((i < e)); i++) {\n g.push(a.slice(((i * 16)), ((((i + 1)) * 16))));\n ;\n };\n ;\n for (i = ((g.length - 1)); ((i >= 0)); i--) {\n j[i] = r(g[i], b), j[i] = ((((i === 0)) ? w(j[i], c) : w(j[i], g[((i - 1))])));\n ;\n };\n ;\n for (i = 0; ((i < ((e - 1)))); i++) {\n k += h(j[i]);\n ;\n };\n ;\n return k += h(j[i], !0), ((d ? k : f(k)));\n }, q = function(b, c) {\n d = !1;\n var e = v(b, c, 0), f;\n for (f = 1; ((f < ((a + 1)))); f++) {\n e = s(e), e = t(e), ((((f < a)) && (e = u(e)))), e = v(e, c, f);\n ;\n };\n ;\n return e;\n }, r = function(b, c) {\n d = !0;\n var e = v(b, c, a), f;\n for (f = ((a - 1)); ((f > -1)); f--) {\n e = t(e), e = s(e), e = v(e, c, f), ((((f > 0)) && (e = u(e))));\n ;\n };\n ;\n return e;\n }, s = function(a) {\n var b = ((d ? B : A)), c = [], e;\n for (e = 0; ((e < 16)); e++) {\n c[e] = b[a[e]];\n ;\n };\n ;\n return c;\n }, t = function(a) {\n var b = [], c = ((d ? [0,13,10,7,4,1,14,11,8,5,2,15,12,9,6,3,] : [0,5,10,15,4,9,14,3,8,13,2,7,12,1,6,11,])), e;\n for (e = 0; ((e < 16)); e++) {\n b[e] = a[c[e]];\n ;\n };\n ;\n return b;\n }, u = function(a) {\n var b = [], c;\n if (!d) {\n for (c = 0; ((c < 4)); c++) {\n b[((c * 4))] = ((((((D[a[((c * 4))]] ^ E[a[((1 + ((c * 4))))]])) ^ a[((2 + ((c * 4))))])) ^ a[((3 + ((c * 4))))])), b[((1 + ((c * 4))))] = ((((((a[((c * 4))] ^ D[a[((1 + ((c * 4))))]])) ^ E[a[((2 + ((c * 4))))]])) ^ a[((3 + ((c * 4))))])), b[((2 + ((c * 4))))] = ((((((a[((c * 4))] ^ a[((1 + ((c * 4))))])) ^ D[a[((2 + ((c * 4))))]])) ^ E[a[((3 + ((c * 4))))]])), b[((3 + ((c * 4))))] = ((((((E[a[((c * 4))]] ^ a[((1 + ((c * 4))))])) ^ a[((2 + ((c * 4))))])) ^ D[a[((3 + ((c * 4))))]]));\n ;\n };\n }\n else {\n for (c = 0; ((c < 4)); c++) {\n b[((c * 4))] = ((((((I[a[((c * 4))]] ^ G[a[((1 + ((c * 4))))]])) ^ H[a[((2 + ((c * 4))))]])) ^ F[a[((3 + ((c * 4))))]])), b[((1 + ((c * 4))))] = ((((((F[a[((c * 4))]] ^ I[a[((1 + ((c * 4))))]])) ^ G[a[((2 + ((c * 4))))]])) ^ H[a[((3 + ((c * 4))))]])), b[((2 + ((c * 4))))] = ((((((H[a[((c * 4))]] ^ F[a[((1 + ((c * 4))))]])) ^ I[a[((2 + ((c * 4))))]])) ^ G[a[((3 + ((c * 4))))]])), b[((3 + ((c * 4))))] = ((((((G[a[((c * 4))]] ^ H[a[((1 + ((c * 4))))]])) ^ F[a[((2 + ((c * 4))))]])) ^ I[a[((3 + ((c * 4))))]]));\n ;\n };\n }\n ;\n ;\n return b;\n }, v = function(a, b, c) {\n var d = [], e;\n for (e = 0; ((e < 16)); e++) {\n d[e] = ((a[e] ^ b[c][e]));\n ;\n };\n ;\n return d;\n }, w = function(a, b) {\n var c = [], d;\n for (d = 0; ((d < 16)); d++) {\n c[d] = ((a[d] ^ b[d]));\n ;\n };\n ;\n return c;\n }, x = function(b) {\n var d = [], e = [], f, g, h, i = [], j;\n for (f = 0; ((f < c)); f++) {\n g = [b[((4 * f))],b[((((4 * f)) + 1))],b[((((4 * f)) + 2))],b[((((4 * f)) + 3))],], d[f] = g;\n ;\n };\n ;\n for (f = c; ((f < ((4 * ((a + 1)))))); f++) {\n d[f] = [];\n for (h = 0; ((h < 4)); h++) {\n e[h] = d[((f - 1))][h];\n ;\n };\n ;\n ((((((f % c)) === 0)) ? (e = y(z(e)), e[0] ^= C[((((f / c)) - 1))]) : ((((((c > 6)) && ((((f % c)) == 4)))) && (e = y(e))))));\n for (h = 0; ((h < 4)); h++) {\n d[f][h] = ((d[((f - c))][h] ^ e[h]));\n ;\n };\n ;\n };\n ;\n for (f = 0; ((f < ((a + 1)))); f++) {\n i[f] = [];\n for (j = 0; ((j < 4)); j++) {\n i[f].push(d[((((f * 4)) + j))][0], d[((((f * 4)) + j))][1], d[((((f * 4)) + j))][2], d[((((f * 4)) + j))][3]);\n ;\n };\n ;\n };\n ;\n return i;\n }, y = function(a) {\n for (var b = 0; ((b < 4)); b++) {\n a[b] = A[a[b]];\n ;\n };\n ;\n return a;\n }, z = function(a) {\n var b = a[0], c;\n for (c = 0; ((c < 4)); c++) {\n a[c] = a[((c + 1))];\n ;\n };\n ;\n return a[3] = b, a;\n }, A = [99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22,], B = [82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125,], C = [1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145,], D = [0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,27,25,31,29,19,17,23,21,11,9,15,13,3,1,7,5,59,57,63,61,51,49,55,53,43,41,47,45,35,33,39,37,91,89,95,93,83,81,87,85,75,73,79,77,67,65,71,69,123,121,127,125,115,113,119,117,107,105,111,109,99,97,103,101,155,153,159,157,147,145,151,149,139,137,143,141,131,129,135,133,187,185,191,189,179,177,183,181,171,169,175,173,163,161,167,165,219,217,223,221,211,209,215,213,203,201,207,205,195,193,199,197,251,249,255,253,243,241,247,245,235,233,239,237,227,225,231,229,], E = [0,3,6,5,12,15,10,9,24,27,30,29,20,23,18,17,48,51,54,53,60,63,58,57,40,43,46,45,36,39,34,33,96,99,102,101,108,111,106,105,120,123,126,125,116,119,114,113,80,83,86,85,92,95,90,89,72,75,78,77,68,71,66,65,192,195,198,197,204,207,202,201,216,219,222,221,212,215,210,209,240,243,246,245,252,255,250,249,232,235,238,237,228,231,226,225,160,163,166,165,172,175,170,169,184,187,190,189,180,183,178,177,144,147,150,149,156,159,154,153,136,139,142,141,132,135,130,129,155,152,157,158,151,148,145,146,131,128,133,134,143,140,137,138,171,168,173,174,167,164,161,162,179,176,181,182,191,188,185,186,251,248,253,254,247,244,241,242,227,224,229,230,239,236,233,234,203,200,205,206,199,196,193,194,211,208,213,214,223,220,217,218,91,88,93,94,87,84,81,82,67,64,69,70,79,76,73,74,107,104,109,110,103,100,97,98,115,112,117,118,127,124,121,122,59,56,61,62,55,52,49,50,35,32,37,38,47,44,41,42,11,8,13,14,7,4,1,2,19,16,21,22,31,28,25,26,], F = [0,9,18,27,36,45,54,63,72,65,90,83,108,101,126,119,144,153,130,139,180,189,166,175,216,209,202,195,252,245,238,231,59,50,41,32,31,22,13,4,115,122,97,104,87,94,69,76,171,162,185,176,143,134,157,148,227,234,241,248,199,206,213,220,118,127,100,109,82,91,64,73,62,55,44,37,26,19,8,1,230,239,244,253,194,203,208,217,174,167,188,181,138,131,152,145,77,68,95,86,105,96,123,114,5,12,23,30,33,40,51,58,221,212,207,198,249,240,235,226,149,156,135,142,177,184,163,170,236,229,254,247,200,193,218,211,164,173,182,191,128,137,146,155,124,117,110,103,88,81,74,67,52,61,38,47,16,25,2,11,215,222,197,204,243,250,225,232,159,150,141,132,187,178,169,160,71,78,85,92,99,106,113,120,15,6,29,20,43,34,57,48,154,147,136,129,190,183,172,165,210,219,192,201,246,255,228,237,10,3,24,17,46,39,60,53,66,75,80,89,102,111,116,125,161,168,179,186,133,140,151,158,233,224,251,242,205,196,223,214,49,56,35,42,21,28,7,14,121,112,107,98,93,84,79,70,], G = [0,11,22,29,44,39,58,49,88,83,78,69,116,127,98,105,176,187,166,173,156,151,138,129,232,227,254,245,196,207,210,217,123,112,109,102,87,92,65,74,35,40,53,62,15,4,25,18,203,192,221,214,231,236,241,250,147,152,133,142,191,180,169,162,246,253,224,235,218,209,204,199,174,165,184,179,130,137,148,159,70,77,80,91,106,97,124,119,30,21,8,3,50,57,36,47,141,134,155,144,161,170,183,188,213,222,195,200,249,242,239,228,61,54,43,32,17,26,7,12,101,110,115,120,73,66,95,84,247,252,225,234,219,208,205,198,175,164,185,178,131,136,149,158,71,76,81,90,107,96,125,118,31,20,9,2,51,56,37,46,140,135,154,145,160,171,182,189,212,223,194,201,248,243,238,229,60,55,42,33,16,27,6,13,100,111,114,121,72,67,94,85,1,10,23,28,45,38,59,48,89,82,79,68,117,126,99,104,177,186,167,172,157,150,139,128,233,226,255,244,197,206,211,216,122,113,108,103,86,93,64,75,34,41,52,63,14,5,24,19,202,193,220,215,230,237,240,251,146,153,132,143,190,181,168,163,], H = [0,13,26,23,52,57,46,35,104,101,114,127,92,81,70,75,208,221,202,199,228,233,254,243,184,181,162,175,140,129,150,155,187,182,161,172,143,130,149,152,211,222,201,196,231,234,253,240,107,102,113,124,95,82,69,72,3,14,25,20,55,58,45,32,109,96,119,122,89,84,67,78,5,8,31,18,49,60,43,38,189,176,167,170,137,132,147,158,213,216,207,194,225,236,251,246,214,219,204,193,226,239,248,245,190,179,164,169,138,135,144,157,6,11,28,17,50,63,40,37,110,99,116,121,90,87,64,77,218,215,192,205,238,227,244,249,178,191,168,165,134,139,156,145,10,7,16,29,62,51,36,41,98,111,120,117,86,91,76,65,97,108,123,118,85,88,79,66,9,4,19,30,61,48,39,42,177,188,171,166,133,136,159,146,217,212,195,206,237,224,247,250,183,186,173,160,131,142,153,148,223,210,197,200,235,230,241,252,103,106,125,112,83,94,73,68,15,2,21,24,59,54,33,44,12,1,22,27,56,53,34,47,100,105,126,115,80,93,74,71,220,209,198,203,232,229,242,255,180,185,174,163,128,141,154,151,], I = [0,14,28,18,56,54,36,42,112,126,108,98,72,70,84,90,224,238,252,242,216,214,196,202,144,158,140,130,168,166,180,186,219,213,199,201,227,237,255,241,171,165,183,185,147,157,143,129,59,53,39,41,3,13,31,17,75,69,87,89,115,125,111,97,173,163,177,191,149,155,137,135,221,211,193,207,229,235,249,247,77,67,81,95,117,123,105,103,61,51,33,47,5,11,25,23,118,120,106,100,78,64,82,92,6,8,26,20,62,48,34,44,150,152,138,132,174,160,178,188,230,232,250,244,222,208,194,204,65,79,93,83,121,119,101,107,49,63,45,35,9,7,21,27,161,175,189,179,153,151,133,139,209,223,205,195,233,231,245,251,154,148,134,136,162,172,190,176,234,228,246,248,210,220,206,192,122,116,102,104,66,76,94,80,10,4,22,24,50,60,46,32,236,226,240,254,212,218,200,198,156,146,128,142,164,170,184,182,12,2,16,30,52,58,40,38,124,114,96,110,68,74,88,86,55,57,43,37,15,1,19,29,71,73,91,85,127,113,99,109,215,217,203,197,239,225,243,253,167,169,187,181,159,145,131,141,], J = function(a, b, c) {\n var d = m(8), e = n(k(b), d), f = e.key, g = e.iv, h, i = [[83,97,108,116,101,100,95,95,].concat(d),];\n return ((c || (a = k(a)))), h = o(a, f, g), h = i.concat(h), M.encode(h);\n }, K = function(a, b, c) {\n var d = M.decode(a), e = d.slice(8, 16), f = n(k(b), e), g = f.key, h = f.iv;\n return d = d.slice(16, d.length), a = p(d, g, h, c), a;\n }, L = function(a) {\n function b(a, b) {\n return ((((a << b)) | ((a >>> ((32 - b))))));\n };\n ;\n function c(a, b) {\n var c, d, e, f, g;\n return e = ((a & 2147483648)), f = ((b & 2147483648)), c = ((a & 1073741824)), d = ((b & 1073741824)), g = ((((a & 1073741823)) + ((b & 1073741823)))), ((((c & d)) ? ((((((g ^ 2147483648)) ^ e)) ^ f)) : ((((c | d)) ? ((((g & 1073741824)) ? ((((((g ^ 3221225472)) ^ e)) ^ f)) : ((((((g ^ 1073741824)) ^ e)) ^ f)))) : ((((g ^ e)) ^ f))))));\n };\n ;\n function d(a, b, c) {\n return ((((a & b)) | ((~a & c))));\n };\n ;\n function e(a, b, c) {\n return ((((a & c)) | ((b & ~c))));\n };\n ;\n function f(a, b, c) {\n return ((((a ^ b)) ^ c));\n };\n ;\n function g(a, b, c) {\n return ((b ^ ((a | ~c))));\n };\n ;\n function h(a, e, f, g, h, i, j) {\n return a = c(a, c(c(d(e, f, g), h), j)), c(b(a, i), e);\n };\n ;\n function i(a, d, f, g, h, i, j) {\n return a = c(a, c(c(e(d, f, g), h), j)), c(b(a, i), d);\n };\n ;\n function j(a, d, e, g, h, i, j) {\n return a = c(a, c(c(f(d, e, g), h), j)), c(b(a, i), d);\n };\n ;\n function k(a, d, e, f, h, i, j) {\n return a = c(a, c(c(g(d, e, f), h), j)), c(b(a, i), d);\n };\n ;\n function l(a) {\n var b, c = a.length, d = ((c + 8)), e = ((((d - ((d % 64)))) / 64)), f = ((((e + 1)) * 16)), g = [], h = 0, i = 0;\n while (((i < c))) {\n b = ((((i - ((i % 4)))) / 4)), h = ((((i % 4)) * 8)), g[b] = ((g[b] | ((a[i] << h)))), i++;\n ;\n };\n ;\n return b = ((((i - ((i % 4)))) / 4)), h = ((((i % 4)) * 8)), g[b] = ((g[b] | ((128 << h)))), g[((f - 2))] = ((c << 3)), g[((f - 1))] = ((c >>> 29)), g;\n };\n ;\n function m(a) {\n var b, c, d = [];\n for (c = 0; ((c <= 3)); c++) {\n b = ((((a >>> ((c * 8)))) & 255)), d = d.concat(b);\n ;\n };\n ;\n return d;\n };\n ;\n var n = [], o, p, q, r, s, t, u, v, w, x = 7, y = 12, z = 17, A = 22, B = 5, C = 9, D = 14, E = 20, F = 4, G = 11, H = 16, I = 23, J = 6, K = 10, L = 15, M = 21;\n n = l(a), t = 1732584193, u = 4023233417, v = 2562383102, w = 271733878;\n for (o = 0; ((o < n.length)); o += 16) {\n p = t, q = u, r = v, s = w, t = h(t, u, v, w, n[((o + 0))], x, 3614090360), w = h(w, t, u, v, n[((o + 1))], y, 3905402710), v = h(v, w, t, u, n[((o + 2))], z, 606105819), u = h(u, v, w, t, n[((o + 3))], A, 3250441966), t = h(t, u, v, w, n[((o + 4))], x, 4118548399), w = h(w, t, u, v, n[((o + 5))], y, 1200080426), v = h(v, w, t, u, n[((o + 6))], z, 2821735955), u = h(u, v, w, t, n[((o + 7))], A, 4249261313), t = h(t, u, v, w, n[((o + 8))], x, 1770035416), w = h(w, t, u, v, n[((o + 9))], y, 2336552879), v = h(v, w, t, u, n[((o + 10))], z, 4294925233), u = h(u, v, w, t, n[((o + 11))], A, 2304563134), t = h(t, u, v, w, n[((o + 12))], x, 1804603682), w = h(w, t, u, v, n[((o + 13))], y, 4254626195), v = h(v, w, t, u, n[((o + 14))], z, 2792965006), u = h(u, v, w, t, n[((o + 15))], A, 1236535329), t = i(t, u, v, w, n[((o + 1))], B, 4129170786), w = i(w, t, u, v, n[((o + 6))], C, 3225465664), v = i(v, w, t, u, n[((o + 11))], D, 643717713), u = i(u, v, w, t, n[((o + 0))], E, 3921069994), t = i(t, u, v, w, n[((o + 5))], B, 3593408605), w = i(w, t, u, v, n[((o + 10))], C, 38016083), v = i(v, w, t, u, n[((o + 15))], D, 3634488961), u = i(u, v, w, t, n[((o + 4))], E, 3889429448), t = i(t, u, v, w, n[((o + 9))], B, 568446438), w = i(w, t, u, v, n[((o + 14))], C, 3275163606), v = i(v, w, t, u, n[((o + 3))], D, 4107603335), u = i(u, v, w, t, n[((o + 8))], E, 1163531501), t = i(t, u, v, w, n[((o + 13))], B, 2850285829), w = i(w, t, u, v, n[((o + 2))], C, 4243563512), v = i(v, w, t, u, n[((o + 7))], D, 1735328473), u = i(u, v, w, t, n[((o + 12))], E, 2368359562), t = j(t, u, v, w, n[((o + 5))], F, 4294588738), w = j(w, t, u, v, n[((o + 8))], G, 2272392833), v = j(v, w, t, u, n[((o + 11))], H, 1839030562), u = j(u, v, w, t, n[((o + 14))], I, 4259657740), t = j(t, u, v, w, n[((o + 1))], F, 2763975236), w = j(w, t, u, v, n[((o + 4))], G, 1272893353), v = j(v, w, t, u, n[((o + 7))], H, 4139469664), u = j(u, v, w, t, n[((o + 10))], I, 3200236656), t = j(t, u, v, w, n[((o + 13))], F, 681279174), w = j(w, t, u, v, n[((o + 0))], G, 3936430074), v = j(v, w, t, u, n[((o + 3))], H, 3572445317), u = j(u, v, w, t, n[((o + 6))], I, 76029189), t = j(t, u, v, w, n[((o + 9))], F, 3654602809), w = j(w, t, u, v, n[((o + 12))], G, 3873151461), v = j(v, w, t, u, n[((o + 15))], H, 530742520), u = j(u, v, w, t, n[((o + 2))], I, 3299628645), t = k(t, u, v, w, n[((o + 0))], J, 4096336452), w = k(w, t, u, v, n[((o + 7))], K, 1126891415), v = k(v, w, t, u, n[((o + 14))], L, 2878612391), u = k(u, v, w, t, n[((o + 5))], M, 4237533241), t = k(t, u, v, w, n[((o + 12))], J, 1700485571), w = k(w, t, u, v, n[((o + 3))], K, 2399980690), v = k(v, w, t, u, n[((o + 10))], L, 4293915773), u = k(u, v, w, t, n[((o + 1))], M, 2240044497), t = k(t, u, v, w, n[((o + 8))], J, 1873313359), w = k(w, t, u, v, n[((o + 15))], K, 4264355552), v = k(v, w, t, u, n[((o + 6))], L, 2734768916), u = k(u, v, w, t, n[((o + 13))], M, 1309151649), t = k(t, u, v, w, n[((o + 4))], J, 4149444226), w = k(w, t, u, v, n[((o + 11))], K, 3174756917), v = k(v, w, t, u, n[((o + 2))], L, 718787259), u = k(u, v, w, t, n[((o + 9))], M, 3951481745), t = c(t, p), u = c(u, q), v = c(v, r), w = c(w, s);\n ;\n };\n ;\n return m(t).concat(m(u), m(v), m(w));\n }, M = function() {\n var a = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\", b = a.split(\"\"), c = function(a, c) {\n var d = [], e = \"\", f, g;\n totalChunks = Math.floor(((((a.length * 16)) / 3)));\n for (f = 0; ((f < ((a.length * 16)))); f++) {\n d.push(a[Math.floor(((f / 16)))][((f % 16))]);\n ;\n };\n ;\n for (f = 0; ((f < d.length)); f += 3) {\n e += b[((d[f] >> 2))], e += b[((((((d[f] & 3)) << 4)) | ((d[((f + 1))] >> 4))))], ((((d[((f + 1))] !== undefined)) ? e += b[((((((d[((f + 1))] & 15)) << 2)) | ((d[((f + 2))] >> 6))))] : e += \"=\")), ((((d[((f + 2))] !== undefined)) ? e += b[((d[((f + 2))] & 63))] : e += \"=\"));\n ;\n };\n ;\n g = ((e.slice(0, 64) + \"\\u000a\"));\n for (f = 1; ((f < Math.ceil(((e.length / 64))))); f++) {\n g += ((e.slice(((f * 64)), ((((f * 64)) + 64))) + ((((Math.ceil(((e.length / 64))) == ((f + 1)))) ? \"\" : \"\\u000a\"))));\n ;\n };\n ;\n return g;\n }, d = function(b) {\n b = b.replace(/\\n/g, \"\");\n var c = [], d = [], e = [], f;\n for (f = 0; ((f < b.length)); f += 4) {\n d[0] = a.indexOf(b.charAt(f)), d[1] = a.indexOf(b.charAt(((f + 1)))), d[2] = a.indexOf(b.charAt(((f + 2)))), d[3] = a.indexOf(b.charAt(((f + 3)))), e[0] = ((((d[0] << 2)) | ((d[1] >> 4)))), e[1] = ((((((d[1] & 15)) << 4)) | ((d[2] >> 2)))), e[2] = ((((((d[2] & 3)) << 6)) | d[3])), c.push(e[0], e[1], e[2]);\n ;\n };\n ;\n return c = c.slice(0, ((c.length - ((c.length % 16))))), c;\n };\n return ((((typeof Array.indexOf == \"function\")) && (a = b))), {\n encode: c,\n decode: d\n };\n }();\n return {\n size: l,\n h2a: j,\n expandKey: x,\n encryptBlock: q,\n decryptBlock: r,\n Decrypt: d,\n s2a: k,\n rawEncrypt: o,\n dec: K,\n openSSLKey: n,\n a2h: i,\n enc: J,\n Hash: {\n MD5: L\n },\n Base64: M\n };\n }();\n a.GibberishAES = b;\n })(window);\n });\n provide(\"app/utils/crypto/aes\", function(a) {\n using(\"$lib/gibberish-aes.js\", function() {\n var b = GibberishAES;\n window.GibberishAES = null, a(b);\n });\n });\n define(\"app/utils/storage/with_crypto\", [\"module\",\"require\",\"exports\",\"app/utils/crypto/aes\",], function(module, require, exports) {\n function withCrypto() {\n this.after(\"initialize\", function(a, b) {\n this.secret = b;\n }), this.around(\"getItem\", function(a, b) {\n try {\n return a(b);\n } catch (c) {\n return this.removeItem(b), null;\n };\n ;\n }), this.around(\"decode\", function(a, b) {\n return a(aes.dec(b, this.secret));\n }), this.around(\"encode\", function(a, b) {\n return aes.enc(a(b), this.secret);\n });\n };\n ;\n var aes = require(\"app/utils/crypto/aes\");\n module.exports = withCrypto;\n });\n define(\"app/utils/storage/with_expiry\", [\"module\",\"require\",\"exports\",\"app/utils/storage/core\",], function(module, require, exports) {\n function withExpiry() {\n this.now = function() {\n return (new JSBNG__Date).getTime();\n }, this.isExpired = function(a) {\n var b = this.ttl.getItem(a);\n return ((((((typeof b == \"number\")) && ((this.now() > b)))) ? !0 : !1));\n }, this.updateTTL = function(a, b) {\n ((((typeof b == \"number\")) && this.ttl.setItem(a, ((this.now() + b)))));\n }, this.getCacheAge = function(a, b) {\n var c = this.ttl.getItem(a);\n if (((c == null))) {\n return -1;\n }\n ;\n ;\n var d = ((c - b)), e = ((this.now() - d));\n return ((((e < 0)) ? -1 : Math.floor(((e / 3600000)))));\n }, this.after(\"initialize\", function() {\n this.ttl = new JSBNG__Storage(((this.namespace + \"_ttl\")));\n }), this.around(\"setItem\", function(a, b, c, d) {\n return ((((typeof d == \"number\")) ? this.ttl.setItem(b, ((this.now() + d))) : this.ttl.removeItem(b))), a(b, c);\n }), this.around(\"getItem\", function(a, b) {\n var c = this.ttl.getItem(b);\n return ((((((typeof c == \"number\")) && ((this.now() > c)))) && this.removeItem(b))), a(b);\n }), this.after(\"removeItem\", function(a) {\n this.ttl.removeItem(a);\n }), this.after(\"clear\", function() {\n this.ttl.clear();\n });\n };\n ;\n var JSBNG__Storage = require(\"app/utils/storage/core\");\n module.exports = withExpiry;\n });\n define(\"app/utils/storage/array/with_array\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withArray() {\n this.getArray = function(a) {\n return ((this.getItem(a) || []));\n }, this.push = function(a, b) {\n var c = this.getArray(a), d = c.push(b);\n return this.setItem(a, c), d;\n }, this.pushAll = function(a, b) {\n var c = this.getArray(a);\n return c.push.apply(c, b), this.setItem(a, c), c;\n };\n };\n ;\n module.exports = withArray;\n });\n define(\"app/utils/storage/array/with_max_elements\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/utils/storage/array/with_array\",], function(module, require, exports) {\n function withMaxElements() {\n compose.mixin(this, [withArray,]), this.maxElements = {\n }, this.getMaxElements = function(a) {\n return ((this.maxElements[a] || 0));\n }, this.setMaxElements = function(a, b) {\n this.maxElements[a] = b;\n }, this.before(\"push\", function(a, b) {\n this.makeRoomFor(a, 1);\n }), this.around(\"pushAll\", function(a, b, c) {\n return c = ((c || [])), this.makeRoomFor(b, c.length), a(b, c.slice(Math.max(0, ((c.length - this.getMaxElements(b))))));\n }), this.makeRoomFor = function(a, b) {\n var c = this.getArray(a), d = ((((c.length + b)) - this.getMaxElements(a)));\n ((((d > 0)) && (c.splice(0, d), this.setItem(a, c))));\n };\n };\n ;\n var compose = require(\"core/compose\"), withArray = require(\"app/utils/storage/array/with_array\");\n module.exports = withMaxElements;\n });\n define(\"app/utils/storage/array/with_unique_elements\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/utils/storage/array/with_array\",], function(module, require, exports) {\n function withUniqueElements() {\n compose.mixin(this, [withArray,]), this.before(\"push\", function(a, b) {\n var c = this.getArray(a);\n ((this.deleteElement(c, b) && this.setItem(a, c)));\n }), this.around(\"pushAll\", function(a, b, c) {\n c = ((c || []));\n var d = this.getArray(b), e = !1, f = [], g = {\n };\n return c.forEach(function(a) {\n ((g[a] || (e = ((this.deleteElement(d, a) || e)), g[a] = !0, f.push(a))));\n }, this), ((e && this.setItem(b, d))), a(b, f);\n }), this.deleteElement = function(a, b) {\n var c = -1;\n return (((((c = a.indexOf(b)) >= 0)) ? (a.splice(c, 1), !0) : !1));\n };\n };\n ;\n var compose = require(\"core/compose\"), withArray = require(\"app/utils/storage/array/with_array\");\n module.exports = withUniqueElements;\n });\n define(\"app/utils/storage/custom\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/utils/storage/core\",\"app/utils/storage/with_crypto\",\"app/utils/storage/with_expiry\",\"app/utils/storage/array/with_array\",\"app/utils/storage/array/with_max_elements\",\"app/utils/storage/array/with_unique_elements\",], function(module, require, exports) {\n function storageConstr(a) {\n var b = Object.keys(a).filter(function(b) {\n return a[b];\n }).sort().join(\",\"), c;\n if (c = lookup[b]) {\n return c;\n }\n ;\n ;\n c = function() {\n CoreStorage.apply(this, arguments);\n }, c.prototype = new CoreStorage;\n var d = [];\n return ((a.withCrypto && d.push(withCrypto))), ((a.withExpiry && d.push(withExpiry))), ((a.withArray && d.push(withArray))), ((a.withUniqueElements && d.push(withUniqueElements))), ((a.withMaxElements && d.push(withMaxElements))), ((((d.length > 0)) && compose.mixin(c.prototype, d))), lookup[b] = c, c;\n };\n ;\n var compose = require(\"core/compose\"), CoreStorage = require(\"app/utils/storage/core\"), withCrypto = require(\"app/utils/storage/with_crypto\"), withExpiry = require(\"app/utils/storage/with_expiry\"), withArray = require(\"app/utils/storage/array/with_array\"), withMaxElements = require(\"app/utils/storage/array/with_max_elements\"), withUniqueElements = require(\"app/utils/storage/array/with_unique_elements\"), lookup = {\n };\n module.exports = storageConstr;\n });\n define(\"app/data/with_data\", [\"module\",\"require\",\"exports\",\"core/compose\",\"core/i18n\",\"app/data/notifications\",\"app/utils/params\",\"app/data/with_auth_token\",\"app/utils/storage/custom\",\"app/utils/storage/core\",], function(module, require, exports) {\n function initializeXhrStorage() {\n ((xhrStorage || (xhrStorage = new CoreStorage(\"XHRNotes\"))));\n };\n ;\n function withData() {\n compose.mixin(this, [withAuthToken,]);\n var a = [];\n this.composeData = function(a, b) {\n return a = ((a || {\n })), ((b.eventData && (a.sourceEventData = b.eventData))), a;\n }, this.callSuccessHandler = function(a, b, c) {\n ((((typeof a == \"function\")) ? a(b) : this.trigger(a, b)));\n }, this.callErrorHandler = function(a, b, c) {\n ((((typeof a == \"function\")) ? a(b) : this.trigger(a, b)));\n }, this.createSuccessHandler = function(b, c) {\n return initializeXhrStorage(), function(d, e, f) {\n a.slice(a.indexOf(f), 1);\n var g = d, h = null, i = encodeURIComponent(c.url);\n if (((((d && d.hasOwnProperty(\"note\"))) && d.hasOwnProperty(\"JSBNG__inner\")))) {\n g = d.JSBNG__inner, h = d.note;\n var j = f.getResponseHeader(\"x-transaction\");\n ((((j && ((j != xhrStorage.getItem(i))))) && (h.notCached = !0, xhrStorage.setItem(i, j))));\n }\n ;\n ;\n g = this.composeData(g, c), ((c.cache_ttl && storage.setItem(i, {\n data: g,\n time: (new JSBNG__Date).getTime()\n }, c.cache_ttl))), this.callSuccessHandler(b, g, c), ((h && (notifications.updateNotificationState(h), ((h.notCached && this.trigger(\"dataNotificationsReceived\", h)))))), ((g.debug && this.trigger(\"dataSetDebugData\", g.debug)));\n }.bind(this);\n }, this.createErrorHandler = function(b, c) {\n return function(d) {\n a.slice(a.indexOf(d), 1);\n var e;\n try {\n e = JSON.parse(d.responseText), ((((((e && e.message)) && !this.attr.noShowError)) && this.trigger(\"uiShowError\", e)));\n } catch (f) {\n e = {\n xhr: {\n }\n }, ((((d && d.statusText)) && (e.xhr.statusText = d.statusText)));\n };\n ;\n ((e.message || (e.message = _(\"Internal server error.\")))), e = this.composeData(e, c), this.callErrorHandler(b, e, c);\n }.bind(this);\n }, this.sortData = function(a) {\n if (((!a || ((typeof a != \"object\"))))) {\n return a;\n }\n ;\n ;\n var b = {\n }, c = Object.keys(a).sort();\n return c.forEach(function(c) {\n b[c] = a[c];\n }), b;\n }, this.extractParams = function(a, b) {\n var c = {\n }, d = params.fromQuery(b);\n return Object.keys(d).forEach(function(b) {\n ((a[b] && (c[b] = d[b])));\n }), c;\n }, this.JSONRequest = function(b, c) {\n var d;\n if (b.cache_ttl) {\n ((storage || (storage = new StorageConstr(\"with_data\")))), d = storage.getItem(encodeURIComponent(b.url));\n if (((d && ((((new JSBNG__Date - d.time)) <= b.cache_ttl))))) {\n ((b.success && this.callSuccessHandler(b.success, d.data)));\n return;\n }\n ;\n ;\n }\n ;\n ;\n var e = ((((c == \"POST\")) || ((c == \"DELETE\"))));\n ((((e && ((b.isMutation === !1)))) && (e = !1))), delete b.isMutation, ((((this.trigger && e)) && this.trigger(\"dataPageMutated\"))), [\"url\",].forEach(function(a) {\n if (!b.hasOwnProperty(a)) {\n throw new Error(((\"getJSONRequest called without required option: \" + a)), arguments);\n }\n ;\n ;\n });\n var f = ((b.data || {\n })), g = b.headers;\n (((([\"GET\",\"POST\",].indexOf(c) < 0)) && (f = $.extend({\n _method: c\n }, f), c = \"POST\"))), ((((c == \"POST\")) && (f = this.addAuthToken(f), ((((g && g[\"X-PHX\"])) && (f = this.addPHXAuthToken(f)))))));\n var h = $.extend({\n lang: !0\n }, b.echoParams);\n f = $.extend(f, this.extractParams(h, window.JSBNG__location)), ((b.success && (b.success = this.createSuccessHandler(b.success, b)))), ((b.error && (b.error = this.createErrorHandler(b.error, b)))), $.extend(f, notifications.extraParameters(b.url));\n var i = $.ajax($.extend(b, {\n url: b.url,\n data: this.sortData(f),\n dataType: ((b.dataType || \"json\")),\n type: c\n }));\n return ((b.noAbortOnNavigate || a.push(i))), i;\n }, this.get = function(a) {\n return this.JSONRequest(a, \"GET\");\n }, this.post = function(a) {\n return this.JSONRequest(a, \"POST\");\n }, this.destroy = function(a) {\n return this.JSONRequest(a, \"DELETE\");\n }, this.abortAllXHR = function() {\n a.forEach(function(a) {\n ((((a && a.abort)) && a.abort()));\n }), a = [];\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataBeforeNavigate\", this.abortAllXHR);\n });\n };\n ;\n var compose = require(\"core/compose\"), _ = require(\"core/i18n\"), notifications = require(\"app/data/notifications\"), params = require(\"app/utils/params\"), withAuthToken = require(\"app/data/with_auth_token\"), customStorage = require(\"app/utils/storage/custom\"), CoreStorage = require(\"app/utils/storage/core\"), StorageConstr = customStorage({\n withExpiry: !0\n }), storage, xhrStorage;\n module.exports = withData;\n });\n define(\"app/data/navigation\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"core/registry\",\"app/utils/time\",\"app/utils/full_path\",\"app/data/with_data\",], function(module, require, exports) {\n function navigationData() {\n this.defaultAttrs({\n viewContainer: \"#page-container\",\n pushStateRequestHeaders: {\n \"X-Push-State-Request\": !0\n },\n pushState: !0,\n pushStateSupported: !0,\n pushStatePageLimit: 500000,\n assetsBasePath: \"/\",\n noTeardown: !0,\n init_data: {\n }\n });\n var a = /\\/a\\/(\\d+)/, b, c, d;\n this.pageCache = {\n }, this.pageCacheTTLs = {\n }, this.pageCacheScroll = {\n }, this.navigateUsingPushState = function(a, b) {\n var e = fullPath();\n d = b.href, c = b.isPopState;\n if (((((!c && ((b.href == e)))) && this.pageCache[e]))) {\n return;\n }\n ;\n ;\n this.getPageData(b.href);\n }, this.sweepPageCache = function() {\n var a = time.now();\n {\n var fin54keys = ((window.top.JSBNG_Replay.forInKeys)((this.pageCacheTTLs))), fin54i = (0);\n var b;\n for (; (fin54i < fin54keys.length); (fin54i++)) {\n ((b) = (fin54keys[fin54i]));\n {\n ((((a > this.pageCacheTTLs[b])) && (delete this.pageCache[b], delete this.pageCacheTTLs[b])));\n ;\n };\n };\n };\n ;\n }, this.hasDeployTimestampChanged = function(b) {\n var c = ((this.attr.assetsBasePath && this.attr.assetsBasePath.match(a))), d = ((b.init_data.assetsBasePath && b.init_data.assetsBasePath.match(a)));\n return ((((c && d)) && ((d[1] != c[1]))));\n }, this.getPageData = function(a) {\n var b;\n this.trigger(\"dataBeforeNavigate\"), ((this.attr.init_data.initialState && this.createInitialState())), this.sweepPageCache(), this.trigger(\"uiBeforeNewPageLoad\");\n if (b = this.pageCache[a]) b.fromCache = !0, this.pageDataReceived(a, b);\n else {\n this.trigger(\"dataPageFetch\");\n var c = this.attr.pushStateRequestHeaders, e = this.pageCacheScroll[a];\n ((e && (c = utils.merge(c, {\n TopViewportItem: e.topItem\n })))), this.get({\n headers: c,\n url: a,\n success: function(b) {\n var c;\n if (((((b.init_data && b.page)) && b.module))) {\n c = b.init_data.href, b.href = c;\n if (!b.init_data.pushState) {\n this.navigateTo(c);\n return;\n }\n ;\n ;\n if (this.hasDeployTimestampChanged(b)) {\n this.navigateTo(c);\n return;\n }\n ;\n ;\n if (((b.init_data.viewContainer != this.attr.viewContainer))) {\n this.attr.viewContainer = b.init_data.viewContainer, this.navigateTo(c);\n return;\n }\n ;\n ;\n this.cacheState(c, b);\n if (((d != a))) {\n return;\n }\n ;\n ;\n ((e && (b.scrollPosition = e))), this.pageDataReceived(c, b);\n }\n else this.navigateTo(((b.href || a)));\n ;\n ;\n }.bind(this),\n error: function(b) {\n this.navigateTo(a);\n }.bind(this)\n });\n }\n ;\n ;\n }, this.setTimelineScrollPosition = function(a, c) {\n this.pageCacheScroll[b] = c;\n }, this.updatePageState = function() {\n var a = this.pageCache[b];\n ((a && (a.page = this.select(\"viewContainer\").html(), this.pageCacheTTLs[b] = time(a.cache_ttl).seconds.fromNow().getTime(), ((((a.page.length > this.attr.pushStatePageLimit)) && (delete this.pageCache[b], delete this.pageCacheTTLs[b]))))));\n }, this.cacheState = function(a, b) {\n this.pageCache[a] = b, this.pageCacheTTLs[a] = time(b.cache_ttl).seconds.fromNow().getTime();\n }, this.pageDataReceived = function(a, b) {\n ((((a != fullPath())) && JSBNG__history.pushState({\n }, b.title, a))), b.isPopState = c, this.trigger(\"dataPageRefresh\", b);\n }, this.swiftTeardownAll = function() {\n Object.keys(registry.allInstances).forEach(function(a) {\n var b = registry.allInstances[a].instance;\n ((b.attr.noTeardown || b.teardown()));\n });\n }, this.doTeardown = function(a, c) {\n this.swiftTeardownAll(), ((((c.href != b)) && this.updatePageState()));\n }, this.createInitialState = function() {\n var a = utils.merge(this.attr.init_data.initialState, !0);\n a.init_data = utils.merge(this.attr.init_data, !0), delete a.init_data.initialState, this.attr.init_data.initialState = null, this.cacheState(b, a), JSBNG__history.replaceState({\n }, a.title, b);\n }, this.resetPageCache = function(a, b) {\n this.pageCache = {\n }, this.pageCacheTTLs = {\n };\n }, this.removePageFromCache = function(a, b) {\n var c = b.href;\n ((this.pageCache[c] && (delete this.pageCache[c], delete this.pageCacheTTLs[c])));\n }, this.navigateTo = function(a) {\n JSBNG__location.href = a;\n }, this.navigateUsingRedirect = function(a, c) {\n var d = c.href;\n ((((d != b)) && this.navigateTo(d)));\n }, this.destroyCurrentPageState = function() {\n JSBNG__history.replaceState(null, JSBNG__document.title, b);\n }, this.resetStateVariables = function() {\n b = fullPath(), c = !1, d = null;\n }, this.after(\"initialize\", function() {\n ((((this.attr.pushState && this.attr.pushStateSupported)) ? (this.JSBNG__on(\"uiSwiftLoaded uiPageChanged\", this.resetStateVariables), this.JSBNG__on(\"uiNavigate\", this.navigateUsingPushState), this.JSBNG__on(JSBNG__document, \"uiTimelineScrollSet\", this.setTimelineScrollPosition), this.JSBNG__on(\"uiTeardown\", this.doTeardown), this.JSBNG__on(JSBNG__document, \"dataPageMutated\", this.resetPageCache), this.JSBNG__on(JSBNG__document, \"uiPromotedLinkClick\", this.removePageFromCache), this.JSBNG__on(window, \"beforeunload\", this.destroyCurrentPageState)) : (this.JSBNG__on(\"uiSwiftLoaded\", this.resetStateVariables), this.JSBNG__on(\"uiNavigate\", this.navigateUsingRedirect))));\n });\n };\n ;\n var component = require(\"core/component\"), utils = require(\"core/utils\"), registry = require(\"core/registry\"), time = require(\"app/utils/time\"), fullPath = require(\"app/utils/full_path\"), withData = require(\"app/data/with_data\"), NavigationData = component(navigationData, withData);\n module.exports = NavigationData;\n });\n define(\"app/ui/with_dropdown\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withDropdown() {\n this.toggleDisplay = function(a) {\n this.$node.toggleClass(\"open\"), ((this.$node.hasClass(\"open\") && (this.activeEl = JSBNG__document.activeElement, this.trigger(\"uiDropdownOpened\")))), ((a && a.preventDefault()));\n }, this.ignoreCloseEvent = !1, this.closeDropdown = function() {\n this.$node.removeClass(\"open\");\n }, this.closeAndRestoreFocus = function(a) {\n this.closeDropdown(), ((this.activeEl && (a.preventDefault(), this.activeEl.JSBNG__focus(), this.activeEl = null)));\n }, this.close = function(a) {\n var b = $(this.attr.toggler);\n if (((((((a.target === this.$node)) || ((this.$node.has(a.target).length > 0)))) && !this.isItemClick(a)))) {\n return;\n }\n ;\n ;\n if (((this.isItemClick(a) && this.ignoreCloseEvent))) {\n return;\n }\n ;\n ;\n this.closeDropdown();\n }, this.isItemClick = function(a) {\n return ((((!this.attr.itemSelector || !a)) ? !1 : (($(a.target).closest(this.attr.itemSelector).length > 0))));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n toggler: this.toggleDisplay\n }), this.JSBNG__on(JSBNG__document, \"click\", this.close), this.JSBNG__on(JSBNG__document, \"uiCloseDropdowns uiNavigate\", this.closeDropdown), this.JSBNG__on(JSBNG__document, \"uiShortcutEsc\", this.closeAndRestoreFocus);\n });\n };\n ;\n module.exports = withDropdown;\n });\n define(\"app/ui/language_dropdown\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_dropdown\",], function(module, require, exports) {\n function languageDropdown() {\n this.defaultAttrs({\n toggler: \".dropdown-toggle\"\n });\n };\n ;\n var defineComponent = require(\"core/component\"), withDropdown = require(\"app/ui/with_dropdown\"), LanguageDropdown = defineComponent(languageDropdown, withDropdown);\n module.exports = LanguageDropdown;\n });\n define(\"app/ui/google\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function googleAnalytics() {\n this.defaultAttrs({\n gaPageName: window.JSBNG__location.pathname\n }), this.initGoogle = function() {\n window._gaq = ((window._gaq || [])), window._gaq.push([\"_setAccount\",\"UA-30775-6\",], [\"_trackPageview\",this.attr.gaPageName,], [\"_setDomainName\",\"twitter.com\",]);\n var a = JSBNG__document.getElementsByTagName(\"script\")[0], b = JSBNG__document.createElement(\"script\");\n b.async = !0, b.src = ((((((JSBNG__document.JSBNG__location.protocol == \"https:\")) ? \"https://ssl\" : \"http://www\")) + \".google-analytics.com/ga.js\")), a.parentNode.insertBefore(b, a), this.off(\"uiSwiftLoaded\", this.initGoogle);\n }, this.trackPageChange = function(a, b) {\n b = b.init_data, window._gaq.push([\"_trackPageview\",((((b && b.gaPageName)) || window.JSBNG__location.pathname)),]);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiSwiftLoaded\", this.initGoogle), this.JSBNG__on(\"uiPageChanged\", this.trackPageChange);\n });\n };\n ;\n var defineComponent = require(\"core/component\"), GoogleAnalytics = defineComponent(googleAnalytics);\n module.exports = GoogleAnalytics;\n });\n define(\"app/utils/cookie\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = function(b, c, d) {\n var e = $.extend({\n }, d);\n if (((((arguments.length > 1)) && ((String(c) !== \"[object Object]\"))))) {\n if (((((c === null)) || ((c === undefined))))) {\n e.expires = -1, c = \"\";\n }\n ;\n ;\n if (((typeof e.expires == \"number\"))) {\n var f = e.expires, g = new JSBNG__Date((((new JSBNG__Date).getTime() + ((((((((f * 24)) * 60)) * 60)) * 1000)))));\n e.expires = g;\n }\n ;\n ;\n return c = String(c), JSBNG__document.cookie = [encodeURIComponent(b),\"=\",((e.raw ? c : encodeURIComponent(c))),((e.expires ? ((\"; expires=\" + e.expires.toUTCString())) : \"\")),((\"; path=\" + ((e.path || \"/\")))),((e.domain ? ((\"; domain=\" + e.domain)) : \"\")),((e.secure ? \"; secure\" : \"\")),].join(\"\");\n }\n ;\n ;\n e = ((c || {\n }));\n var h, i = ((e.raw ? function(a) {\n return a;\n } : decodeURIComponent));\n return (((h = (new RegExp(((((\"(?:^|; )\" + encodeURIComponent(b))) + \"=([^;]*)\")))).exec(JSBNG__document.cookie)) ? i(h[1]) : null));\n };\n });\n define(\"app/ui/impression_cookies\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/cookie\",], function(module, require, exports) {\n function impressionCookies() {\n this.defaultAttrs({\n sendImpressionCookieSelector: \"a[data-send-impression-cookie]\",\n link: \"a\"\n }), this.setCookie = function(a, b) {\n cookie(\"ic\", a, {\n expires: b\n });\n }, this.sendImpressionCookie = function(a, b) {\n var c = b.el;\n if (((((((!c || ((c.hostname != window.JSBNG__location.hostname)))) || !c.pathname)) || ((c.pathname.indexOf(\"/#!/\") == 0))))) {\n return;\n }\n ;\n ;\n var d = $(c), e = d.closest(\"[data-impression-cookie]\").attr(\"data-impression-cookie\");\n if (!e) {\n return;\n }\n ;\n ;\n this.trigger(\"uiPromotedLinkClick\", {\n href: d.attr(\"href\")\n });\n var f = new JSBNG__Date, g = 60000, h = new JSBNG__Date(((f.getTime() + g)));\n this.setCookie(e, h);\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(\"click\", {\n sendImpressionCookieSelector: this.sendImpressionCookie\n }), this.JSBNG__on(\"uiShowProfileNewWindow\", {\n link: this.sendImpressionCookie\n });\n });\n };\n ;\n var defineComponent = require(\"core/component\"), cookie = require(\"app/utils/cookie\");\n module.exports = defineComponent(impressionCookies);\n });\n define(\"app/data/promoted_logger\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function promotedLogger() {\n this.defaultAttrs({\n tweetHashtagLinkSelector: \".tweet .twitter-hashtag\",\n tweetLinkSelector: \".tweet .twitter-timeline-link\"\n }), this.logEvent = function(a, b) {\n this.get({\n url: \"/i/promoted_content/log.json\",\n data: a,\n eventData: {\n },\n headers: {\n \"X-PHX\": !0\n },\n success: \"dataLogEventSuccess\",\n error: \"dataLogEventError\",\n async: !b,\n noAbortOnNavigate: !0\n });\n }, this.isEarnedMedia = function(a) {\n return ((a == \"earned\"));\n }, this.logPromotedTrendImpression = function(a, b) {\n var c = b.items, d = b.source;\n if (((d == \"clock\"))) {\n return;\n }\n ;\n ;\n var e = c.filter(function(a) {\n return !!a.promotedTrendId;\n });\n if (!e.length) {\n return;\n }\n ;\n ;\n this.logEvent({\n JSBNG__event: \"i\",\n promoted_trend_id: e[0].promotedTrendId\n });\n }, this.logPromotedTrendClick = function(a, b) {\n if (!b.promotedTrendId) {\n return;\n }\n ;\n ;\n this.logEvent({\n JSBNG__event: \"c\",\n promoted_trend_id: b.promotedTrendId\n }, !0);\n }, this.logPromotedTweetImpression = function(a, b) {\n var c = b.tweets.filter(function(a) {\n return a.impressionId;\n });\n c.forEach(function(a) {\n this.logEvent({\n JSBNG__event: \"impression\",\n impression_id: a.impressionId,\n earned: this.isEarnedMedia(a.disclosureType)\n });\n }, this);\n }, this.logPromotedTweetLinkClick = function(a) {\n var b = $(a.target).closest(\"[data-impression-id]\").attr(\"data-impression-id\"), c = $(a.target).closest(\"[data-impression-id]\").attr(\"data-disclosure-type\");\n if (!b) {\n return;\n }\n ;\n ;\n this.logEvent({\n JSBNG__event: \"url_click\",\n impression_id: b,\n earned: this.isEarnedMedia(c)\n }, !0);\n }, this.logPromotedTweetHashtagClick = function(a) {\n var b = $(a.target).closest(\"[data-impression-id]\").attr(\"data-impression-id\"), c = $(a.target).closest(\"[data-impression-id]\").attr(\"data-disclosure-type\");\n if (!b) {\n return;\n }\n ;\n ;\n this.logEvent({\n JSBNG__event: \"hashtag_click\",\n impression_id: b,\n earned: this.isEarnedMedia(c)\n }, !0);\n }, this.logPromotedUserImpression = function(a, b) {\n var c = b.users.filter(function(a) {\n return a.impressionId;\n });\n c.forEach(function(a) {\n this.logEvent({\n JSBNG__event: \"impression\",\n impression_id: a.impressionId\n });\n }, this);\n }, this.logPromotedTweetShareViaEmail = function(a, b) {\n var c = b.impressionId;\n if (!c) {\n return;\n }\n ;\n ;\n var d = this.isEarnedMedia(b.disclosureType);\n this.logEvent({\n JSBNG__event: \"email_tweet\",\n impression_id: c,\n earned: d\n });\n }, this.logPromotedUserClick = function(a, b) {\n var c = b.impressionId;\n if (!c) {\n return;\n }\n ;\n ;\n var d = this.isEarnedMedia(b.disclosureType);\n ((((b.profileClickTarget === \"avatar\")) ? this.logEvent({\n JSBNG__event: \"profile_image_click\",\n impression_id: c,\n earned: d\n }) : ((b.isMentionClick ? this.logEvent({\n JSBNG__event: \"user_mention_click\",\n impression_id: c,\n earned: d\n }) : ((b.isPromotedBadgeClick ? this.logEvent({\n JSBNG__event: \"footer_profile\",\n impression_id: c,\n earned: d\n }) : this.logEvent({\n JSBNG__event: \"screen_name_click\",\n impression_id: c,\n earned: d\n })))))));\n }, this.logPromotedUserDismiss = function(a, b) {\n var c = b.impressionId;\n if (!c) {\n return;\n }\n ;\n ;\n this.logEvent({\n JSBNG__event: \"dismiss\",\n impression_id: c\n });\n }, this.logPromotedTweetDismiss = function(a, b) {\n var c = b.impressionId, d = b.disclosureType;\n if (!c) {\n return;\n }\n ;\n ;\n this.logEvent({\n JSBNG__event: \"dismiss\",\n impression_id: c,\n earned: this.isEarnedMedia(d)\n });\n }, this.logPromotedTweetDetails = function(a, b) {\n var c = b.impressionId, d = b.disclosureType;\n if (!c) {\n return;\n }\n ;\n ;\n this.logEvent({\n JSBNG__event: \"view_details\",\n impression_id: c,\n earned: this.isEarnedMedia(d)\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiTrendsDisplayed\", this.logPromotedTrendImpression), this.JSBNG__on(\"uiTrendSelected\", this.logPromotedTrendClick), this.JSBNG__on(\"uiTweetsDisplayed\", this.logPromotedTweetImpression), this.JSBNG__on(\"click\", {\n tweetLinkSelector: this.logPromotedTweetLinkClick,\n tweetHashtagLinkSelector: this.logPromotedTweetHashtagClick\n }), this.JSBNG__on(\"uiHasExpandedTweet\", this.logPromotedTweetDetails), this.JSBNG__on(\"uiTweetDismissed\", this.logPromotedTweetDismiss), this.JSBNG__on(\"uiDidShareViaEmailSuccess\", this.logPromotedTweetShareViaEmail), this.JSBNG__on(\"uiUsersDisplayed\", this.logPromotedUserImpression), this.JSBNG__on(\"uiDismissUserRecommendation\", this.logPromotedUserDismiss), this.JSBNG__on(\"uiShowProfilePopup uiShowProfileNewWindow\", this.logPromotedUserClick);\n });\n };\n ;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), PromotedLogger = defineComponent(promotedLogger, withData);\n module.exports = PromotedLogger;\n });\n define(\"app/ui/message_drawer\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function messageDrawer() {\n this.defaultAttrs({\n fadeTimeout: 2000,\n closeSelector: \".dismiss\",\n reloadSelector: \".js-reload\",\n textSelector: \".message-text\",\n bannersSelector: \"#banners\",\n topOffset: 47\n });\n var a = function() {\n this.$node.css(\"opacity\", 1).animate({\n opacity: 0\n }, 1000, function() {\n this.closeMessage();\n }.bind(this));\n };\n this.calculateFadeTimeout = function(a) {\n var b = a.split(\" \").length, c = ((((((b * 1000)) / 5)) + 225));\n return ((((c < this.attr.fadeTimeout)) ? this.attr.fadeTimeout : c));\n }, this.showMessage = function(b, c) {\n this.$node.css({\n opacity: 1,\n JSBNG__top: ((this.attr.topOffset + $(this.attr.bannersSelector).height()))\n }), this.select(\"textSelector\").html(c.message), this.select(\"closeSelector\").hide(), this.$node.removeClass(\"hidden\"), JSBNG__clearTimeout(this.messageTimeout), this.$node.JSBNG__stop(), this.messageTimeout = JSBNG__setTimeout(a.bind(this), this.calculateFadeTimeout(c.message));\n }, this.showError = function(a, b) {\n this.$node.css(\"opacity\", 1), this.select(\"textSelector\").html(b.message), this.select(\"closeSelector\").show(), this.$node.removeClass(\"hidden\");\n }, this.closeMessage = function(a) {\n ((a && a.preventDefault())), this.$node.addClass(\"hidden\");\n }, this.reloadPageHandler = function() {\n this.reloadPage();\n }, this.reloadPage = function() {\n window.JSBNG__location.reload();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiShowMessage\", this.showMessage), this.JSBNG__on(JSBNG__document, \"uiShowError\", this.showError), this.JSBNG__on(\"click\", {\n reloadSelector: this.reloadPageHandler,\n closeSelector: this.closeMessage\n }), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.closeMessage);\n });\n };\n ;\n var defineComponent = require(\"core/component\"), MessageDrawer = defineComponent(messageDrawer);\n module.exports = MessageDrawer;\n });\n deferred(\"$lib/bootstrap_tooltip.js\", function() {\n !function($) {\n \"use strict\";\n var a = function(a, b) {\n this.init(\"tooltip\", a, b);\n };\n a.prototype = {\n constructor: a,\n init: function(a, b, c) {\n var d, e;\n this.type = a, this.$element = $(b), this.options = this.getOptions(c), this.enabled = !0, ((((this.options.trigger != \"manual\")) && (d = ((((this.options.trigger == \"hover\")) ? \"mouseenter\" : \"JSBNG__focus\")), e = ((((this.options.trigger == \"hover\")) ? \"mouseleave\" : \"JSBNG__blur\")), this.$element.JSBNG__on(d, this.options.selector, $.proxy(this.enter, this)), this.$element.JSBNG__on(e, this.options.selector, $.proxy(this.leave, this))))), ((this.options.selector ? this._options = $.extend({\n }, this.options, {\n trigger: \"manual\",\n selector: \"\"\n }) : this.fixTitle()));\n },\n getOptions: function(a) {\n return a = $.extend({\n }, $.fn[this.type].defaults, a, this.$element.data()), ((((a.delay && ((typeof a.delay == \"number\")))) && (a.delay = {\n show: a.delay,\n hide: a.delay\n }))), a;\n },\n enter: function(a) {\n var b = $(a.currentTarget)[this.type](this._options).data(this.type);\n ((((!b.options.delay || !b.options.delay.show)) ? b.show() : (b.hoverState = \"in\", JSBNG__setTimeout(function() {\n ((((b.hoverState == \"in\")) && b.show()));\n }, b.options.delay.show))));\n },\n leave: function(a) {\n var b = $(a.currentTarget)[this.type](this._options).data(this.type);\n ((((!b.options.delay || !b.options.delay.hide)) ? b.hide() : (b.hoverState = \"out\", JSBNG__setTimeout(function() {\n ((((b.hoverState == \"out\")) && b.hide()));\n }, b.options.delay.hide))));\n },\n show: function() {\n var a, b, c, d, e, f, g;\n if (((this.hasContent() && this.enabled))) {\n a = this.tip(), this.setContent(), ((this.options.animation && a.addClass(\"fade\"))), f = ((((typeof this.options.placement == \"function\")) ? this.options.placement.call(this, a[0], this.$element[0]) : this.options.placement)), b = /in/.test(f), a.remove().css({\n JSBNG__top: 0,\n left: 0,\n display: \"block\"\n }).appendTo(((b ? this.$element : JSBNG__document.body))), c = this.getPosition(b), d = a[0].offsetWidth, e = a[0].offsetHeight;\n switch (((b ? f.split(\" \")[1] : f))) {\n case \"bottom\":\n g = {\n JSBNG__top: ((c.JSBNG__top + c.height)),\n left: ((((c.left + ((c.width / 2)))) - ((d / 2))))\n };\n break;\n case \"JSBNG__top\":\n g = {\n JSBNG__top: ((c.JSBNG__top - e)),\n left: ((((c.left + ((c.width / 2)))) - ((d / 2))))\n };\n break;\n case \"left\":\n g = {\n JSBNG__top: ((((c.JSBNG__top + ((c.height / 2)))) - ((e / 2)))),\n left: ((c.left - d))\n };\n break;\n case \"right\":\n g = {\n JSBNG__top: ((((c.JSBNG__top + ((c.height / 2)))) - ((e / 2)))),\n left: ((c.left + c.width))\n };\n };\n ;\n a.css(g).addClass(f).addClass(\"in\");\n }\n ;\n ;\n },\n setContent: function() {\n var a = this.tip();\n a.JSBNG__find(\".tooltip-inner\").html(this.getTitle()), a.removeClass(\"fade in top bottom left right\");\n },\n hide: function() {\n function c() {\n var a = JSBNG__setTimeout(function() {\n b.off($.support.transition.end).remove();\n }, 500);\n b.one($.support.transition.end, function() {\n JSBNG__clearTimeout(a), b.remove();\n });\n };\n ;\n var a = this, b = this.tip();\n b.removeClass(\"in\"), (((($.support.transition && this.$tip.hasClass(\"fade\"))) ? c() : b.remove()));\n },\n fixTitle: function() {\n var a = this.$element;\n ((((a.attr(\"title\") || ((typeof a.attr(\"data-original-title\") != \"string\")))) && a.attr(\"data-original-title\", ((a.attr(\"title\") || \"\"))).removeAttr(\"title\")));\n },\n hasContent: function() {\n return this.getTitle();\n },\n getPosition: function(a) {\n return $.extend({\n }, ((a ? {\n JSBNG__top: 0,\n left: 0\n } : this.$element.offset())), {\n width: this.$element[0].offsetWidth,\n height: this.$element[0].offsetHeight\n });\n },\n getTitle: function() {\n var a, b = this.$element, c = this.options;\n return a = ((b.attr(\"data-original-title\") || ((((typeof c.title == \"function\")) ? c.title.call(b[0]) : c.title)))), a = ((a || \"\")).toString().replace(/(^\\s*|\\s*$)/, \"\"), a;\n },\n tip: function() {\n return this.$tip = ((this.$tip || $(this.options.template)));\n },\n validate: function() {\n ((this.$element[0].parentNode || (this.hide(), this.$element = null, this.options = null)));\n },\n enable: function() {\n this.enabled = !0;\n },\n disable: function() {\n this.enabled = !1;\n },\n toggleEnabled: function() {\n this.enabled = !this.enabled;\n },\n toggle: function() {\n this[((this.tip().hasClass(\"in\") ? \"hide\" : \"show\"))]();\n }\n }, $.fn.tooltip = function(b) {\n return this.each(function() {\n var c = $(this), d = c.data(\"tooltip\"), e = ((((typeof b == \"object\")) && b));\n ((d || c.data(\"tooltip\", d = new a(this, e)))), ((((typeof b == \"string\")) && d[b]()));\n });\n }, $.fn.tooltip.Constructor = a, $.fn.tooltip.defaults = {\n animation: !0,\n delay: 0,\n selector: !1,\n placement: \"JSBNG__top\",\n trigger: \"hover\",\n title: \"\",\n template: \"\\u003Cdiv class=\\\"tooltip\\\"\\u003E\\u003Cdiv class=\\\"tooltip-arrow\\\"\\u003E\\u003C/div\\u003E\\u003Cdiv class=\\\"tooltip-inner\\\"\\u003E\\u003C/div\\u003E\\u003C/div\\u003E\"\n };\n }(window.jQuery);\n });\n define(\"app/ui/tooltips\", [\"module\",\"require\",\"exports\",\"core/component\",\"$lib/bootstrap_tooltip.js\",], function(module, require, exports) {\n function tooltips() {\n this.defaultAttrs({\n tooltipSelector: \".js-tooltip\"\n }), this.hide = function() {\n this.select(\"tooltipSelector\").tooltip(\"hide\");\n }, this.after(\"initialize\", function() {\n this.$node.tooltip({\n selector: this.attr.tooltipSelector\n }), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged uiShowProfilePopup\", this.hide);\n });\n };\n ;\n var defineComponent = require(\"core/component\");\n require(\"$lib/bootstrap_tooltip.js\"), module.exports = defineComponent(tooltips);\n });\n define(\"app/data/ttft_navigation\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/scribe_transport\",], function(module, require, exports) {\n function ttftNavigate() {\n this.beforeNewPageLoad = function(a, b) {\n this.log(\"beforeNewPageLoad\", a, b), time = {\n beforeNewPageLoad: +(new JSBNG__Date),\n source: {\n page: this.attr.pageName,\n action: this.attr.sectionName,\n path: window.JSBNG__location.pathname\n }\n };\n }, this.afterPageChanged = function(a, b) {\n this.log(\"afterPageChanged\", a, b), time.afterPageChanged = +(new JSBNG__Date), this.fromCache = !!b.fromCache, this.hookTimelineListener(!0), this.timelineListener = JSBNG__setTimeout(function() {\n this.hookTimelineListener(!1), this.report();\n }.bind(this), 1), time.ajaxCount = this.ajaxCountdown = $.active, (($.active && this.hookAjaxListener(!0)));\n }, this.timelineRefreshRequest = function(a, b) {\n JSBNG__clearTimeout(this.timelineListener), this.hookTimelineListener(!1), ((b.navigated && (this.listeningForTimeline = !0, this.hookTimelineResults(!0))));\n }, this.timelineSuccess = function(a, b) {\n this.log(\"timelineSuccess\", a, b), this.listeningForTimeline = !1, this.hookTimelineResults(!1), time.timelineSuccess = +(new JSBNG__Date), this.report();\n }, this.timelineError = function(a, b) {\n this.log(\"timelineError\", a, b), this.listeningForTimeline = !1, this.hookTimelineResults(!1), this.report();\n }, this.ajaxComplete = function(a, b) {\n ((--this.ajaxCountdown || (this.log(\"ajaxComplete\", a, b), this.hookAjaxListener(!1), time.ajaxComplete = +(new JSBNG__Date), this.report())));\n }, this.report = function() {\n if (((this.ajaxCountdown && time.ajaxCount))) {\n return;\n }\n ;\n ;\n if (((this.listeningForTimeline && !time.timelineSuccess))) {\n return;\n }\n ;\n ;\n var a = {\n event_name: \"route_time\",\n source_page: time.source.page,\n source_action: time.source.action,\n source_path: time.source.path,\n dest_page: this.attr.pageName,\n dest_action: this.attr.sectionName,\n dest_path: window.JSBNG__location.pathname,\n cached: this.fromCache,\n start_time: time.beforeNewPageLoad,\n stream_switch_time: time.afterPageChanged,\n stream_complete_time: ((time.timelineSuccess || time.afterPageChanged)),\n ajax_count: time.ajaxCount\n };\n ((time.ajaxCount && (a.ajax_complete_time = time.ajaxComplete))), this.scribeTransport.send(a, \"route_timing\"), this.log(a);\n }, this.log = function() {\n \n }, this.time = function() {\n return time;\n }, this.scribeTransport = scribeTransport, this.hookAjaxListener = function(a) {\n this[((a ? \"JSBNG__on\" : \"off\"))](\"ajaxComplete\", this.ajaxComplete);\n }, this.hookTimelineListener = function(a) {\n this[((a ? \"JSBNG__on\" : \"off\"))](\"uiTimelineShouldRefresh\", this.timelineRefreshRequest);\n }, this.hookTimelineResults = function(a) {\n this[((a ? \"JSBNG__on\" : \"off\"))](\"dataGotMoreTimelineItems\", this.timelineSuccess), this[((a ? \"JSBNG__on\" : \"off\"))](\"dataGotMoreTimelineItemsError\", this.timelineError);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiBeforeNewPageLoad\", this.beforeNewPageLoad), this.JSBNG__on(\"uiPageChanged\", this.afterPageChanged);\n });\n };\n ;\n var component = require(\"core/component\"), scribeTransport = require(\"app/data/scribe_transport\");\n module.exports = component(ttftNavigate);\n var time = {\n };\n });\n define(\"app/data/user_info\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n var user = {\n }, userInfo = {\n set: function(a) {\n user.screenName = a.screenName, user.deciders = ((a.deciders || {\n })), user.experiments = ((a.experiments || {\n }));\n },\n reset: function() {\n this.set({\n screenName: null,\n deciders: {\n },\n experiments: {\n }\n });\n },\n user: user,\n getDecider: function(a) {\n return !!user.deciders[a];\n },\n getExperimentGroup: function(a) {\n return user.experiments[a];\n }\n };\n userInfo.reset(), module.exports = userInfo;\n });\n define(\"app/ui/aria_event_logger\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/i18n\",], function(module, require, exports) {\n function ariaEventLogger() {\n this.MESSAGES = {\n FAVORITED: _(\"Favorited\"),\n UNFAVORITED: _(\"Unfavorited\"),\n RETWEETED: _(\"Retweeted\"),\n UNRETWEETED: _(\"Unretweeted\"),\n EXPANDED: _(\"Expanded\"),\n COLLAPSED: _(\"Collapsed\"),\n RENDERING_CONVERSATION: _(\"Loading conversation.\"),\n CONVERSATION_RENDERED: _(\"Conversation loaded. Press j or k to review Tweets.\"),\n CONVERSATION_START: _(\"Conversation start.\"),\n CONVERSATION_END: _(\"Conversation end.\"),\n NEW_ITEMS_BAR_VISIBLE: _(\"New Tweets available. Press period to review them.\")\n }, this.CLEAR_LOG_EVENTS = [\"uiPageChanged\",\"uiShortcutSelectPrev\",\"uiShortcutSelectNext\",\"uiSelectNext\",\"uiSelectItem\",\"uiShortcutGotoTopOfScreen\",\"uiSelectTopTweet\",].join(\" \"), this.createLog = function() {\n var a = $(\"\\u003Cdiv id=\\\"sr-event-log\\\" class=\\\"visuallyhidden\\\" aria-live=\\\"assertive\\\"\\u003E\\u003C/div\\u003E\");\n $(\"body\").append(a), this.$log = a;\n }, this.logMessage = function(a, b) {\n ((this.$log && (((b || (b = \"assertive\"))), ((((b != this.$log.attr(\"aria-live\"))) && this.$log.attr(\"aria-live\", b))), this.$log.append(((((\"\\u003Cp\\u003E\" + a)) + \"\\u003C/p\\u003E\"))), ((((this.$log.children().length > 3)) && this.$log.children().first().remove())))));\n }, this.logEvent = function(a, b) {\n return function() {\n this.logMessage(this.MESSAGES[a], b);\n }.bind(this);\n }, this.logConversationStart = function(a) {\n var b = $(a.target);\n ((((((b.closest(\".expanded-conversation\").length && !b.prev().length)) && b.next().length)) && this.logMessage(this.MESSAGES.CONVERSATION_START, \"polite\")));\n }, this.logConversationEnd = function(a) {\n var b = $(a.target);\n ((((((b.closest(\".expanded-conversation\").length && !b.next().length)) && b.prev().length)) && this.logMessage(this.MESSAGES.CONVERSATION_END, \"polite\")));\n }, this.logCharCountWarning = function(a, b) {\n this.clearLog(), this.logMessage(b.charCount, \"polite\");\n }, this.clearLog = function() {\n ((this.$log && this.$log.html(\"\")));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiSwiftLoaded\", this.createLog), this.JSBNG__on(JSBNG__document, \"uiDidFavoriteTweet dataFailedToUnfavoriteTweet\", this.logEvent(\"FAVORITED\")), this.JSBNG__on(JSBNG__document, \"uiDidUnfavoriteTweet dataFailedToFavoriteTweet\", this.logEvent(\"UNFAVORITED\")), this.JSBNG__on(JSBNG__document, \"uiDidRetweet dataFailedToUnretweet\", this.logEvent(\"RETWEETED\")), this.JSBNG__on(JSBNG__document, \"uiDidUnretweet dataFailedToRetweet\", this.logEvent(\"UNRETWEETED\")), this.JSBNG__on(JSBNG__document, \"uiHasExpandedTweet\", this.logEvent(\"EXPANDED\")), this.JSBNG__on(JSBNG__document, \"uiHasCollapsedTweet\", this.logEvent(\"COLLAPSED\")), this.JSBNG__on(JSBNG__document, \"uiRenderingExpandedConversation\", this.logEvent(\"RENDERING_CONVERSATION\", \"polite\")), this.JSBNG__on(JSBNG__document, \"uiExpandedConversationRendered\", this.logEvent(\"CONVERSATION_RENDERED\", \"polite\")), this.JSBNG__on(JSBNG__document, \"uiNextItemSelected\", this.logConversationEnd), this.JSBNG__on(JSBNG__document, \"uiPreviousItemSelected\", this.logConversationStart), this.JSBNG__on(JSBNG__document, \"uiNewItemsBarVisible\", this.logEvent(\"NEW_ITEMS_BAR_VISIBLE\")), this.JSBNG__on(JSBNG__document, \"uiCharCountWarningVisible\", this.logCharCountWarning), this.JSBNG__on(JSBNG__document, this.CLEAR_LOG_EVENTS, this.clearLog);\n });\n };\n ;\n var defineComponent = require(\"core/component\"), _ = require(\"core/i18n\"), ARIAEventLogger = defineComponent(ariaEventLogger);\n module.exports = ARIAEventLogger;\n });\n define(\"app/boot/common\", [\"module\",\"require\",\"exports\",\"app/utils/auth_token\",\"app/boot/scribing\",\"app/ui/navigation\",\"app/data/navigation\",\"app/ui/language_dropdown\",\"app/ui/google\",\"app/ui/impression_cookies\",\"app/data/promoted_logger\",\"app/ui/message_drawer\",\"app/ui/tooltips\",\"app/data/ttft_navigation\",\"app/utils/cookie\",\"app/utils/querystring\",\"app/data/user_info\",\"app/ui/aria_event_logger\",], function(module, require, exports) {\n function shimConsole(a) {\n ((window.JSBNG__console || (window.JSBNG__console = {\n }))), LOG_METHODS.forEach(function(b) {\n if (((a || !JSBNG__console[b]))) {\n JSBNG__console[b] = NO_OP;\n }\n ;\n ;\n });\n };\n ;\n function getLoginTime() {\n return ((parseInt(querystring.decode(cookie(\"twll\")).l, 10) || 0));\n };\n ;\n function verifySession() {\n ((((getLoginTime() !== initialLoginTime)) && window.JSBNG__location.reload(!0)));\n };\n ;\n var authToken = require(\"app/utils/auth_token\"), scribing = require(\"app/boot/scribing\"), NavigationUI = require(\"app/ui/navigation\"), NavigationData = require(\"app/data/navigation\"), LanguageDropdown = require(\"app/ui/language_dropdown\"), GoogleAnalytics = require(\"app/ui/google\"), ImpressionCookies = require(\"app/ui/impression_cookies\"), PromotedLogger = require(\"app/data/promoted_logger\"), MessageDrawer = require(\"app/ui/message_drawer\"), Tooltips = require(\"app/ui/tooltips\"), TTFTNavigation = require(\"app/data/ttft_navigation\"), cookie = require(\"app/utils/cookie\"), querystring = require(\"app/utils/querystring\"), userInfo = require(\"app/data/user_info\"), ARIAEventLogger = require(\"app/ui/aria_event_logger\"), ttftNavigationEnabled = !1, LOG_METHODS = [\"log\",\"warn\",\"debug\",\"info\",], NO_OP = function() {\n \n }, initialLoginTime = 0;\n module.exports = function(b) {\n var c = b.environment, d = (([\"production\",\"preflight\",].indexOf(c) > -1));\n shimConsole(d), authToken.set(b.formAuthenticityToken), userInfo.set(b), ImpressionCookies.attachTo(JSBNG__document, {\n noTeardown: !0\n }), GoogleAnalytics.attachTo(JSBNG__document, {\n noTeardown: !0\n }), scribing(b), PromotedLogger.attachTo(JSBNG__document, {\n noTeardown: !0\n });\n var e = ((!!window.JSBNG__history && !!JSBNG__history.pushState));\n ((((b.pushState && e)) && NavigationUI.attachTo(JSBNG__document, {\n viewContainer: b.viewContainer,\n noTeardown: !0\n }))), NavigationData.attachTo(JSBNG__document, {\n init_data: b,\n pushState: b.pushState,\n pushStateSupported: e,\n pushStatePageLimit: b.pushStatePageLimit,\n assetsBasePath: b.assetsBasePath,\n pushStateRequestHeaders: b.pushStateRequestHeaders,\n viewContainer: b.viewContainer,\n noTeardown: !0\n }), Tooltips.attachTo(JSBNG__document, {\n noTeardown: !0\n }), MessageDrawer.attachTo(\"#message-drawer\", {\n noTeardown: !0\n }), ARIAEventLogger.attachTo(JSBNG__document, {\n noTeardown: !0\n }), ((b.loggedIn || LanguageDropdown.attachTo(\".js-language-dropdown\"))), ((((b.initialState && b.initialState.ttft_navigation)) && (ttftNavigationEnabled = !0))), ((ttftNavigationEnabled && TTFTNavigation.attachTo(JSBNG__document, {\n pageName: b.pageName,\n sectionName: b.sectionName\n }))), ((b.loggedIn && (initialLoginTime = getLoginTime(), JSBNG__setInterval(verifySession, 10000))));\n };\n });\n define(\"app/ui/with_position\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function Position() {\n this.adjacent = function(a, b, c) {\n var d, e;\n c = ((c || {\n })), d = e = b.offset(), e.gravity = c.gravity, e.weight = c.weight;\n var f = {\n height: b.JSBNG__outerHeight(),\n width: b.JSBNG__outerWidth()\n }, g = {\n height: a.JSBNG__outerHeight(),\n width: a.JSBNG__outerWidth()\n }, h = {\n height: $(window).height(),\n width: $(window).width()\n }, i = {\n height: $(\"body\").height(),\n width: $(\"body\").width()\n };\n return ((e.gravity || (e.gravity = \"vertical\"))), ((((\"vertical,north,south\".indexOf(e.gravity) != -1)) && (((((\"right,left,center\".indexOf(e.weight) == -1)) && (e.weight = ((((d.left > ((h.width / 2)))) ? \"right\" : \"left\"))))), ((((e.gravity == \"vertical\")) && (e.gravity = ((((((d.JSBNG__top + g.height)) > (($(window).scrollTop() + h.height)))) ? \"south\" : \"north\"))))), ((((c.position == \"relative\")) && (d = {\n left: 0,\n JSBNG__top: 0\n }, e.left = 0))), ((((e.weight == \"right\")) ? e.left = ((((d.left - g.width)) + f.width)) : ((((e.weight == \"center\")) && (e.left = ((d.left - ((((g.width - f.width)) / 2))))))))), e.JSBNG__top = ((((e.gravity == \"north\")) ? ((d.JSBNG__top + f.height)) : ((d.JSBNG__top - g.height))))))), ((((\"horizontal,east,west\".indexOf(e.gravity) != -1)) && (((((\"top,bottom,center\".indexOf(e.weight) == -1)) && ((((((d.JSBNG__top - ((g.height / 2)))) < 0)) ? e.weight = \"JSBNG__top\" : ((((((d.JSBNG__top + ((g.height / 2)))) > Math.max(h.height, i.height))) ? e.weight = \"bottom\" : e.weight = \"center\")))))), ((((e.gravity == \"horizontal\")) && (e.gravity = ((((((d.left + ((f.width / 2)))) > ((h.width / 2)))) ? \"east\" : \"west\"))))), ((((c.position == \"relative\")) && (d = {\n left: 0,\n JSBNG__top: 0\n }, e.JSBNG__top = 0))), ((((e.weight == \"center\")) ? e.JSBNG__top = ((((d.JSBNG__top + ((f.height / 2)))) - ((g.height / 2)))) : ((((e.weight == \"bottom\")) && (e.JSBNG__top = ((((d.JSBNG__top - g.height)) + f.height))))))), e.left = ((((e.gravity == \"west\")) ? ((d.left + f.width)) : ((d.left - g.width))))))), e;\n };\n };\n ;\n module.exports = Position;\n });\n define(\"app/ui/with_scrollbar_width\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function ScrollbarWidth() {\n this.calculateScrollbarWidth = function() {\n if ((($(\"#scrollbar-width\").length > 0))) {\n return;\n }\n ;\n ;\n var a = $(\"\\u003Cdiv class=\\\"modal-measure-scrollbar\\\"/\\u003E\").prependTo($(\"body\")), b = $(\"\\u003Cdiv class=\\\"inner\\\"/\\u003E\").appendTo(a), c = ((a.width() - b.width()));\n a.remove(), $(\"head\").append(((((((((\"\\u003Cstyle id=\\\"scrollbar-width\\\"\\u003E .compensate-for-scrollbar, .modal-enabled, .modal-enabled .global-nav-inner, .profile-editing, .profile-editing .global-nav-inner, .gallery-enabled, .grid-enabled, .grid-enabled .global-nav-inner, .gallery-enabled .global-nav-inner { margin-right: \" + c)) + \"px } .grid-header { right: \")) + c)) + \"px } \\u003C/style\\u003E\")));\n };\n };\n ;\n module.exports = ScrollbarWidth;\n });\n deferred(\"$lib/jquery.JSBNG__event.drag.js\", function() {\n (function($) {\n $.fn.drag = function(a, b, c) {\n var d = ((((typeof a == \"string\")) ? a : \"\")), e = (($.isFunction(a) ? a : (($.isFunction(b) ? b : null))));\n return ((((d.indexOf(\"drag\") !== 0)) && (d = ((\"drag\" + d))))), c = ((((((a == e)) ? b : c)) || {\n })), ((e ? this.bind(d, c, e) : this.trigger(d)));\n };\n var a = $.JSBNG__event, b = a.special, c = b.drag = {\n defaults: {\n which: 1,\n distance: 0,\n not: \":input\",\n handle: null,\n relative: !1,\n drop: !0,\n click: !1\n },\n datakey: \"dragdata\",\n livekey: \"livedrag\",\n add: function(b) {\n var d = $.data(this, c.datakey), e = ((b.data || {\n }));\n d.related += 1, ((((!d.live && b.selector)) && (d.live = !0, a.add(this, ((\"draginit.\" + c.livekey)), c.delegate)))), $.each(c.defaults, function(a, b) {\n ((((e[a] !== undefined)) && (d[a] = e[a])));\n });\n },\n remove: function() {\n $.data(this, c.datakey).related -= 1;\n },\n setup: function() {\n if ($.data(this, c.datakey)) {\n return;\n }\n ;\n ;\n var b = $.extend({\n related: 0\n }, c.defaults);\n $.data(this, c.datakey, b), a.add(this, \"mousedown\", c.init, b), ((this.JSBNG__attachEvent && this.JSBNG__attachEvent(\"JSBNG__ondragstart\", c.dontstart)));\n },\n teardown: function() {\n if ($.data(this, c.datakey).related) {\n return;\n }\n ;\n ;\n $.removeData(this, c.datakey), a.remove(this, \"mousedown\", c.init), a.remove(this, \"draginit\", c.delegate), c.textselect(!0), ((this.JSBNG__detachEvent && this.JSBNG__detachEvent(\"JSBNG__ondragstart\", c.dontstart)));\n },\n init: function(d) {\n var e = d.data, f;\n if (((((e.which > 0)) && ((d.which != e.which))))) {\n return;\n }\n ;\n ;\n if ($(d.target).is(e.not)) {\n return;\n }\n ;\n ;\n if (((e.handle && !$(d.target).closest(e.handle, d.currentTarget).length))) {\n return;\n }\n ;\n ;\n e.propagates = 1, e.interactions = [c.interaction(this, e),], e.target = d.target, e.pageX = d.pageX, e.pageY = d.pageY, e.dragging = null, f = c.hijack(d, \"draginit\", e);\n if (!e.propagates) {\n return;\n }\n ;\n ;\n return f = c.flatten(f), ((((f && f.length)) && (e.interactions = [], $.each(f, function() {\n e.interactions.push(c.interaction(this, e));\n })))), e.propagates = e.interactions.length, ((((((e.drop !== !1)) && b.drop)) && b.drop.handler(d, e))), c.textselect(!1), a.add(JSBNG__document, \"mousemove mouseup\", c.handler, e), !1;\n },\n interaction: function(a, b) {\n return {\n drag: a,\n callback: new c.callback,\n droppable: [],\n offset: (($(a)[((b.relative ? \"position\" : \"offset\"))]() || {\n JSBNG__top: 0,\n left: 0\n }))\n };\n },\n handler: function(d) {\n var e = d.data;\n switch (d.type) {\n case ((!e.dragging && \"mousemove\")):\n if (((((Math.pow(((d.pageX - e.pageX)), 2) + Math.pow(((d.pageY - e.pageY)), 2))) < Math.pow(e.distance, 2)))) {\n break;\n }\n ;\n ;\n d.target = e.target, c.hijack(d, \"dragstart\", e), ((e.propagates && (e.dragging = !0)));\n case \"mousemove\":\n if (e.dragging) {\n c.hijack(d, \"drag\", e);\n if (e.propagates) {\n ((((((e.drop !== !1)) && b.drop)) && b.drop.handler(d, e)));\n break;\n }\n ;\n ;\n d.type = \"mouseup\";\n }\n ;\n ;\n ;\n case \"mouseup\":\n a.remove(JSBNG__document, \"mousemove mouseup\", c.handler), ((e.dragging && (((((((e.drop !== !1)) && b.drop)) && b.drop.handler(d, e))), c.hijack(d, \"dragend\", e)))), c.textselect(!0), ((((((e.click === !1)) && e.dragging)) && ($.JSBNG__event.triggered = !0, JSBNG__setTimeout(function() {\n $.JSBNG__event.triggered = !1;\n }, 20), e.dragging = !1)));\n };\n ;\n },\n delegate: function(b) {\n var d = [], e, f = (($.data(this, \"events\") || {\n }));\n return $.each(((f.live || [])), function(f, g) {\n if (((g.preType.indexOf(\"drag\") !== 0))) {\n return;\n }\n ;\n ;\n e = $(b.target).closest(g.selector, b.currentTarget)[0];\n if (!e) {\n return;\n }\n ;\n ;\n a.add(e, ((((g.origType + \".\")) + c.livekey)), g.origHandler, g.data), (((($.inArray(e, d) < 0)) && d.push(e)));\n }), ((d.length ? $(d).bind(((\"dragend.\" + c.livekey)), function() {\n a.remove(this, ((\".\" + c.livekey)));\n }) : !1));\n },\n hijack: function(b, d, e, f, g) {\n if (!e) {\n return;\n }\n ;\n ;\n var h = {\n JSBNG__event: b.originalEvent,\n type: b.type\n }, i = ((d.indexOf(\"drop\") ? \"drag\" : \"drop\")), j, k = ((f || 0)), l, m, n, o = ((isNaN(f) ? e.interactions.length : f));\n b.type = d, b.originalEvent = null, e.results = [];\n do if (l = e.interactions[k]) {\n if (((((d !== \"dragend\")) && l.cancelled))) {\n continue;\n }\n ;\n ;\n n = c.properties(b, e, l), l.results = [], $(((((g || l[i])) || e.droppable))).each(function(f, g) {\n n.target = g, j = ((g ? a.handle.call(g, b, n) : null)), ((((j === !1)) ? (((((i == \"drag\")) && (l.cancelled = !0, e.propagates -= 1))), ((((d == \"drop\")) && (l[i][f] = null)))) : ((((d == \"dropinit\")) && l.droppable.push(((c.element(j) || g))))))), ((((d == \"dragstart\")) && (l.proxy = $(((c.element(j) || l.drag)))[0]))), l.results.push(j), delete b.result;\n if (((d !== \"dropinit\"))) {\n return j;\n }\n ;\n ;\n }), e.results[k] = c.flatten(l.results), ((((d == \"dropinit\")) && (l.droppable = c.flatten(l.droppable)))), ((((((d == \"dragstart\")) && !l.cancelled)) && n.update()));\n }\n while (((++k < o)));\n return b.type = h.type, b.originalEvent = h.JSBNG__event, c.flatten(e.results);\n },\n properties: function(a, b, d) {\n var e = d.callback;\n return e.drag = d.drag, e.proxy = ((d.proxy || d.drag)), e.startX = b.pageX, e.startY = b.pageY, e.deltaX = ((a.pageX - b.pageX)), e.deltaY = ((a.pageY - b.pageY)), e.originalX = d.offset.left, e.originalY = d.offset.JSBNG__top, e.offsetX = ((a.pageX - ((b.pageX - e.originalX)))), e.offsetY = ((a.pageY - ((b.pageY - e.originalY)))), e.drop = c.flatten(((d.drop || [])).slice()), e.available = c.flatten(((d.droppable || [])).slice()), e;\n },\n element: function(a) {\n if (((a && ((a.jquery || ((a.nodeType == 1))))))) {\n return a;\n }\n ;\n ;\n },\n flatten: function(a) {\n return $.map(a, function(a) {\n return ((((a && a.jquery)) ? $.makeArray(a) : ((((a && a.length)) ? c.flatten(a) : a))));\n });\n },\n textselect: function(a) {\n $(JSBNG__document)[((a ? \"unbind\" : \"bind\"))](\"selectstart\", c.dontstart).attr(\"unselectable\", ((a ? \"off\" : \"JSBNG__on\"))).css(\"MozUserSelect\", ((a ? \"\" : \"none\")));\n },\n dontstart: function() {\n return !1;\n },\n callback: function() {\n \n }\n };\n c.callback.prototype = {\n update: function() {\n ((((b.drop && this.available.length)) && $.each(this.available, function(a) {\n b.drop.locate(this, a);\n })));\n }\n }, b.draginit = b.dragstart = b.dragend = c;\n })(jQuery);\n });\n define(\"app/ui/with_dialog\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/ui/with_scrollbar_width\",\"$lib/jquery.JSBNG__event.drag.js\",], function(module, require, exports) {\n function withDialog() {\n compose.mixin(this, [withScrollbarWidth,]), this.center = function(a) {\n var b = $(window), c = {\n JSBNG__top: parseInt(((((b.height() - a.JSBNG__outerHeight())) / 2))),\n left: parseInt(((((b.width() - a.JSBNG__outerWidth())) / 2)))\n };\n return c;\n }, this.windowHeight = function() {\n return $(window).height();\n }, this.scrollTop = function() {\n return $(window).scrollTop();\n }, this.position = function() {\n var a = this.center(this.$dialog);\n ((((this.attr.JSBNG__top != null)) && (a.JSBNG__top = this.attr.JSBNG__top))), ((((this.attr.left != null)) && (a.left = this.attr.left))), ((((this.attr.maxTop != null)) && (a.JSBNG__top = Math.min(a.JSBNG__top, this.attr.maxTop)))), ((((this.attr.maxLeft != null)) && (a.left = Math.min(a.left, this.attr.maxLeft)))), (((($(\"body\").attr(\"dir\") === \"rtl\")) ? this.$dialog.css({\n JSBNG__top: a.JSBNG__top,\n right: a.left\n }) : this.$dialog.css({\n JSBNG__top: a.JSBNG__top,\n left: a.left\n }))), ((((this.windowHeight() < this.$dialog.JSBNG__outerHeight())) ? (this.$dialog.css(\"position\", \"absolute\"), this.$dialog.css(\"JSBNG__top\", ((this.scrollTop() + \"px\")))) : ((((this.attr.fixed === !1)) && this.$dialog.css(\"JSBNG__top\", ((a.JSBNG__top + this.scrollTop())))))));\n }, this.resize = function() {\n ((this.attr.width && this.$dialog.css(\"width\", this.attr.width))), ((this.attr.height && this.$dialog.css(\"height\", this.attr.height)));\n }, this.applyDraggability = function() {\n if (!this.$dialog.hasClass(\"draggable\")) {\n return;\n }\n ;\n ;\n var a = this, b = {\n relative: !0,\n handle: \".modal-header\"\n }, c = function(a, b) {\n (((($(\"body\").attr(\"dir\") === \"rtl\")) ? this.$dialog.css({\n JSBNG__top: b.offsetY,\n right: ((b.originalX - b.deltaX))\n }) : this.$dialog.css({\n JSBNG__top: b.offsetY,\n left: b.offsetX\n })));\n };\n this.$dialog.drag(\"start\", function() {\n a.$dialog.addClass(\"unselectable\"), $(\"#doc\").addClass(\"unselectable\");\n }), this.$dialog.drag(\"end\", function() {\n a.$dialog.removeClass(\"unselectable\"), $(\"#doc\").removeClass(\"unselectable\");\n }), this.$dialog.drag(c.bind(this), b);\n }, this.setFocus = function() {\n var a = this.$dialog.JSBNG__find(\".primary-btn\");\n ((((a.length && a.is(\":not(:disabled)\"))) && a.JSBNG__focus()));\n }, this.hasFocus = function() {\n return (($.contains(this.node, JSBNG__document.activeElement) || ((this.node == JSBNG__document.activeElement))));\n }, this.JSBNG__blur = function() {\n ((this.hasFocus() && JSBNG__document.activeElement.JSBNG__blur()));\n }, this.isOpen = function() {\n if (((((window.DEBUG && window.DEBUG.enabled)) && ((this.openState !== this.$dialogContainer.is(\":visible\")))))) {\n throw new Error(\"Dialog markup and internal openState variable are out of sync.\");\n }\n ;\n ;\n return this.openState;\n }, this.dialogVisible = function() {\n this.trigger(\"uiDialogFadeInComplete\");\n }, this.open = function() {\n ((this.isOpen() || (this.openState = !0, this.$dialogContainer.fadeIn(\"fast\", this.dialogVisible.bind(this)), this.calculateScrollbarWidth(), $(\"body\").addClass(\"modal-enabled\"), this.resize(), this.position(), this.applyDraggability(), this.setFocus(), this.trigger(\"uiCloseDropdowns\"), this.trigger(\"uiDialogOpened\"))));\n }, this.afterClose = function() {\n (($(\".modal-container:visible\").length || $(\"body\").removeClass(\"modal-enabled\"))), this.openState = !1, this.trigger(\"uiDialogClosed\");\n }, this.blurAndClose = function() {\n this.JSBNG__blur(), this.$dialogContainer.fadeOut(\"fast\", this.afterClose.bind(this));\n }, this.blurAndCloseImmediately = function() {\n this.JSBNG__blur(), this.$dialogContainer.hide(), this.afterClose();\n }, this.close = function() {\n if (!this.isOpen()) {\n return;\n }\n ;\n ;\n this.trigger(this.node, {\n type: \"uiDialogCloseRequested\",\n defaultBehavior: \"blurAndClose\"\n });\n }, this.closeImmediately = function() {\n ((this.isOpen() && this.blurAndCloseImmediately()));\n }, this.triggerClicked = function(a) {\n a.preventDefault(), this.open();\n }, this.after(\"initialize\", function() {\n this.openState = !1, this.$dialogContainer = ((this.$dialog || this.$node)), this.$dialog = this.$dialogContainer.JSBNG__find(\"div.modal\"), this.attr.closeSelector = ((this.attr.closeSelector || \".modal-close, .close-modal-background-target\")), this.JSBNG__on(this.select(\"closeSelector\"), \"click\", this.close), this.JSBNG__on(JSBNG__document, \"uiShortcutEsc uiCloseDialog\", this.close), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.closeImmediately), ((this.attr.triggerSelector && this.JSBNG__on(this.attr.triggerSelector, \"click\", this.triggerClicked)));\n });\n };\n ;\n var compose = require(\"core/compose\"), withScrollbarWidth = require(\"app/ui/with_scrollbar_width\");\n require(\"$lib/jquery.JSBNG__event.drag.js\"), module.exports = withDialog;\n });\n define(\"app/ui/dialogs/signin_or_signup\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_position\",\"app/ui/with_dialog\",], function(module, require, exports) {\n function signinOrSignupDialog() {\n this.defaultAttrs({\n dialogSelector: \"#signin-or-signup\",\n signupOnlyScreenNameSelector: \".modal-title.signup-only span\"\n }), this.openSigninDialog = function(a, b) {\n ((b.signUpOnly ? (this.$node.addClass(\"signup-only-dialog\"), this.select(\"dialogSelector\").addClass(\"signup-only\").removeClass(\"not-signup-only\"), ((b.screenName && this.select(\"signupOnlyScreenNameSelector\").text(b.screenName)))) : (this.$node.removeClass(\"signup-only-dialog\"), this.select(\"dialogSelector\").addClass(\"not-signup-only\").removeClass(\"signup-only\")))), this.open(), this.trigger(\"uiSigninOrSignupDialogOpened\");\n }, this.notifyClosed = function() {\n this.trigger(\"uiSigninOrSignupDialogClosed\");\n }, this.after(\"initialize\", function(a) {\n this.$dialog = this.select(\"dialogSelector\"), this.$dialog.JSBNG__find(\"form.signup\").bind(\"submit\", function() {\n this.trigger(\"uiSignupButtonClicked\");\n }.bind(this)), this.JSBNG__on(JSBNG__document, \"uiOpenSigninOrSignupDialog\", this.openSigninDialog), this.JSBNG__on(JSBNG__document, \"uiCloseSigninOrSignupDialog\", this.close), this.JSBNG__on(this.$node, \"uiDialogClosed\", this.notifyClosed);\n });\n };\n ;\n var defineComponent = require(\"core/component\"), withPosition = require(\"app/ui/with_position\"), withDialog = require(\"app/ui/with_dialog\"), SigninOrSignupDialog = defineComponent(signinOrSignupDialog, withDialog, withPosition);\n module.exports = SigninOrSignupDialog;\n });\n define(\"app/ui/forms/input_with_placeholder\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function inputWithPlaceholder() {\n this.defaultAttrs({\n hidePlaceholderClassName: \"hasome\",\n placeholder: \".holder\",\n elementType: \"input\"\n }), this.focusInput = function(a) {\n this.$input.JSBNG__focus();\n }, this.inputBlurred = function(a) {\n if (((this.$input.val() == \"\"))) {\n return this.$node.removeClass(this.attr.hidePlaceholderClassName), !0;\n }\n ;\n ;\n }, this.checkForChange = function() {\n ((this.inputBlurred() || this.inputChanged()));\n }, this.inputChanged = function(a) {\n this.$node.addClass(this.attr.hidePlaceholderClassName);\n }, this.after(\"initialize\", function() {\n this.$input = this.select(\"elementType\");\n if (((this.$input.length != 1))) {\n throw new Error(\"InputWithPlaceholder must be attached to a container with exactly one input element inside of it\");\n }\n ;\n ;\n this.$placeholder = this.select(\"placeholder\");\n if (((this.$placeholder.length != 1))) {\n throw new Error(\"InputWithPlaceholder must be attached to a container with exactly one placeholder element inside of it\");\n }\n ;\n ;\n this.JSBNG__on(this.$input, \"JSBNG__blur\", this.inputBlurred), this.JSBNG__on(this.$input, \"keydown paste\", this.inputChanged), this.JSBNG__on(this.$placeholder, \"click\", this.focusInput), this.JSBNG__on(this.$input, \"uiInputChanged\", this.checkForChange), this.checkForChange();\n });\n };\n ;\n var defineComponent = require(\"core/component\"), InputWithPlaceholder = defineComponent(inputWithPlaceholder);\n module.exports = InputWithPlaceholder;\n });\n define(\"app/ui/signup_call_out\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function signupCallOut() {\n this.after(\"initialize\", function() {\n this.$node.bind(\"submit\", function() {\n this.trigger(\"uiSignupButtonClicked\");\n }.bind(this));\n });\n };\n ;\n var defineComponent = require(\"core/component\"), SignupCallOut = defineComponent(signupCallOut);\n module.exports = SignupCallOut;\n });\n define(\"app/data/signup_click_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function loggedOutScribe() {\n this.scribeSignupClick = function(a, b) {\n this.scribe({\n action: \"signup_click\"\n }, b);\n }, this.scribeSigninOrSignupDialogOpened = function(a, b) {\n this.scribe({\n action: \"open\"\n }, b);\n }, this.scribeSigninOrSignupDialogClosed = function(a, b) {\n this.scribe({\n action: \"close\"\n }, b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiSignupButtonClicked\", this.scribeSignupClick), this.JSBNG__on(\"uiSigninOrSignupDialogOpened\", this.scribeSigninOrSignupDialogOpened), this.JSBNG__on(\"uiSigninOrSignupDialogClosed\", this.scribeSigninOrSignupDialogClosed);\n });\n };\n ;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(loggedOutScribe, withScribe);\n });\n define(\"app/ui/signup/stream_end_signup_module\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function streamEndSignupModule() {\n this.triggerSignupClick = function() {\n this.trigger(\"uiSignupButtonClicked\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", this.triggerSignupClick);\n });\n };\n ;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(streamEndSignupModule);\n });\n define(\"app/boot/logged_out\", [\"module\",\"require\",\"exports\",\"app/ui/dialogs/signin_or_signup\",\"app/ui/forms/input_with_placeholder\",\"app/ui/signup_call_out\",\"app/data/signup_click_scribe\",\"app/ui/signup/stream_end_signup_module\",], function(module, require, exports) {\n var SigninOrSignupDialog = require(\"app/ui/dialogs/signin_or_signup\"), InputWithPlaceholder = require(\"app/ui/forms/input_with_placeholder\"), SignupCallOut = require(\"app/ui/signup_call_out\"), LoggedOutScribe = require(\"app/data/signup_click_scribe\"), StreamEndSignupModule = require(\"app/ui/signup/stream_end_signup_module\");\n module.exports = function(b) {\n InputWithPlaceholder.attachTo(\"#signin-or-signup-dialog .holding, .profile-signup-call-out .holding, .search-signup-call-out .holding\"), SigninOrSignupDialog.attachTo(\"#signin-or-signup-dialog\", {\n eventData: {\n scribeContext: {\n component: \"auth_dialog\",\n element: \"unauth_follow\"\n }\n }\n }), SignupCallOut.attachTo(\".signup-call-out form.signup\", {\n eventData: {\n scribeContext: {\n component: \"signup_callout\",\n element: \"form\"\n }\n }\n }), StreamEndSignupModule.attachTo(\".stream-end .signup-btn\", {\n eventData: {\n scribeContext: {\n component: \"stream_end\",\n element: \"signup_button\"\n }\n }\n }), LoggedOutScribe.attachTo(JSBNG__document);\n };\n });\n define(\"app/utils/ttft\", [\"module\",\"require\",\"exports\",\"app/data/scribe_transport\",], function(module, require, exports) {\n function scribeTTFTData(a, b) {\n if (((((!recorded && window.JSBNG__performance)) && a))) {\n recorded = !0;\n var c = a;\n c.did_load = b, c.web_timings = $.extend({\n }, window.JSBNG__performance.timing), ((c.web_timings.toJSON && delete c.web_timings.toJSON)), c.navigation = {\n type: window.JSBNG__performance.navigation.type,\n redirectCount: window.JSBNG__performance.navigation.redirectCount\n }, c.referrer = JSBNG__document.referrer, scribeTransport.send(c, \"swift_time_to_first_tweet\", !1), using(\"app/utils/params\", function(a) {\n if (a.fromQuery(window.JSBNG__location).show_ttft) {\n var b = c.web_timings;\n $(JSBNG__document).trigger(\"uiShowError\", {\n message: ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((\"\\u003Ctable width=80%\\u003E\\u003Cthead\\u003E\\u003Cth\\u003Emilestone\\u003Cth\\u003Etime\\u003Cth\\u003Ecumulative\\u003C/thead\\u003E\\u003Ctbody\\u003E\\u003Ctr\\u003E\\u003Ctd\\u003Econnect: \\u003Ctd\\u003E\" + ((b.connectEnd - b.navigationStart)))) + \"\\u003Ctd\\u003E\")) + ((b.connectEnd - b.navigationStart)))) + \"\\u003C/tr\\u003E\")) + \"\\u003Ctr\\u003E\\u003Ctd\\u003Eprocess: \\u003Ctd\\u003E\")) + ((b.responseStart - b.connectEnd)))) + \"\\u003Ctd\\u003E\")) + ((b.responseStart - b.navigationStart)))) + \"\\u003C/tr\\u003E\")) + \"\\u003Ctr\\u003E\\u003Ctd\\u003Eresponse: \\u003Ctd\\u003E\")) + ((b.responseEnd - b.responseStart)))) + \"\\u003Ctd\\u003E\")) + ((b.responseEnd - b.navigationStart)))) + \"\\u003C/tr\\u003E\")) + \"\\u003Ctr\\u003E\\u003Ctd\\u003Erender: \\u003Ctd\\u003E\")) + ((c.client_record_time - b.responseEnd)))) + \"\\u003Ctd\\u003E\")) + ((c.client_record_time - b.navigationStart)))) + \"\\u003C/tr\\u003E\")) + \"\\u003Ctr\\u003E\\u003Ctd\\u003Einteractivity: \\u003Ctd\\u003E\")) + ((c.aq_empty_time - c.client_record_time)))) + \"\\u003Ctd\\u003E\")) + ((c.aq_empty_time - b.navigationStart)))) + \"\\u003C/tr\\u003E\")) + \"\\u003Ctr\\u003E\\u003Ctd\\u003Eajax_complete: \\u003Ctd\\u003E\")) + ((c.ajax_complete_time - c.aq_empty_time)))) + \"\\u003Ctd\\u003E\")) + ((c.ajax_complete_time - b.navigationStart)))) + \"\\u003C/tr\\u003E\")) + \"\\u003Ctr\\u003E\\u003Ctd\\u003Eajax_count: \\u003Ctd\\u003E\")) + c.ajax_count)) + \"\\u003C/tr\\u003E\")) + \"\\u003C/tbody\\u003E\\u003C/table\\u003E\"))\n });\n }\n ;\n ;\n });\n try {\n delete window.ttft;\n } catch (d) {\n window.ttft = undefined;\n };\n ;\n }\n ;\n ;\n };\n ;\n function scribeMilestones(a) {\n if (!window.ttftData) {\n return;\n }\n ;\n ;\n var b = !0;\n for (var c = 0; ((c < requiredMilestones.length)); ++c) {\n if (!((requiredMilestones[c] in window.ttftData))) {\n b = !1;\n break;\n }\n ;\n ;\n };\n ;\n ((((a || b)) && scribeTTFTData(window.ttftData, b)));\n };\n ;\n function onAjaxComplete(a, b, c) {\n if (((c && ((c.url in newAjaxRequests))))) {\n for (var d = 0; ((d < newAjaxRequests[c.url].length)); d++) {\n if (((c === newAjaxRequests[c.url][d]))) {\n newAjaxRequests[c.url].splice(d, 1);\n return;\n }\n ;\n ;\n };\n }\n ;\n ;\n pendingAjaxCount--;\n if (((((pendingAjaxCount == 0)) || (($.active == 0))))) {\n unbindAjaxHandlers(), recordPendingAjaxComplete();\n }\n ;\n ;\n };\n ;\n function onAjaxSend(a, b, c) {\n ((((c && c.url)) && (((newAjaxRequests[c.url] || (newAjaxRequests[c.url] = []))), newAjaxRequests[c.url].push(c))));\n };\n ;\n function recordPendingAjaxComplete() {\n recordMilestone(\"ajax_complete_time\", (new JSBNG__Date).getTime());\n };\n ;\n function bindAjaxHandlers() {\n $(JSBNG__document).bind(\"ajaxComplete\", onAjaxComplete), $(JSBNG__document).bind(\"ajaxSend\", onAjaxSend);\n };\n ;\n function unbindAjaxHandlers() {\n $(JSBNG__document).unbind(\"ajaxComplete\", onAjaxComplete), $(JSBNG__document).unbind(\"ajaxSend\", onAjaxSend);\n };\n ;\n function startAjaxTracking() {\n startingAjaxCount = pendingAjaxCount = $.active, recordMilestone(\"ajax_count\", startingAjaxCount), ((((startingAjaxCount == 0)) ? recordPendingAjaxComplete() : (unbindAjaxHandlers(), bindAjaxHandlers())));\n };\n ;\n function recordMilestone(a, b) {\n ((((window.ttftData && !window.ttftData[a])) && (window.ttftData[a] = b))), scribeMilestones(!1);\n };\n ;\n var scribeTransport = require(\"app/data/scribe_transport\"), recorded = !1, requiredMilestones = [\"page\",\"client_record_time\",\"aq_empty_time\",\"ajax_complete_time\",\"ajax_count\",], startingAjaxCount = 0, pendingAjaxCount = 0, newAjaxRequests = {\n };\n window.ttft = {\n recordMilestone: recordMilestone\n }, scribeMilestones(!1), JSBNG__setTimeout(function() {\n scribeMilestones(!0);\n }, 45000), module.exports = {\n startAjaxTracking: startAjaxTracking\n };\n });\n function makePromptSpanPage(a) {\n ((a.length && a.prependTo(\"#page-container\").css({\n padding: 0,\n border: 0\n })));\n };\n;\n using.path = $(\"#swift-module-path\").val();\n makePromptSpanPage($(\"div[data-prompt-id=\\\"262\\\"]\"));\n ((using.aliases && using.bundles.push(using.aliases)));\n $(\".loadrunner-alias\").each(function(a, b) {\n using.bundles.push(JSON.parse($(b).val()));\n });\n using(\"debug/debug\", function(a) {\n function b() {\n function d() {\n c.forEach(function(a) {\n a(b);\n });\n var a = $(JSBNG__document);\n a.JSBNG__on(\"uiSwiftLoaded uiPageChanged\", function() {\n window.__swift_loaded = !0;\n });\n a.JSBNG__on(\"uiBeforeNewPageLoad\", function() {\n window.__swift_loaded = !1;\n });\n $(\"html\").removeClass(b.baseFoucClass);\n a.trigger(\"uiSwiftLoaded\");\n ((window.swiftActionQueue && window.swiftActionQueue.flush($)));\n if (window.ttftData) {\n ((window.ttft && window.ttft.recordMilestone(\"aq_empty_time\", (new JSBNG__Date).getTime())));\n using(\"app/utils/ttft\", function(a) {\n a.startAjaxTracking();\n });\n }\n ;\n ;\n };\n ;\n var a = $(\"#init-data\").val(), b = JSON.parse(a), c = $.makeArray(arguments);\n ((b.moreCSSBundle ? using(((\"css!\" + b.moreCSSBundle)), d) : d()));\n };\n ;\n if ($(\"html\").hasClass(\"debug\")) {\n window.DEBUG = a;\n a.enable(!0);\n }\n else a.enable(!1);\n ;\n ;\n var c = $(\"input.swift-boot-module\").map(function(a, b) {\n return $(b).val();\n }).toArray();\n using.apply(this, c.concat(b));\n });\n} catch (JSBNG_ex) {\n\n};");
// 1495
geval("define(\"app/data/tweet_actions\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function tweetActions() {\n this.defaultAttrs({\n successFromEndpoints: {\n destroy: \"dataDidDeleteTweet\",\n retweet: \"dataDidRetweet\",\n favorite: \"dataDidFavoriteTweet\",\n unretweet: \"dataDidUnretweet\",\n unfavorite: \"dataDidUnfavoriteTweet\"\n },\n errorsFromEndpoints: {\n destroy: \"dataFailedToDeleteTweet\",\n retweet: \"dataFailedToRetweet\",\n favorite: \"dataFailedToFavoriteTweet\",\n unretweet: \"dataFailedToUnretweet\",\n unfavorite: \"dataFailedToUnfavoriteTweet\"\n }\n }), this.takeAction = function(a, b, c) {\n var d = function(b) {\n ((((b && b.message)) && this.trigger(\"uiShowMessage\", {\n message: b.message\n }))), this.trigger(this.attr.successFromEndpoints[a], b), this.trigger(JSBNG__document, \"dataGotProfileStats\", {\n stats: b.profile_stats\n });\n }, e;\n ((((((((a === \"favorite\")) || ((a === \"retweet\")))) && ((\"retweetId\" in c)))) ? e = {\n id: c.retweetId\n } : e = {\n id: c.id\n })), ((c.impressionId && (e.impression_id = c.impressionId, ((c.disclosureType && (e.earned = ((c.disclosureType == \"earned\"))))))));\n var f = {\n destroy: \"DELETE\",\n unretweet: \"DELETE\"\n };\n this.JSONRequest({\n url: ((\"/i/tweet/\" + a)),\n data: e,\n eventData: c,\n success: d.bind(this),\n error: this.attr.errorsFromEndpoints[a]\n }, ((f[a] || \"POST\")));\n }, this.hitEndpoint = function(a) {\n return this.takeAction.bind(this, a);\n }, this.getTweet = function(a, b) {\n var c = {\n id: b.id\n };\n this.get({\n url: \"/i/tweet/html\",\n data: c,\n eventData: b,\n success: \"dataGotTweet\",\n error: $.noop\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiDidRetweet\", this.hitEndpoint(\"retweet\")), this.JSBNG__on(\"uiDidUnretweet\", this.hitEndpoint(\"unretweet\")), this.JSBNG__on(\"uiDidDeleteTweet\", this.hitEndpoint(\"destroy\")), this.JSBNG__on(\"uiDidFavoriteTweet\", this.hitEndpoint(\"favorite\")), this.JSBNG__on(\"uiDidUnfavoriteTweet\", this.hitEndpoint(\"unfavorite\")), this.JSBNG__on(\"uiGetTweet\", this.getTweet);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), TweetActions = defineComponent(tweetActions, withData);\n module.exports = TweetActions;\n});\ndefine(\"app/ui/expando/with_expanding_containers\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withExpandingContainers() {\n this.MARGIN_ANIMATION_SPEED = 85, this.DETACHED_MARGIN = 8, this.defaultAttrs({\n openClass: \"open\",\n openSelector: \".open\",\n afterExpandedClass: \"after-expanded\",\n beforeExpandedClass: \"before-expanded\",\n marginBreaking: !0\n }), this.flipClassState = function(a, b, c) {\n a.filter(((\".\" + b))).removeClass(b).addClass(c);\n }, this.fixMarginForAdjacentItem = function(a) {\n $(a.target).next().filter(this.attr.openSelector).css(\"margin-top\", this.DETACHED_MARGIN).prev().addClass(this.attr.beforeExpandedClass);\n }, this.enterDetachedState = function(a, b) {\n var c = a.prev(), d = a.next();\n a.addClass(this.attr.openClass), ((this.attr.marginBreaking && a.animate({\n marginTop: ((c.length ? this.DETACHED_MARGIN : 0)),\n marginBottom: ((d.length ? this.DETACHED_MARGIN : 0))\n }, {\n duration: ((b ? 0 : this.MARGIN_ANIMATION_SPEED))\n }))), c.addClass(this.attr.beforeExpandedClass), d.addClass(this.attr.afterExpandedClass);\n }, this.exitDetachedState = function(a, b) {\n var c = function() {\n a.prev().removeClass(this.attr.beforeExpandedClass).end().next().removeClass(this.attr.afterExpandedClass);\n }.bind(this);\n a.removeClass(this.attr.openClass), ((this.attr.marginBreaking ? a.animate({\n marginTop: 0,\n marginBottom: 0\n }, {\n duration: ((b ? 0 : this.MARGIN_ANIMATION_SPEED)),\n complete: c\n }) : c()));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiHasInjectedTimelineItem uiShouldFixMargins\", this.fixMarginForAdjacentItem);\n });\n };\n;\n module.exports = withExpandingContainers;\n});\ndefine(\"app/ui/expando/expando_helpers\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n var SPEED_COEFFICIENT = 105, expandoHelpers = {\n buildExpandoStruct: function(a) {\n var b = a.$tweet, c = b.hasClass(a.originalClass), d = a.preexpanded, e = ((c ? b.closest(a.containingSelector) : b)), f = ((c ? e.get(0) : b.closest(\"li\").get(0))), g = b.closest(a.expansionSelector, f).get(0), h = ((g ? $(g) : $())), i = {\n $tweet: b,\n $container: e,\n $scaffold: h,\n $ancestors: $(),\n $descendants: $(),\n auto_expanded: b.hasClass(\"auto-expanded\"),\n isTopLevel: c,\n originalHeight: null,\n animating: !1,\n preexpanded: d,\n skipAnimation: a.skipAnimation,\n open: ((b.hasClass(a.openedTweetClass) && !d))\n };\n return i;\n },\n guessGoodSpeed: function() {\n var a = Math.max.apply(Math, arguments);\n return Math.round(((((4045 * Math.log(a))) * SPEED_COEFFICIENT)));\n },\n getNaturalHeight: function(a) {\n var b = a.height(), c = a.height(\"auto\").height();\n return a.height(b), c;\n },\n closeAllButPreserveScroll: function(a) {\n var b = a.$scope.JSBNG__find(a.openSelector);\n if (!b.length) {\n return !1;\n }\n ;\n ;\n var c = $(window).scrollTop(), d = expandoHelpers.firstVisibleItemBelow(a.$scope, a.itemSelector, c);\n if (((!d || !d.length))) {\n return !1;\n }\n ;\n ;\n var e = d.offset().JSBNG__top;\n b.each(a.callback);\n var f = d.offset().JSBNG__top, g = ((e - f));\n return $(window).scrollTop(((c - g))), g;\n },\n firstVisibleItemBelow: function(a, b, c) {\n var d;\n return a.JSBNG__find(b).each(function() {\n var a = $(this);\n if (((a.offset().JSBNG__top >= c))) {\n return d = a, !1;\n }\n ;\n ;\n }), d;\n }\n };\n module.exports = expandoHelpers;\n});\ndefine(\"app/ui/gallery/with_gallery\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = function() {\n this.defaultAttrs({\n mediaThumbnailSelector: \".media-thumbnail\",\n previewClass: \"is-preview\"\n }), this.expandPreview = function(a) {\n var b = a.closest(this.attr.mediaThumbnailSelector);\n if (b.hasClass(this.attr.previewClass)) {\n var c = a.parents(\".tweet.with-media-preview:not(.opened-tweet)\");\n if (c.length) {\n return this.trigger(c, \"uiExpandTweet\"), !0;\n }\n ;\n ;\n }\n ;\n ;\n return !1;\n }, this.openMediaGallery = function(a) {\n a.preventDefault(), a.stopPropagation();\n var b = $(a.target);\n ((this.expandPreview(b) || this.trigger(a.target, \"uiOpenGallery\", {\n title: \"Photo\"\n }))), this.trigger(\"uiMediaThumbnailClick\", {\n url: b.attr(\"data-url\"),\n mediaType: ((b.hasClass(\"video\") ? \"video\" : \"photo\"))\n });\n }, this.after(\"initialize\", function(a) {\n ((((a.permalinkCardsGallery || a.timelineCardsGallery)) && this.JSBNG__on(\"click\", {\n mediaThumbnailSelector: this.openMediaGallery\n })));\n });\n };\n});\ndefine(\"app/ui/with_tweet_translation\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/utils/tweet_helper\",\"app/ui/with_interaction_data\",\"app/utils/rtl_text\",\"core/i18n\",], function(module, require, exports) {\n function withTweetTranslation() {\n compose.mixin(this, [withInteractionData,]), this.defaultAttrs({\n tweetSelector: \"div.tweet\",\n tweetTranslationSelector: \".tweet-translation\",\n tweetTranslationTextSelector: \".tweet-translation-text\",\n translateTweetSelector: \".js-translate-tweet\",\n translateLabelSelector: \".translate-label\",\n permalinkContainerSelector: \".permalink-tweet-container\",\n permalinkClass: \"permalink-tweet-container\"\n }), this.handleTranslateTweetClick = function(a, b) {\n var c, d;\n c = $(a.target).closest(this.attr.tweetSelector);\n if (((((a.type === \"uiTimelineNeedsTranslation\")) && c.closest(this.attr.permalinkContainerSelector).length))) {\n return;\n }\n ;\n ;\n ((c.JSBNG__find(this.attr.tweetTranslationSelector).is(\":hidden\") && (d = this.interactionData(c), d.dest = JSBNG__document.documentElement.getAttribute(\"lang\"), this.trigger(c, \"uiNeedsTweetTranslation\", d))));\n }, this.showTweetTranslation = function(a, b) {\n var c;\n ((b.item_html && (c = this.findTweetTranslation(b.id_str), c.JSBNG__find(this.attr.tweetTranslationTextSelector).html(b.item_html), c.show(), ((this.$node.hasClass(this.attr.permalinkClass) && this.$node.JSBNG__find(this.attr.translateTweetSelector).hide())))));\n }, this.findTweetTranslation = function(a) {\n var b = this.$node.JSBNG__find(((((((this.attr.tweetSelector + \"[data-tweet-id=\")) + a.replace(/\\D/g, \"\"))) + \"]\")));\n return b.JSBNG__find(this.attr.tweetTranslationSelector);\n }, this.showError = function(a, b) {\n this.trigger(\"uiShowMessage\", {\n message: _(\"Unable to translate this Tweet. Please try again later.\")\n });\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(JSBNG__document, \"dataTweetTranslationSuccess\", this.showTweetTranslation), this.JSBNG__on(JSBNG__document, \"dataTweetTranslationError\", this.showError), this.JSBNG__on(JSBNG__document, \"uiTimelineNeedsTranslation\", this.handleTranslateTweetClick), this.JSBNG__on(\"click\", {\n translateTweetSelector: this.handleTranslateTweetClick\n });\n });\n };\n;\n var compose = require(\"core/compose\"), tweetHelper = require(\"app/utils/tweet_helper\"), withInteractionData = require(\"app/ui/with_interaction_data\"), RTLText = require(\"app/utils/rtl_text\"), _ = require(\"core/i18n\");\n module.exports = withTweetTranslation;\n});\ndefine(\"app/ui/tweets\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_tweet_actions\",\"app/ui/with_user_actions\",\"app/ui/gallery/with_gallery\",\"app/ui/with_item_actions\",\"app/ui/with_tweet_translation\",], function(module, require, exports) {\n var defineComponent = require(\"core/component\"), withTweetActions = require(\"app/ui/with_tweet_actions\"), withUserActions = require(\"app/ui/with_user_actions\"), withGallery = require(\"app/ui/gallery/with_gallery\"), withItemActions = require(\"app/ui/with_item_actions\"), withTweetTranslation = require(\"app/ui/with_tweet_translation\");\n module.exports = defineComponent(withUserActions, withTweetActions, withGallery, withItemActions, withTweetTranslation);\n});\ndefine(\"app/ui/tweet_injector\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function tweetInjector() {\n this.defaultAttrs({\n descendantClass: \"descendant\",\n descendantScribeContext: \"replies\",\n tweetSelector: \".tweet\"\n }), this.insertTweet = function(a, b) {\n var c = this.$node.closest(\".permalink\");\n ((c.length && (c.addClass(\"has-replies\"), this.$node.closest(\".replies-to\").removeClass(\"hidden\"))));\n var d = $(b.tweet_html);\n d.JSBNG__find(this.attr.tweetSelector).addClass(this.attr.descendantClass).attr(\"data-component-context\", this.attr.descendantScribeContext);\n var e;\n ((this.attr.guard(b) && (e = this.$node.JSBNG__find(\".view-more-container\"), ((e.length ? d.insertBefore(e.closest(\"li\")) : this.$node.append(d))), this.trigger(\"uiTweetInserted\", b))));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataTweetSuccess\", this.insertTweet);\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(tweetInjector);\n});\ndefine(\"app/ui/expando/with_expanding_social_activity\", [\"module\",\"require\",\"exports\",\"app/ui/expando/expando_helpers\",\"core/i18n\",\"app/utils/tweet_helper\",\"app/ui/tweets\",\"app/ui/tweet_injector\",], function(module, require, exports) {\n function withExpandingSocialActivity() {\n this.defaultAttrs({\n animating: \"animating\",\n socialProofSelector: \".js-tweet-stats-container\",\n requestRetweetedSelector: \".request-retweeted-popup\",\n requestFavoritedSelector: \".request-favorited-popup\",\n targetTweetSelector: \".tweet\",\n targetTitleSelector: \"[data-activity-popup-title]\",\n inlineReplyTweetBoxFormSelector: \".inline-reply-tweetbox .tweet-form\",\n inlineReplyTweetBoxFormCloneSrcSelector: \"#inline-reply-tweetbox .tweet-form\",\n inlineReplyTweetboxSelector: \".inline-reply-tweetbox\",\n inlineReplyUserImageSelector: \".inline-reply-user-image\",\n permalinkTweetClasses: \"opened-tweet permalink-tweet\",\n parentStreamItemSelector: \".stream-item\",\n viewMoreContainerSelector: \".view-more-container\",\n ancestorsSelector: \".ancestor-items\\u003Eli\",\n descendantsSelector: \".tweets-wrapper\\u003Eli\"\n }), this.calculateMargins = function(a) {\n var b, c, d = 0, e = 0;\n ((a.$ancestors.length && (c = a.$ancestors.first(), d = Math.abs(parseInt(c.css(\"marginTop\"), 10)), ((d || (d = ((a.$tweet.offset().JSBNG__top - c.offset().JSBNG__top))))))));\n var f, g, h;\n return ((a.$descendants.length && (f = a.$descendants.last(), e = Math.abs(parseInt(f.css(\"marginBottom\"), 10)), ((e || (b = a.$tweet.JSBNG__outerHeight(), g = f.JSBNG__outerHeight(), h = f.offset().JSBNG__top, e = ((((h + g)) - ((b + a.$tweet.offset().JSBNG__top)))))))))), {\n JSBNG__top: d,\n bottom: e\n };\n }, this.animateScaffoldHeight = function(a) {\n var b = a.expando, c = a.marginTop, d = a.marginBottom, e = b.$ancestors.length, f = b.$descendants.length, g;\n ((((a.noAnimation || ((!b.open && !b.animating)))) ? g = 0 : ((((e || f)) ? g = a.speed : g = expandoHelpers.guessGoodSpeed(Math.abs(((b.$scaffold.height() - a.height))))))));\n var h = 1;\n ((e && h++)), ((f && h++));\n var i = function() {\n h--, ((((h == 0)) && (b.animating = !1, ((e && b.$ancestors.first().css(\"marginTop\", \"\"))), ((f && b.$descendants.last().css(\"marginBottom\", \"\"))), ((a.complete && a.complete())))));\n }.bind(this);\n b.$scaffold.animate({\n height: a.height\n }, {\n duration: g,\n complete: i\n }), ((e && b.$ancestors.first().animate({\n marginTop: c\n }, {\n duration: g,\n step: a.stepFn,\n complete: i\n }))), ((f && b.$descendants.last().animate({\n marginBottom: d\n }, {\n duration: g,\n complete: i\n })));\n }, this.animateTweetOpen = function(a) {\n var b = a.expando, c = expandoHelpers.getNaturalHeight(b.$scaffold), d = this.calculateMargins(b), e = a.complete;\n b.animating = !0, ((b.$ancestors.length && b.$ancestors.first().css(\"margin-top\", -d.JSBNG__top))), ((b.$descendants.length && b.$descendants.last().css(\"margin-bottom\", -d.bottom))), this.animateScaffoldHeight({\n expando: b,\n height: c,\n noAnimation: a.noAnimation,\n speed: expandoHelpers.guessGoodSpeed(d.JSBNG__top, d.bottom),\n marginTop: 0,\n marginBottom: 0,\n complete: function() {\n b.$scaffold.height(\"auto\"), ((e && e()));\n }.bind(this)\n });\n }, this.animateTweetClosed = function(a) {\n var b = a.expando, c = this.calculateMargins(b), d = a.complete;\n b.animating = !0, this.animateScaffoldHeight({\n expando: b,\n height: b.originalHeight,\n noAnimation: a.noAnimation,\n speed: expandoHelpers.guessGoodSpeed(c.JSBNG__top, c.bottom),\n stepFn: a.stepFn,\n marginTop: -c.JSBNG__top,\n marginBottom: -c.bottom,\n complete: function() {\n b.$scaffold.height(b.originalHeight), b.$container.css({\n \"margin-top\": \"\",\n \"margin-bottom\": \"\"\n }), ((d && d()));\n }\n });\n }, this.initTweetsInConversation = function(a) {\n ((((a.$container.closest(this.attr.parentStreamItemSelector).length && a.$scaffold.JSBNG__find(this.attr.inlineReplyTweetboxSelector).length)) && (Tweets.attachTo(a.$scaffold, {\n screenName: this.attr.screenName,\n loggedIn: this.attr.loggedIn,\n itemType: a.$container.attr(\"data-item-type\")\n }), ((this.attr.loggedIn && TweetInjector.attachTo(a.$scaffold, {\n guard: function(b) {\n return ((b.in_reply_to_status_id == a.$tweet.attr(\"data-tweet-id\")));\n }\n }))))));\n }, this.animateConversationEntrance = function(a, b) {\n var c = $(a.target).data(\"expando\"), d = $(a.target).attr(\"focus-reply\");\n $(a.target).removeAttr(\"focus-reply\"), ((c.$tweet.data(\"is-reply-to\") || (b.ancestors = \"\"))), c.$scaffold.height(c.$scaffold.JSBNG__outerHeight());\n var e = $(b.ancestors), f = $(b.descendants);\n c.$ancestors = e.JSBNG__find(this.attr.ancestorsSelector), c.$descendants = f.JSBNG__find(this.attr.descendantsSelector);\n var g = ((c.$ancestors.length || c.$descendants.length));\n ((g && this.trigger(c.$tweet, \"uiRenderingExpandedConversation\"))), c.$tweet.after(f.JSBNG__find(this.attr.inlineReplyTweetboxSelector)), c.$scaffold.prepend(c.$ancestors), c.$scaffold.append(c.$descendants);\n var h = f.JSBNG__find(this.attr.viewMoreContainerSelector), i;\n ((h.length && (i = $(\"\\u003Cli/\\u003E\"), h.appendTo(i), c.$scaffold.append(i), c.$descendants = c.$descendants.add(i))));\n var j = this.renderInlineTweetbox(c, b.sourceEventData);\n this.animateTweetOpen({\n expando: c,\n complete: function() {\n c.open = !0, c.$scaffold.removeClass(this.attr.animating), c.$scaffold.css(\"height\", \"auto\"), this.trigger(c.$tweet, \"uiTimelineNeedsTranslation\"), ((((d && j)) && this.trigger(j, \"uiExpandFocus\")));\n }.bind(this)\n }), this.initTweetsInConversation(c), ((g && this.trigger(c.$tweet, \"uiExpandedConversationRendered\")));\n }, this.renderConversation = function(a, b) {\n var c = $(a.target).data(\"expando\");\n if (!c) {\n return;\n }\n ;\n ;\n ((c.animating ? c.$scaffold.queue(function() {\n this.animateConversationEntrance(a, b), c.$scaffold.dequeue();\n }.bind(this)) : this.animateConversationEntrance(a, b)));\n }, this.renderInlineTweetbox = function(a, b) {\n var c, d = a.$scaffold.JSBNG__find(this.attr.inlineReplyTweetBoxFormSelector);\n ((((d.length === 0)) && (d = $(this.attr.inlineReplyTweetBoxFormCloneSrcSelector).clone(), c = ((\"tweet-box-reply-to-\" + a.$tweet.attr(\"data-tweet-id\"))), d.JSBNG__find(\"textarea\").attr(\"id\", c), d.JSBNG__find(\"label\").attr(\"for\", c), a.$scaffold.JSBNG__find(this.attr.inlineReplyTweetboxSelector).empty(), d.appendTo(a.$scaffold.JSBNG__find(this.attr.inlineReplyTweetboxSelector)))));\n var e = tweetHelper.extractMentionsForReply(a.$tweet, this.attr.screenName), f = ((((\"@\" + e.join(\" @\"))) + \" \"));\n b = ((b || {\n }));\n var g = {\n condensable: !0,\n defaultText: f,\n condensedText: _(\"Reply to {{screen_names}}\", {\n screen_names: f\n }),\n inReplyToTweetData: b,\n inReplyToStatusId: a.$tweet.attr(\"data-tweet-id\"),\n impressionId: a.$tweet.attr(\"data-impression-id\"),\n disclosureType: a.$tweet.attr(\"data-disclosure-type\"),\n eventData: {\n scribeContext: {\n component: \"tweet_box_inline_reply\"\n }\n }\n };\n return ((b.itemType && (g.itemType = b.itemType))), this.trigger(d, \"uiInitTweetbox\", g), d;\n }, this.renderEmptyConversation = function(a, b) {\n this.renderConversation(a);\n }, this.requestActivityPopup = function(a) {\n var b = $(a.target), c = b.closest(this.attr.targetTweetSelector), d = !!b.closest(this.attr.requestRetweetedSelector).length;\n a.preventDefault(), a.stopPropagation(), this.trigger(\"uiRequestActivityPopup\", {\n titleHtml: b.closest(this.attr.targetTitleSelector).attr(\"data-activity-popup-title\"),\n tweetHtml: $(\"\\u003Cdiv\\u003E\").html(c.clone().removeClass(this.attr.permalinkTweetClasses)).html(),\n isRetweeted: d\n });\n }, this.renderSocialProof = function(a, b) {\n var c = $(a.target).JSBNG__find(this.attr.socialProofSelector);\n ((c.JSBNG__find(\".stats\").length || c.append(b.social_proof))), $(a.target).trigger(\"uiHasRenderedTweetSocialProof\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataTweetConversationResult\", this.renderConversation), this.JSBNG__on(JSBNG__document, \"dataTweetSocialProofResult\", this.renderSocialProof), this.JSBNG__on(\"click\", {\n requestRetweetedSelector: this.requestActivityPopup,\n requestFavoritedSelector: this.requestActivityPopup\n });\n });\n };\n;\n var expandoHelpers = require(\"app/ui/expando/expando_helpers\"), _ = require(\"core/i18n\"), tweetHelper = require(\"app/utils/tweet_helper\"), Tweets = require(\"app/ui/tweets\"), TweetInjector = require(\"app/ui/tweet_injector\");\n module.exports = withExpandingSocialActivity;\n});\ndefine(\"app/ui/expando/expanding_tweets\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/ui/expando/with_expanding_containers\",\"app/ui/expando/with_expanding_social_activity\",\"app/ui/expando/expando_helpers\",\"app/utils/caret\",], function(module, require, exports) {\n function expandingTweets() {\n this.defaultAttrs({\n playerCardIframeSelector: \".cards-base.cards-multimedia iframe, .card2 iframe\",\n insideProxyTweet: \".proxy-tweet-container *\",\n expandingTweetSelector: \".js-stream-tweet\",\n topLevelTweetSelector: \".js-stream-tweet.original-tweet\",\n tweetSelector: \".tweet\",\n detailsSelector: \".js-tweet-details-dropdown\",\n expansionSelector: \".expansion-container\",\n expandedContentSelector: \".expanded-content\",\n expansionClasses: \"expansion-container js-expansion-container animating\",\n openedTweetClass: \"opened-tweet\",\n originalTweetClass: \"original-tweet\",\n withSocialProofClass: \"with-social-proof\",\n expandoHandleSelector: \".js-open-close-tweet span\",\n containingItemSelector: \".js-stream-item\",\n preexpandedOpenTweetSelector: \"li.js-preexpanded div.opened-tweet\",\n preexpandedTweetClass: \"preexpanded\",\n expandedIframeDataStash: \"data-expando-iframe-media-url\",\n jsLinkSelector: \".js-link\",\n tweetFormSelector: \".tweet-form\",\n withheldTweetClass: \"withheld-tweet\",\n jsDetailsSelector: \".js-details\",\n jsStreamItemSelector: \".js-stream-item\",\n jsTranslateTweetSelector: \".js-translate-tweet\",\n openedOriginalTweetSelector: \".js-original-tweet.opened-tweet\",\n expandedConversationSelector: \".expanded-conversation\",\n expandedConversationClass: \"expanded-conversation\",\n inlineReplyTweetBoxSelector: \".inline-reply-tweetbox\",\n openChildrenSelector: \".ancestor.opened-tweet,.descendant.opened-tweet\",\n enableAnimation: !0,\n SCROLL_TOP_OFFSET: 55,\n MAX_PLAYER_WIDTH_IN_PIXELS: 435,\n hasConversationModuleClass: \"has-conversation-module\",\n conversationModuleSelector: \".conversation-module\",\n conversationRootClass: \"conversation-root\",\n hadConversationClass: \"had-conversation\",\n animatingClass: \"animating\"\n }), this.handleTweetClick = function(a, b) {\n var c = $(b.el);\n ((this.shouldExpandWhenTargetIs($(a.target), c) && (a.preventDefault(), ((this.handleConversationExpansion(c) || this.expandTweet(c))))));\n }, this.handleConversationExpansion = function(a) {\n if (a.hasClass(this.attr.conversationRootClass)) {\n return a.trigger(\"uiExpandConversationRoot\"), !0;\n }\n ;\n ;\n if (a.closest(this.attr.containingItemSelector).hasClass(this.attr.hadConversationClass)) {\n return a.trigger(\"uiRestoreConversationModule\"), !0;\n }\n ;\n ;\n }, this.shouldExpandWhenTargetIs = function(a, b) {\n var c = b.hasClass(this.attr.withheldTweetClass), d = a.is(this.attr.expandoHandleSelector), e = ((a.closest(this.attr.jsDetailsSelector, b).length > 0)), f = ((a.closest(this.attr.jsTranslateTweetSelector, b).length > 0)), g = ((((!a.closest(\"a\", b).length && !a.closest(\"button\", b).length)) && !a.closest(this.attr.jsLinkSelector, b).length));\n return ((((((((((d || g)) || e)) || f)) && !c)) && !this.selectedText()));\n }, this.selectedText = function() {\n return caret.JSBNG__getSelection();\n }, this.resetCard = function(a, b) {\n b = ((((b || a.data(\"expando\"))) || this.loadTweet(a)));\n if (b.auto_expanded) {\n return;\n }\n ;\n ;\n var c = this;\n a.JSBNG__find(this.attr.playerCardIframeSelector).each(function(a, b) {\n b.setAttribute(c.attr.expandedIframeDataStash, b.src), b.src = \"\";\n });\n }, this.expandItem = function(a, b) {\n this.expandTweet($(a.target).JSBNG__find(this.attr.tweetSelector).eq(0), b);\n }, this.expandTweetByReply = function(a, b) {\n var c = $(a.target);\n c.attr(\"focus-reply\", !0), b.focusReply = !0, this.expandTweet(c, b);\n }, this.focusReplyTweetbox = function(a) {\n var b = a.parent().JSBNG__find(this.attr.tweetFormSelector);\n ((((b.length > 0)) && this.trigger(b, \"uiExpandFocus\")));\n }, this.expandTweet = function(a, b) {\n b = ((b || {\n }));\n var c = ((a.data(\"expando\") || this.loadTweet(a, b)));\n if (c.open) {\n if (b.focusReply) {\n this.focusReplyTweetbox(a);\n return;\n }\n ;\n ;\n this.closeTweet(a, c, b);\n }\n else this.openTweet(a, c, b);\n ;\n ;\n }, this.collapseTweet = function(a, b) {\n (($(b).hasClass(this.attr.openedTweetClass) && this.expandTweet($(b), {\n noAnimation: !0\n })));\n }, this.loadTweet = function(a, b) {\n b = ((b || {\n }));\n var c = ((b.expando || expandoHelpers.buildExpandoStruct({\n $tweet: a,\n preexpanded: b.preexpanded,\n openedTweetClass: this.attr.openedTweetClass,\n expansionSelector: this.attr.expansionSelector,\n originalClass: this.attr.originalTweetClass,\n containingSelector: this.attr.containingItemSelector\n })));\n a.data(\"expando\", c);\n var d;\n this.setOriginalHeight(a, c);\n if (((((((!c.$descendants.length || !c.$ancestors.length)) || c.preexpanded)) || c.auto_expanded))) {\n this.scaffoldForAnimation(a, c), delete b.focusReply, this.loadHtmlFragmentsFromAttributes(a, c, b), this.resizePlayerCards(a);\n }\n ;\n ;\n return c;\n }, this.setOriginalHeight = function(a, b) {\n a.removeClass(this.attr.openedTweetClass), b.originalHeight = a.JSBNG__outerHeight(), a.addClass(this.attr.openedTweetClass);\n }, this.resizePlayerCard = function(a, b) {\n var c = $(b), d = parseFloat(c.attr(\"width\"));\n if (((d > this.attr.MAX_PLAYER_WIDTH_IN_PIXELS))) {\n var e = parseFloat(c.attr(\"height\")), f = ((d / e)), g = ((this.attr.MAX_PLAYER_WIDTH_IN_PIXELS / f));\n c.attr(\"width\", this.attr.MAX_PLAYER_WIDTH_IN_PIXELS), c.attr(\"height\", Math.floor(g));\n }\n ;\n ;\n }, this.resizePlayerCards = function(a) {\n var b = a.JSBNG__find(this.attr.playerCardIframeSelector);\n b.each(this.resizePlayerCard.bind(this));\n }, this.loadPreexpandedTweet = function(a, b) {\n var c = $(b), d = this.loadTweet(c, {\n preexpanded: !0\n });\n this.openTweet(c, d, {\n skipAnimation: !0\n });\n var e = $.trim(c.JSBNG__find(this.attr.expandedContentSelector).html());\n ((e && c.attr(\"data-expanded-footer\", e))), this.JSBNG__on(b, \"uiHasAddedLegacyMediaIcon\", function() {\n this.setOriginalHeight(c, d), this.trigger(b, \"uiWantsMediaForTweet\", {\n });\n });\n }, this.createStepFn = function(a) {\n var b = $(window), c = Math.abs(((a.from - a.to))), d = Math.min(a.from, a.to), e = a.expando.$container.offset().JSBNG__top, f = b.scrollTop(), g = ((((f + this.attr.SCROLL_TOP_OFFSET)) - e)), h = function(a) {\n var e = ((a - d)), h = ((e / c));\n ((((g > 0)) && b.scrollTop(((f - ((g * ((1 - h)))))))));\n };\n return h;\n }, this.openTweet = function(a, b, c) {\n ((b.isTopLevel && this.enterDetachedState(b.$container, c.skipAnimation))), this.beforeOpeningTweet(b);\n if (((!this.attr.enableAnimation || c.skipAnimation))) {\n return this.afterOpeningTweet(b);\n }\n ;\n ;\n this.trigger(a, \"uiHasExpandedTweet\", {\n organicExpansion: !c.focusReply,\n impressionId: a.closest(\"[data-impression-id]\").attr(\"data-impression-id\"),\n disclosureType: a.closest(\"[data-impression-id]\").attr(\"data-disclosure-type\")\n });\n var d = {\n expando: b\n };\n ((a.hasClass(this.attr.originalTweetClass) || (d.complete = function() {\n this.afterOpeningTweet(b);\n }.bind(this)))), this.animateTweetOpen(d);\n }, this.beforeOpeningTweet = function(a) {\n if (a.$tweet.is(this.attr.insideProxyTweet)) {\n return;\n }\n ;\n ;\n ((a.auto_expanded || a.$tweet.JSBNG__find(((((\"iframe[\" + this.attr.expandedIframeDataStash)) + \"]\"))).each(function(a, b) {\n var c = b.getAttribute(this.attr.expandedIframeDataStash);\n ((!c || (b.src = c)));\n }.bind(this)))), a.$tweet.addClass(this.attr.openedTweetClass);\n }, this.afterOpeningTweet = function(a) {\n if (a.$tweet.is(this.attr.insideProxyTweet)) {\n return;\n }\n ;\n ;\n a.open = !0, a.$scaffold.removeClass(this.attr.animatingClass), a.$scaffold.css(\"height\", \"auto\"), a.$container.removeClass(this.attr.preexpandedTweetClass), this.trigger(a.$tweet, \"uiTimelineNeedsTranslation\");\n }, this.removeExpando = function(a, b) {\n var c = a.JSBNG__find(this.attr.jsDetailsSelector).is(JSBNG__document.activeElement), d, e;\n ((((a.closest(\".supplement\").length || !b.isTopLevel)) ? d = b.$scaffold.parent() : d = a.closest(this.attr.jsStreamItemSelector))), ((a.hasClass(this.attr.hasConversationModuleClass) ? (e = a.closest(this.attr.conversationModuleSelector), e.JSBNG__find(\".descendant\").closest(\"li\").remove(), e.JSBNG__find(\".view-more-container\").closest(\"li\").remove(), e.JSBNG__find(this.attr.inlineReplyTweetBoxSelector).remove(), b.$scaffold.css(\"height\", \"auto\"), a.data(\"expando\", null)) : (e = a, d.html(e)))), d.removeClass(\"js-has-navigable-stream\"), ((c && d.JSBNG__find(this.attr.jsDetailsSelector).JSBNG__focus())), this.trigger(d, \"uiSelectItem\", {\n setFocus: !c\n });\n }, this.closeTweet = function(a, b, c) {\n ((b.isTopLevel && this.exitDetachedState(b.$container, c.noAnimation)));\n var d = function() {\n this.resetCard(a, b), b.open = !1, a.removeClass(this.attr.openedTweetClass), b.$scaffold.removeClass(this.attr.animatingClass), this.removeExpando(a, b), this.trigger(a, \"uiHasCollapsedTweet\");\n }.bind(this), e = this.createStepFn({\n expando: b,\n to: b.originalHeight,\n from: b.$scaffold.height()\n });\n b.$scaffold.addClass(this.attr.animatingClass), this.animateTweetClosed({\n expando: b,\n complete: d,\n stepFn: e,\n noAnimation: c.noAnimation\n });\n }, this.hasConversationModule = function(a) {\n return a.hasClass(this.attr.hasConversationModuleClass);\n }, this.shouldLoadFullConversation = function(a, b) {\n return ((((b.isTopLevel && !b.preexpanded)) && !this.hasConversationModule(a)));\n }, this.loadHtmlFragmentsFromAttributes = function(a, b, c) {\n ((a.JSBNG__find(this.attr.detailsSelector).children().length || (a.JSBNG__find(this.attr.detailsSelector).append($(a.data(\"expanded-footer\"))), this.trigger(a, \"uiWantsMediaForTweet\"))));\n var d = utils.merge(c, {\n fullConversation: this.shouldLoadFullConversation(a, b),\n descendantsOnly: this.hasConversationModule(a),\n facepileMax: ((b.isTopLevel ? 7 : 6))\n });\n ((((b.isTopLevel && b.preexpanded)) && a.attr(\"data-use-reply-dialog\", \"true\"))), delete d.expando, this.trigger(a, \"uiNeedsTweetExpandedContent\", d);\n }, this.scaffoldForAnimation = function(a, b) {\n if (!this.attr.enableAnimation) {\n return;\n }\n ;\n ;\n var c = a.JSBNG__find(this.attr.jsDetailsSelector).is(JSBNG__document.activeElement), d;\n ((c && (d = JSBNG__document.activeElement)));\n var e, f, g, h = {\n class: this.attr.expansionClasses,\n height: b.originalHeight\n };\n ((a.closest(this.attr.topLevelTweetSelector).length ? ((a.closest(this.attr.conversationModuleSelector).length ? (e = a.closest(this.attr.conversationModuleSelector), e.addClass(this.attr.expansionClasses), e.height(e.JSBNG__outerHeight()), b.originalHeight = e.JSBNG__outerHeight()) : (h[\"class\"] = [this.attr.expandedConversationClass,this.attr.expansionClasses,\"js-navigable-stream\",].join(\" \"), e = $(\"\\u003Col/\\u003E\", h), e.appendTo(a.parent()), f = $(\"\\u003Cli class=\\\"original-tweet-container\\\"/\\u003E\"), f.appendTo(e), b.$container.addClass(\"js-has-navigable-stream\"), a.appendTo(f), this.trigger(e.JSBNG__find(\".original-tweet-container\"), \"uiSelectItem\", {\n setFocus: !c\n })))) : (e = $(\"\\u003Cdiv/\\u003E\", h), e.appendTo(a.parent()), a.appendTo(e), g = e.parent().JSBNG__find(this.attr.inlineReplyTweetBoxSelector), ((g.length && g.appendTo(e)))))), ((d && d.JSBNG__focus())), b.$scaffold = e;\n }, this.indicateSocialProof = function(a, b) {\n var c = $(a.target);\n ((b.social_proof && c.addClass(this.attr.withSocialProofClass)));\n }, this.closeAllChildTweets = function(a) {\n a.$scaffold.JSBNG__find(this.attr.openChildrenSelector).each(this.collapseTweet.bind(this));\n }, this.closeAllTopLevelTweets = function() {\n expandoHelpers.closeAllButPreserveScroll({\n $scope: this.$node,\n openSelector: this.attr.openedOriginalTweetSelector,\n itemSelector: this.attr.jsStreamItemSelector,\n callback: this.collapseTweet.bind(this)\n });\n }, this.fullyLoadPreexpandedTweets = function() {\n this.select(\"preexpandedOpenTweetSelector\").each(this.loadPreexpandedTweet.bind(this));\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(\"dataTweetSocialProofResult\", this.indicateSocialProof), this.JSBNG__on(\"uiShouldToggleExpandedState\", this.expandItem), this.JSBNG__on(\"uiPromotionCardUrlClick\", this.expandItem), this.JSBNG__on(\"click uiExpandTweet\", {\n expandingTweetSelector: this.handleTweetClick\n }), this.JSBNG__on(\"expandTweetByReply\", this.expandTweetByReply), this.JSBNG__on(\"uiWantsToCloseAllTweets\", this.closeAllTopLevelTweets), this.JSBNG__on(JSBNG__document, \"uiSwiftLoaded uiPageChanged uiHasInjectedNewTimeline\", this.fullyLoadPreexpandedTweets), this.before(\"teardown\", this.closeAllTopLevelTweets);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withExpandingContainers = require(\"app/ui/expando/with_expanding_containers\"), withExpandingSocialActivity = require(\"app/ui/expando/with_expanding_social_activity\"), expandoHelpers = require(\"app/ui/expando/expando_helpers\"), caret = require(\"app/utils/caret\");\n module.exports = defineComponent(expandingTweets, withExpandingContainers, withExpandingSocialActivity);\n});\ndefine(\"app/ui/embed_stats\", [\"module\",\"require\",\"exports\",\"app/ui/with_item_actions\",\"core/component\",], function(module, require, exports) {\n function embedStats() {\n this.defaultAttrs({\n permalinkSelector: \".permalink-tweet\",\n embeddedLinkSelector: \".embed-stats-url-link\",\n moreButtonSelector: \".embed-stats-more-button\",\n moreStatsContainerSelector: \".embed-stats-more\",\n itemType: \"user\"\n }), this.expandMoreResults = function(a) {\n this.select(\"moreButtonSelector\").hide(), this.select(\"moreStatsContainerSelector\").show(), this.trigger(\"uiExpandedMoreEmbeddedTweetLinks\", {\n tweetId: this.tweetId\n }), a.preventDefault();\n }, this.clickLink = function(a) {\n this.trigger(\"uiClickedEmbeddedTweetLink\", {\n tweetId: this.tweetId,\n url: (($(a.target).data(\"expanded-url\") || a.target.href))\n });\n }, this.after(\"initialize\", function() {\n this.tweetId = this.select(\"permalinkSelector\").data(\"tweet-id\"), this.JSBNG__on(\"click\", {\n embeddedLinkSelector: this.clickLink,\n moreButtonSelector: this.expandMoreResults\n });\n });\n };\n;\n var withItemActions = require(\"app/ui/with_item_actions\"), defineComponent = require(\"core/component\");\n module.exports = defineComponent(embedStats, withItemActions);\n});\ndefine(\"app/data/url_resolver\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function urlResolver() {\n this.resolveLink = function(a, b) {\n JSBNG__clearTimeout(this.batch);\n var c = this.linksToResolve[b.url];\n c = ((c || [])), c.push(a.target), this.linksToResolve[b.url] = c, this.batch = JSBNG__setTimeout(this.sendBatchRequest.bind(this), 0);\n }, this.sendBatchRequest = function() {\n var a = Object.keys(this.linksToResolve);\n if (((a.length === 0))) {\n return;\n }\n ;\n ;\n this.get({\n data: {\n urls: a\n },\n eventData: {\n },\n url: \"/i/resolve.json\",\n headers: {\n \"X-PHX\": !0\n },\n type: \"JSON\",\n success: this.handleBatch.bind(this),\n error: \"dataBatchRequestError\"\n });\n }, this.handleBatch = function(a) {\n delete a.sourceEventData, Object.keys(a).forEach(function(b) {\n ((this.linksToResolve[b] && this.linksToResolve[b].forEach(function(c) {\n this.trigger(c, \"dataDidResolveUrl\", {\n url: a[b]\n });\n }, this))), delete this.linksToResolve[b];\n }, this);\n }, this.after(\"initialize\", function() {\n this.linksToResolve = {\n }, this.JSBNG__on(\"uiWantsLinkResolution\", this.resolveLink);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), UrlResolver = defineComponent(urlResolver, withData);\n module.exports = UrlResolver;\n});\ndefine(\"app/ui/media/with_native_media\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withNativeMedia() {\n this.defaultAttrs({\n expandedContentHolderWithPreloadableMedia: \"div[data-expanded-footer].has-preloadable-media\"\n }), this.preloadEmbeddedMedia = function(a) {\n $(a.target).JSBNG__find(this.attr.expandedContentHolderWithPreloadableMedia).each(function(a, b) {\n $(\"\\u003Cdiv/\\u003E\").append($(b).data(\"expanded-footer\")).remove();\n });\n }, this.after(\"initialize\", function() {\n this.preloadEmbeddedMedia({\n target: this.$node\n }), this.JSBNG__on(\"uiHasInjectedTimelineItem\", this.preloadEmbeddedMedia);\n });\n };\n;\n module.exports = withNativeMedia;\n});\nprovide(\"app/ui/media/media_tweets\", function(a) {\n using(\"core/component\", \"app/ui/media/with_legacy_media\", \"app/ui/media/with_native_media\", function(b, c, d) {\n var e = b(c, d);\n a(e);\n });\n});\ndefine(\"app/data/trends\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/setup_polling_with_backoff\",\"app/data/with_data\",], function(module, require, exports) {\n function trendsData() {\n this.defaultAttrs({\n src: \"module\",\n $backoffNode: $(window),\n trendsPollingOptions: {\n focusedInterval: 300000,\n blurredInterval: 1200000,\n eventData: {\n source: \"clock\"\n }\n }\n }), this.makeTrendsRequest = function(a) {\n var b = a.woeid, c = a.source, d = function(a) {\n a.source = c, this.trigger(\"dataTrendsRefreshed\", a);\n };\n this.get({\n url: \"/trends\",\n eventData: a,\n data: {\n k: this.currentCacheKey,\n woeid: b,\n pc: !0,\n personalized: a.personalized,\n src: this.attr.src\n },\n success: d.bind(this),\n error: \"dataTrendsRefreshedError\"\n });\n }, this.makeTrendsDialogRequest = function(a, b) {\n var c = {\n woeid: a.woeid,\n personalized: a.personalized,\n pc: !0\n }, d = function(a) {\n this.trigger(\"dataGotTrendsDialog\", a), ((((this.currentWoeid && ((this.currentWoeid !== a.woeid)))) && this.trigger(\"dataTrendsLocationChanged\"))), this.currentWoeid = a.woeid, ((a.trends_cache_key && (this.currentCacheKey = a.trends_cache_key, this.trigger(\"dataPageMutated\")))), ((a.module_html && this.trigger(\"dataTrendsRefreshed\", a)));\n }, e = ((b ? this.post : this.get));\n e.call(this, {\n url: \"/trends/dialog\",\n eventData: a,\n data: c,\n success: d.bind(this),\n error: \"dataGotTrendsDialogError\"\n });\n }, this.changeTrendsLocation = function(a, b) {\n this.makeTrendsDialogRequest(b, !0);\n }, this.refreshTrends = function(a, b) {\n b = ((b || {\n })), this.makeTrendsRequest(b);\n }, this.getTrendsDialog = function(a, b) {\n b = ((b || {\n })), this.makeTrendsDialogRequest(b);\n }, this.updateTrendsCacheKey = function(a, b) {\n this.currentCacheKey = b.trendsCacheKey;\n }, this.after(\"initialize\", function(a) {\n this.currentCacheKey = a.trendsCacheKey, this.timer = setupPollingWithBackoff(\"uiRefreshTrends\", this.attr.$backoffNode, this.attr.trendsPollingOptions), this.JSBNG__on(\"uiWantsTrendsDialog\", this.getTrendsDialog), this.JSBNG__on(\"uiChangeTrendsLocation\", this.changeTrendsLocation), this.JSBNG__on(\"uiRefreshTrends\", this.refreshTrends), this.JSBNG__on(\"dataTempTrendsCacheKeyChanged\", this.updateTrendsCacheKey);\n });\n };\n;\n var defineComponent = require(\"core/component\"), setupPollingWithBackoff = require(\"app/utils/setup_polling_with_backoff\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(trendsData, withData);\n});\ndefine(\"app/data/trends/location_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function trendsLocationDialogData() {\n this.getTrendsLocationDialog = function(a, b) {\n var c = function(a) {\n this.trigger(\"dataGotTrendsLocationDialog\", a), ((a.trendLocations && this.trigger(\"dataLoadedTrendLocations\", {\n trendLocations: a.trendLocations\n })));\n };\n this.get({\n url: \"/trends/location_dialog\",\n eventData: b,\n success: c.bind(this),\n error: \"dataGotTrendsLocationDialogError\"\n });\n }, this.updateTrendsLocation = function(a, b) {\n var c = ((b.JSBNG__location || {\n })), d = {\n woeid: c.woeid,\n personalized: b.personalized,\n pc: !0\n }, e = function(a) {\n this.trigger(\"dataChangedTrendLocation\", {\n personalized: a.personalized,\n JSBNG__location: c\n }), ((a.trends_cache_key && (this.trigger(\"dataTempTrendsCacheKeyChanged\", {\n trendsCacheKey: a.trends_cache_key\n }), this.trigger(\"dataPageMutated\")))), ((a.module_html && this.trigger(\"dataTrendsRefreshed\", a)));\n };\n this.post({\n url: \"/trends/dialog\",\n eventData: b,\n data: d,\n success: e.bind(this),\n error: \"dataGotTrendsLocationDialogError\"\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiWantsTrendsLocationDialog\", this.getTrendsLocationDialog), this.JSBNG__on(\"uiChangeLocation\", this.updateTrendsLocation);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(trendsLocationDialogData, withData);\n});\ndefine(\"app/data/trends/recent_locations\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/storage/custom\",\"app/data/with_data\",], function(module, require, exports) {\n function trendsRecentLocations() {\n this.defaultAttrs({\n storageName: \"recent_trend_locations\",\n storageKey: \"locations\",\n maxRecentLocations: 5\n }), this.initializeStorage = function() {\n var a = customStorage({\n withArray: !0,\n withMaxElements: !0\n });\n this.storage = new a(this.attr.storageName), this.storage.setMaxElements(this.attr.storageKey, this.attr.maxRecentLocations);\n }, this.getRecentTrendLocations = function() {\n this.trigger(\"dataGotRecentTrendLocations\", {\n trendLocations: this.storage.getArray(this.attr.storageKey)\n });\n }, this.saveRecentLocation = function(a, b) {\n var c = ((b.JSBNG__location || {\n }));\n if (((!c.woeid || this.hasRecentLocation(c.woeid)))) {\n return;\n }\n ;\n ;\n this.storage.push(this.attr.storageKey, c), this.getRecentTrendLocations();\n }, this.hasRecentLocation = function(a) {\n var b = this.storage.getArray(this.attr.storageKey);\n return b.some(function(b) {\n return ((b.woeid === a));\n });\n }, this.after(\"initialize\", function() {\n this.initializeStorage(), this.JSBNG__on(\"uiWantsRecentTrendLocations\", this.getRecentTrendLocations), this.JSBNG__on(\"dataChangedTrendLocation\", this.saveRecentLocation);\n });\n };\n;\n var defineComponent = require(\"core/component\"), customStorage = require(\"app/utils/storage/custom\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(trendsRecentLocations, withData);\n});\ndefine(\"app/utils/scribe_event_initiators\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = {\n clientSideUser: 0,\n serverSideUser: 1,\n clientSideApp: 2,\n serverSideApp: 3\n };\n});\ndefine(\"app/data/trends_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",\"app/utils/scribe_item_types\",\"app/utils/scribe_event_initiators\",], function(module, require, exports) {\n function trendsScribe() {\n this.scribeTrendClick = function(a, b) {\n this.scribe(\"search\", b);\n }, this.scribeTrendsResults = function(a, b) {\n var c = [], d = ((b.initial ? \"initial\" : \"newer\")), e = {\n element: d,\n action: ((((b.items && b.items.length)) ? \"results\" : \"no_results\"))\n }, f = {\n referring_event: d\n }, g = !1;\n f.items = b.items.map(function(a, b) {\n var c = {\n JSBNG__name: a.JSBNG__name,\n item_type: itemTypes.trend,\n item_query: a.JSBNG__name,\n position: b\n };\n return ((a.promotedTrendId && (c.promoted_id = a.promotedTrendId, g = !0))), c;\n }), ((g && (f.promoted = g))), ((((b.source === \"clock\")) && (f.event_initiator = eventInitiators.clientSideApp))), this.scribe(e, b, f), ((b.initial && this.scribeTrendsImpression(b)));\n }, this.scribeTrendsImpression = function(a) {\n this.scribe(\"impression\", a);\n }, this.after(\"initialize\", function() {\n this.scribeOnEvent(\"uiTrendsDialogOpened\", \"open\"), this.JSBNG__on(\"uiTrendSelected\", this.scribeTrendClick), this.JSBNG__on(\"uiTrendsDisplayed\", this.scribeTrendsResults);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\"), itemTypes = require(\"app/utils/scribe_item_types\"), eventInitiators = require(\"app/utils/scribe_event_initiators\");\n module.exports = defineComponent(trendsScribe, withScribe);\n});\ndefine(\"app/ui/trends/trends\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/ddg\",\"app/utils/scribe_item_types\",\"app/ui/with_tweet_actions\",\"app/ui/with_item_actions\",], function(module, require, exports) {\n function trendsModule() {\n this.defaultAttrs({\n changeLinkSelector: \".change-trends\",\n trendsInnerSelector: \".trends-inner\",\n trendItemSelector: \".js-trend-item\",\n promotedTweetProofSelector: \".tweet-proof-container.promoted-tweet\",\n trendLinkItemSelector: \".js-trend-item a\",\n eventTrendClass: \"event-trend\",\n itemType: \"trend\"\n }), this.openChangeTrendsDialog = function(a) {\n this.trigger(\"uiShowTrendsLocationDialog\"), a.preventDefault();\n }, this.updateModuleContent = function(a, b) {\n var c = this.$node.hasClass(\"hidden\"), d = b.source;\n this.select(\"trendsInnerSelector\").html(b.module_html), this.currentWoeid = b.woeid, this.$node.removeClass(\"hidden\");\n var e = this.getTrendData(this.select(\"trendItemSelector\"));\n this.trigger(\"uiTrendsDisplayed\", {\n items: e,\n initial: c,\n source: d,\n scribeData: {\n woeid: this.currentWoeid\n }\n });\n var f = this.getPromotedTweetProofData(this.select(\"promotedTweetProofSelector\"));\n this.trigger(\"uiTweetsDisplayed\", {\n tweets: f\n });\n }, this.trendSelected = function(a, b) {\n var c = $(b.el).closest(this.attr.trendItemSelector), d = this.getTrendData(c)[0], e = c.index(), f = {\n JSBNG__name: d.JSBNG__name,\n item_query: d.JSBNG__name,\n position: e,\n item_type: itemTypes.trend\n }, g = {\n position: e,\n query: d.JSBNG__name,\n url: c.JSBNG__find(\"a\").attr(\"href\"),\n woeid: this.currentWoeid\n };\n ((d.promotedTrendId && (f.promoted_id = d.promotedTrendId, g.promoted = !0))), g.items = [f,], this.trigger(\"uiTrendSelected\", {\n isPromoted: !!d.promotedTrendId,\n promotedTrendId: d.promotedTrendId,\n scribeContext: {\n element: \"trend\"\n },\n scribeData: g\n }), this.trackTrendSelected(!!d.promotedTrendId, c.hasClass(this.attr.eventTrendClass));\n }, this.trackTrendSelected = function(a, b) {\n var c = ((b ? \"event_trend_click\" : ((a ? \"promoted_trend_click\" : \"trend_click\"))));\n ddg.track(\"olympic_trends_320\", c);\n }, this.getTrendData = function(a) {\n return a.map(function() {\n var a = $(this);\n return {\n JSBNG__name: a.data(\"trend-name\"),\n promotedTrendId: a.data(\"promoted-trend-id\"),\n trendingEvent: a.hasClass(\"event-trend\")\n };\n }).toArray();\n }, this.getPromotedTweetProofData = function(a) {\n return a.map(function(a, b) {\n return {\n impressionId: $(b).data(\"impression-id\")\n };\n }).toArray();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataTrendsRefreshed\", this.updateModuleContent), this.JSBNG__on(\"click\", {\n changeLinkSelector: this.openChangeTrendsDialog,\n trendLinkItemSelector: this.trendSelected\n }), this.trigger(\"uiRefreshTrends\");\n });\n };\n;\n var defineComponent = require(\"core/component\"), ddg = require(\"app/data/ddg\"), itemTypes = require(\"app/utils/scribe_item_types\"), withTweetActions = require(\"app/ui/with_tweet_actions\"), withItemActions = require(\"app/ui/with_item_actions\");\n module.exports = defineComponent(trendsModule, withTweetActions, withItemActions);\n});\ndefine(\"app/ui/trends/trends_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_dialog\",\"app/ui/with_position\",], function(module, require, exports) {\n function trendsDialog() {\n this.defaultAttrs({\n contentSelector: \"#trends_dialog_content\",\n trendItemSelector: \".js-trend-link\",\n toggleSelector: \".customize-by-location\",\n personalizedSelector: \".trends-personalized\",\n byLocationSelector: \".trends-by-location\",\n doneSelector: \".done\",\n selectDefaultSelector: \".select-default\",\n errorSelector: \".trends-dialog-error p\",\n loadingSelector: \".loading\",\n deciderPersonalizedTrends: !1\n }), this.openTrendsDialog = function(a, b) {\n this.trigger(\"uiTrendsDialogOpened\"), ((this.hasContent() ? this.selectActiveView() : this.trigger(\"uiWantsTrendsDialog\"))), this.$node.removeClass(\"has-error\"), this.open();\n }, this.showPersonalizedView = function() {\n this.select(\"byLocationSelector\").hide(), this.select(\"personalizedSelector\").show();\n }, this.showLocationView = function() {\n this.select(\"personalizedSelector\").hide(), this.select(\"byLocationSelector\").show();\n }, this.updateDialogContent = function(a, b) {\n var c = ((this.personalized && b.personalized));\n this.personalized = b.personalized, this.currentWoeid = b.woeid;\n if (((c && !this.hasError()))) {\n return;\n }\n ;\n ;\n this.select(\"contentSelector\").html(b.dialog_html), this.selectActiveView(), ((!b.personalized && this.markSelected(b.woeid)));\n }, this.selectActiveView = function() {\n ((this.isPersonalized() ? this.showPersonalizedView() : this.showLocationView()));\n }, this.showError = function(a, b) {\n this.select(\"byLocationSelector\").hide(), this.select(\"personalizedSelector\").hide(), this.$node.addClass(\"has-error\"), this.select(\"errorSelector\").html(b.message);\n }, this.hasContent = function() {\n return ((((this.select(\"loadingSelector\").length == 0)) && !this.hasError()));\n }, this.hasError = function() {\n return this.$node.hasClass(\"has-error\");\n }, this.markSelected = function(a) {\n this.select(\"trendItemSelector\").removeClass(\"selected\").filter(((((\"[data-woeid=\" + a)) + \"]\"))).addClass(\"selected\");\n }, this.clearSelectedBreadcrumb = function() {\n this.select(\"selectedBreadCrumbSelector\").removeClass(\"checkmark\");\n }, this.changeSelectedItem = function(a, b) {\n var c = $(b.el).data(\"woeid\");\n if (((this.isPersonalized() || ((c !== this.currentWoeid))))) {\n this.markSelected(c), this.trigger(\"uiChangeTrendsLocation\", {\n woeid: c\n });\n }\n ;\n ;\n a.preventDefault();\n }, this.selectDefault = function(a, b) {\n var c = !!$(a.target).data(\"personalized\"), b = {\n };\n ((c ? b.personalized = !0 : b.woeid = 1)), this.trigger(\"uiChangeTrendsLocation\", b), this.close();\n }, this.toggleView = function(a, b) {\n ((this.select(\"personalizedSelector\").is(\":visible\") ? this.showLocationView() : this.showPersonalizedView()));\n }, this.isPersonalized = function() {\n return ((this.attr.deciderPersonalizedTrends && this.personalized));\n }, this.after(\"initialize\", function() {\n this.select(\"byLocationSelector\").hide(), this.select(\"personalizedSelector\").hide(), this.JSBNG__on(JSBNG__document, \"uiShowTrendsLocationDialog\", this.openTrendsDialog), this.JSBNG__on(JSBNG__document, \"dataGotTrendsDialog\", this.updateDialogContent), this.JSBNG__on(JSBNG__document, \"dataGotTrendsDialogError\", this.showError), this.JSBNG__on(\"click\", {\n trendItemSelector: this.changeSelectedItem,\n toggleSelector: this.toggleView,\n doneSelector: this.close,\n selectDefaultSelector: this.selectDefault\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withDialog = require(\"app/ui/with_dialog\"), withPosition = require(\"app/ui/with_position\");\n module.exports = defineComponent(trendsDialog, withDialog, withPosition);\n});\ndefine(\"app/ui/trends/dialog/with_location_info\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withLocationInfo() {\n this.defaultAttrs({\n JSBNG__location: {\n },\n personalized: !1\n }), this.setLocationInfo = function(a, b) {\n this.personalized = !!b.personalized, this.JSBNG__location = ((b.JSBNG__location || {\n })), this.trigger(\"uiLocationInfoUpdated\");\n }, this.changeLocationInfo = function(a) {\n this.trigger(\"uiChangeLocation\", {\n JSBNG__location: a\n });\n }, this.setPersonalizedTrends = function() {\n this.trigger(\"uiChangeLocation\", {\n personalized: !0\n });\n }, this.before(\"initialize\", function() {\n this.personalized = this.attr.personalized, this.JSBNG__location = this.attr.JSBNG__location;\n }), this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataChangedTrendLocation\", this.setLocationInfo);\n });\n };\n;\n module.exports = withLocationInfo;\n});\ndefine(\"app/ui/trends/dialog/location_dropdown\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/trends/dialog/with_location_info\",], function(module, require, exports) {\n function trendsLocationDropdown() {\n this.defaultAttrs({\n regionsSelector: \"select[name=\\\"regions\\\"]\",\n citiesSelector: \"select[name=\\\"cities\\\"]\"\n }), this.initializeCities = function() {\n this.citiesByRegionWoeid = {\n };\n var a = this.$cities.JSBNG__find(\"option\");\n a.each(function(a, b) {\n var c = $(b), d = c.data(\"woeid\");\n ((this.citiesByRegionWoeid[d] || (this.citiesByRegionWoeid[d] = []))), this.citiesByRegionWoeid[d].push(c);\n }.bind(this));\n }, this.updateDropdown = function() {\n var a = this.$regions.val(), b = ((this.citiesByRegionWoeid[a] || \"\"));\n this.$cities.empty(), this.$cities.html(b);\n }, this.updateRegion = function() {\n this.updateDropdown();\n var a = this.$cities.children().first();\n ((a.length && (a.prop(\"selected\", !0), a.change())));\n }, this.updateCity = function() {\n var a = this.$cities.JSBNG__find(\"option:selected\"), b = parseInt(a.val(), 10), c = a.data(\"JSBNG__name\");\n this.currentSelection = b, this.changeLocationInfo({\n woeid: b,\n JSBNG__name: c\n });\n }, this.possiblyClearSelection = function() {\n ((((this.currentSelection != this.JSBNG__location.woeid)) && this.reset()));\n }, this.reset = function() {\n this.currentSelection = null;\n var a = this.$regions.JSBNG__find(\"option[value=\\\"\\\"]\");\n a.prop(\"selected\", !0), this.updateDropdown();\n }, this.after(\"initialize\", function() {\n this.$regions = this.select(\"regionsSelector\"), this.$cities = this.select(\"citiesSelector\"), this.initializeCities(), this.JSBNG__on(this.$regions, \"change\", this.updateRegion), this.JSBNG__on(this.$cities, \"change\", this.updateCity), this.JSBNG__on(JSBNG__document, \"uiTrendsDialogReset\", this.reset), this.JSBNG__on(\"uiLocationInfoUpdated\", this.possiblyClearSelection), this.updateDropdown();\n });\n };\n;\n var defineComponent = require(\"core/component\"), withLocationInfo = require(\"app/ui/trends/dialog/with_location_info\");\n module.exports = defineComponent(trendsLocationDropdown, withLocationInfo);\n});\ndefine(\"app/ui/trends/dialog/location_search\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/trends/dialog/with_location_info\",\"app/ui/typeahead/typeahead_dropdown\",\"app/ui/typeahead/typeahead_input\",], function(module, require, exports) {\n function trendsLocationSearch() {\n this.defaultAttrs({\n inputSelector: \"input.trends-location-search-input\"\n }), this.executeTypeaheadSelection = function(a, b) {\n if (((b.item.woeid == -1))) {\n this.trigger(\"uiTrendsLocationSearchNoResults\");\n return;\n }\n ;\n ;\n this.currentSelection = b.item, this.changeLocationInfo({\n woeid: b.item.woeid,\n JSBNG__name: b.item.JSBNG__name\n });\n }, this.possiblyClearSelection = function() {\n ((((this.currentSelection && ((this.currentSelection.woeid != this.JSBNG__location.woeid)))) && this.reset()));\n }, this.reset = function(a, b) {\n this.currentSelection = null, this.$input.val(\"\");\n }, this.after(\"initialize\", function() {\n this.$input = this.select(\"inputSelector\"), this.JSBNG__on(\"uiTypeaheadItemSelected uiTypeaheadItemComplete\", this.executeTypeaheadSelection), this.JSBNG__on(\"uiLocationInfoUpdated\", this.possiblyClearSelection), this.JSBNG__on(JSBNG__document, \"uiTrendsDialogReset\", this.reset), TypeaheadInput.attachTo(this.$node, {\n inputSelector: this.attr.inputSelector\n }), TypeaheadDropdown.attachTo(this.$node, {\n inputSelector: this.attr.inputSelector,\n blockLinkActions: !0,\n datasourceRenders: [[\"trendLocations\",[\"trendLocations\",],],],\n deciders: this.attr.typeaheadData,\n eventData: {\n scribeContext: {\n component: \"trends_location_search\"\n }\n }\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withLocationInfo = require(\"app/ui/trends/dialog/with_location_info\"), TypeaheadDropdown = require(\"app/ui/typeahead/typeahead_dropdown\"), TypeaheadInput = require(\"app/ui/typeahead/typeahead_input\");\n module.exports = defineComponent(trendsLocationSearch, withLocationInfo);\n});\ndefine(\"app/ui/trends/dialog/current_location\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/trends/dialog/with_location_info\",], function(module, require, exports) {\n function trendsCurrentLocation() {\n this.defaultAttrs({\n personalizedSelector: \".js-location-personalized\",\n nonpersonalizedSelector: \".js-location-nonpersonalized\",\n currentLocationSelector: \".current-location\"\n }), this.updateView = function() {\n var a = !!this.personalized;\n ((a || this.select(\"currentLocationSelector\").text(this.JSBNG__location.JSBNG__name))), this.select(\"nonpersonalizedSelector\").toggle(!a), this.select(\"personalizedSelector\").toggle(a);\n }, this.after(\"initialize\", function() {\n this.updateView(), this.JSBNG__on(\"uiLocationInfoUpdated\", this.updateView);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withLocationInfo = require(\"app/ui/trends/dialog/with_location_info\");\n module.exports = defineComponent(trendsCurrentLocation, withLocationInfo);\n});\ndefine(\"app/ui/trends/dialog/with_location_list_picker\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/ui/trends/dialog/with_location_info\",], function(module, require, exports) {\n function withLocationListPicker() {\n compose.mixin(this, [withLocationInfo,]), this.defaultAttrs({\n locationSelector: \".trend-location-picker-item\",\n selectedAttr: \"selected\"\n }), this.selectLocation = function(a, b) {\n a.preventDefault();\n var c = $(b.el), d = {\n woeid: c.data(\"woeid\"),\n JSBNG__name: c.data(\"JSBNG__name\")\n };\n this.changeLocationInfo(d), this.showSelected(d.woeid, !1);\n }, this.showSelected = function(a, b) {\n var c = this.select(\"locationSelector\");\n c.removeClass(this.attr.selectedAttr), ((((!b && a)) && c.filter(((((\"[data-woeid=\\\"\" + a)) + \"\\\"]\"))).addClass(this.attr.selectedAttr)));\n }, this.locationInfoUpdated = function() {\n this.showSelected(this.JSBNG__location.woeid, this.personalized);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiLocationInfoUpdated\", this.locationInfoUpdated), this.JSBNG__on(\"click\", {\n locationSelector: this.selectLocation\n }), this.showSelected(this.JSBNG__location.woeid, this.personalized);\n });\n };\n;\n var compose = require(\"core/compose\"), withLocationInfo = require(\"app/ui/trends/dialog/with_location_info\");\n module.exports = withLocationListPicker;\n});\ndefine(\"app/ui/trends/dialog/nearby_trends\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/trends/dialog/with_location_list_picker\",], function(module, require, exports) {\n function trendsNearby() {\n \n };\n;\n var defineComponent = require(\"core/component\"), withLocationListPicker = require(\"app/ui/trends/dialog/with_location_list_picker\");\n module.exports = defineComponent(trendsNearby, withLocationListPicker);\n});\ndefine(\"app/ui/trends/dialog/recent_trends\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/trends/dialog/with_location_list_picker\",], function(module, require, exports) {\n function trendsRecent() {\n this.defaultAttrs({\n listContainerSelector: \".trend-location-picker\"\n }), this.loadTrendLocations = function(a, b) {\n var c = b.trendLocations;\n this.$list.empty(), c.forEach(function(a) {\n var b = this.$template.clone(!1), c = b.JSBNG__find(\"button\");\n c.text(a.JSBNG__name), c.attr(\"data-woeid\", a.woeid), c.attr(\"data-name\", a.JSBNG__name), this.$list.append(b);\n }, this), this.$node.toggle(((c.length > 0)));\n }, this.after(\"initialize\", function() {\n this.$list = this.select(\"listContainerSelector\"), this.$template = this.$list.JSBNG__find(\"li:first\").clone(!1), this.JSBNG__on(JSBNG__document, \"dataGotRecentTrendLocations\", this.loadTrendLocations), this.trigger(\"uiWantsRecentTrendLocations\");\n });\n };\n;\n var defineComponent = require(\"core/component\"), withLocationListPicker = require(\"app/ui/trends/dialog/with_location_list_picker\");\n module.exports = defineComponent(trendsRecent, withLocationListPicker);\n});\ndefine(\"app/ui/trends/dialog/dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_dialog\",\"app/ui/with_position\",\"app/ui/trends/dialog/location_dropdown\",\"app/ui/trends/dialog/location_search\",\"app/ui/trends/dialog/current_location\",\"app/ui/trends/dialog/nearby_trends\",\"app/ui/trends/dialog/recent_trends\",\"app/ui/trends/dialog/with_location_info\",], function(module, require, exports) {\n function trendsLocationDialog() {\n this.defaultAttrs({\n contentSelector: \"#trends_dialog_content\",\n quickSelectSelector: \"#trend-locations-quick-select\",\n dropdownSelector: \"#trend-locations-dropdown-select\",\n personalizedSelector: \".trends-personalized\",\n nonPersonalizedSelector: \".trends-by-location\",\n changeTrendsSelector: \".customize-by-location\",\n showDropdownSelector: \".js-show-dropdown-select\",\n showQuickSelectSelector: \".js-show-quick-select\",\n searchSelector: \".trends-search-locations\",\n nearbySelector: \".trends-nearby-locations\",\n recentSelector: \".trends-recent-locations\",\n currentLocationSelector: \".trends-current-location\",\n loadingSelector: \"#trend-locations-loading\",\n defaultSelector: \".select-default\",\n doneSelector: \".done\",\n errorSelector: \".trends-dialog-error p\",\n errorClass: \"has-error\"\n }), this.JSBNG__openDialog = function(a, b) {\n this.trigger(\"uiTrendsDialogOpened\"), ((this.initialized ? this.setCurrentView() : (this.trigger(\"uiWantsTrendsLocationDialog\"), this.initialized = !0))), this.$node.removeClass(\"has-error\"), this.open();\n }, this.setCurrentView = function() {\n ((this.personalized ? this.showPersonalizedView() : this.showNonpersonalizedView()));\n }, this.showPersonalizedView = function() {\n this.select(\"nonPersonalizedSelector\").hide(), this.select(\"personalizedSelector\").show();\n }, this.showNonpersonalizedView = function() {\n this.select(\"personalizedSelector\").hide(), this.select(\"nonPersonalizedSelector\").show();\n }, this.showQuickSelectContainer = function(a, b) {\n this.showNonpersonalizedView(), this.select(\"dropdownSelector\").hide(), this.select(\"quickSelectSelector\").show();\n }, this.showDropdownContainer = function(a, b) {\n this.showNonpersonalizedView(), this.select(\"quickSelectSelector\").hide(), this.select(\"dropdownSelector\").show();\n }, this.hideViews = function() {\n this.select(\"personalizedSelector\").hide(), this.select(\"nonPersonalizedSelector\").hide();\n }, this.showError = function(a, b) {\n this.hideViews(), this.hideLoading(), this.initialized = !1, this.$node.addClass(this.attr.errorClass), this.select(\"errorSelector\").html(b.message);\n }, this.selectDefault = function(a, b) {\n var c = $(a.target), d = !!c.data(\"personalized\");\n ((d ? this.setPersonalizedTrends() : this.changeLocationInfo({\n JSBNG__name: c.data(\"JSBNG__name\"),\n woeid: c.data(\"woeid\")\n }))), this.close();\n }, this.reset = function(a, b) {\n this.showQuickSelectContainer(), this.trigger(\"uiTrendsDialogReset\");\n }, this.initializeDialog = function(a, b) {\n this.select(\"contentSelector\").html(b.dialog_html), this.setLocationInfo(a, b), this.initializeComponents(), this.setCurrentView();\n }, this.showLoading = function() {\n this.select(\"loadingSelector\").show();\n }, this.hideLoading = function() {\n this.select(\"loadingSelector\").hide();\n }, this.initializeComponents = function(a, b) {\n CurrentLocation.attachTo(this.attr.currentLocationSelector, {\n JSBNG__location: this.JSBNG__location,\n personalized: this.personalized\n }), LocationSearch.attachTo(this.attr.searchSelector, {\n typeaheadData: this.attr.typeaheadData\n }), LocationDropdown.attachTo(this.attr.dropdownSelector), NearbyTrends.attachTo(this.attr.nearbySelector, {\n JSBNG__location: this.JSBNG__location,\n personalized: this.personalized\n }), RecentTrends.attachTo(this.attr.recentSelector, {\n JSBNG__location: this.JSBNG__location,\n personalized: this.personalized\n });\n }, this.after(\"initialize\", function() {\n this.hideViews(), this.JSBNG__on(\"uiChangeLocation\", this.showLoading), this.JSBNG__on(\"uiTrendsLocationSearchNoResults\", this.showDropdownContainer), this.JSBNG__on(JSBNG__document, \"uiShowTrendsLocationDialog\", this.JSBNG__openDialog), this.JSBNG__on(JSBNG__document, \"uiDialogClosed\", this.reset), this.JSBNG__on(JSBNG__document, \"dataGotTrendsLocationDialog\", this.initializeDialog), this.JSBNG__on(JSBNG__document, \"dataGotTrendsLocationDialogError\", this.showError), this.JSBNG__on(\"uiLocationInfoUpdated\", this.hideLoading), this.JSBNG__on(\"click\", {\n doneSelector: this.close,\n defaultSelector: this.selectDefault,\n changeTrendsSelector: this.showNonpersonalizedView,\n showDropdownSelector: this.showDropdownContainer,\n showQuickSelectSelector: this.showQuickSelectContainer\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withDialog = require(\"app/ui/with_dialog\"), withPosition = require(\"app/ui/with_position\"), LocationDropdown = require(\"app/ui/trends/dialog/location_dropdown\"), LocationSearch = require(\"app/ui/trends/dialog/location_search\"), CurrentLocation = require(\"app/ui/trends/dialog/current_location\"), NearbyTrends = require(\"app/ui/trends/dialog/nearby_trends\"), RecentTrends = require(\"app/ui/trends/dialog/recent_trends\"), withLocationInfo = require(\"app/ui/trends/dialog/with_location_info\");\n module.exports = defineComponent(trendsLocationDialog, withDialog, withPosition, withLocationInfo);\n});\ndefine(\"app/boot/trends\", [\"module\",\"require\",\"exports\",\"app/data/trends\",\"app/data/trends/location_dialog\",\"app/data/trends/recent_locations\",\"app/data/trends_scribe\",\"app/ui/trends/trends\",\"app/ui/trends/trends_dialog\",\"app/ui/trends/dialog/dialog\",], function(module, require, exports) {\n var TrendsData = require(\"app/data/trends\"), TrendsLocationDialogData = require(\"app/data/trends/location_dialog\"), TrendsRecentLocationsData = require(\"app/data/trends/recent_locations\"), TrendsScribe = require(\"app/data/trends_scribe\"), TrendsModule = require(\"app/ui/trends/trends\"), TrendsDialog = require(\"app/ui/trends/trends_dialog\"), TrendsLocationDialog = require(\"app/ui/trends/dialog/dialog\");\n module.exports = function(b) {\n TrendsScribe.attachTo(JSBNG__document, b), TrendsData.attachTo(JSBNG__document, b), TrendsModule.attachTo(\".module.trends\", {\n loggedIn: b.loggedIn,\n eventData: {\n scribeContext: {\n component: \"trends\"\n }\n }\n }), ((b.trendsLocationDialogEnabled ? (TrendsLocationDialogData.attachTo(JSBNG__document, b), TrendsRecentLocationsData.attachTo(JSBNG__document, b), TrendsLocationDialog.attachTo(\"#trends_dialog\", {\n typeaheadData: b.typeaheadData,\n eventData: {\n scribeContext: {\n component: \"trends_location_dialog\"\n }\n }\n })) : TrendsDialog.attachTo(\"#trends_dialog\", {\n deciderPersonalizedTrends: b.decider_personalized_trends,\n eventData: {\n scribeContext: {\n component: \"trends_dialog\"\n }\n }\n })));\n };\n});\ndefine(\"app/ui/infinite_scroll_watcher\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",], function(module, require, exports) {\n function infiniteScrollWatcher() {\n var a = 0, b = 1;\n this.checkScrollPosition = function() {\n var c = this.$content.height(), d = !1;\n ((((this.inTriggerRange(a) && ((((c > this.lastTriggeredHeight)) || this.lastTriggeredFrom(b))))) ? (this.trigger(\"uiNearTheTop\"), this.lastTriggerFrom = a, d = !0) : ((((this.inTriggerRange(b) && ((((c > this.lastTriggeredHeight)) || this.lastTriggeredFrom(a))))) && (this.trigger(\"uiNearTheBottom\"), this.lastTriggerFrom = b, d = !0))))), ((d && (this.lastTriggeredHeight = c)));\n }, this.inTriggerRange = function(c) {\n var d = this.$content.height(), e = this.$node.scrollTop(), f = ((e + this.$node.height())), g = Math.abs(Math.min(((f - d)), 0)), h = ((this.$node.height() / 2));\n return ((((((e < h)) && ((c == a)))) || ((((g < h)) && ((c == b))))));\n }, this.lastTriggeredFrom = function(a) {\n return ((this.lastTriggerFrom === a));\n }, this.resetScrollState = function() {\n this.lastTriggeredHeight = 0, this.lastTriggerFrom = -1;\n }, this.after(\"initialize\", function(a) {\n this.resetScrollState(), this.$content = ((a.contentSelector ? this.select(\"contentSelector\") : $(JSBNG__document))), this.JSBNG__on(\"JSBNG__scroll\", utils.throttle(this.checkScrollPosition.bind(this), 100)), this.JSBNG__on(\"uiTimelineReset\", this.resetScrollState);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), InfiniteScrollWatcher = defineComponent(infiniteScrollWatcher);\n module.exports = InfiniteScrollWatcher;\n});\ndefine(\"app/data/timeline\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_data\",], function(module, require, exports) {\n function timeline() {\n this.defaultAttrs({\n defaultAjaxData: {\n include_entities: 1,\n include_available_features: 1\n },\n noShowError: !0\n }), this.requestItems = function(a, b) {\n var c = function(b) {\n this.trigger(a.target, \"dataGotMoreTimelineItems\", b);\n }, d = function(b) {\n this.trigger(a.target, \"dataGotMoreTimelineItemsError\", b);\n }, e = {\n };\n ((((b && b.fromPolling)) && (e[\"X-Twitter-Polling\"] = !0)));\n var f = {\n since_id: b.since_id,\n max_id: b.max_id,\n cursor: b.cursor,\n is_forward: b.is_forward,\n latent_count: b.latent_count,\n composed_count: b.composed_count,\n include_new_items_bar: b.include_new_items_bar,\n preexpanded_id: b.preexpanded_id,\n interval: b.interval,\n count: b.count,\n timeline_empty: b.timeline_empty\n };\n ((b.query && (f.q = b.query))), ((b.curated_timeline_since_id && (f.curated_timeline_since_id = b.curated_timeline_since_id))), ((b.scroll_cursor && (f.scroll_cursor = b.scroll_cursor))), ((b.refresh_cursor && (f.refresh_cursor = b.refresh_cursor))), this.get({\n url: this.attr.endpoint,\n headers: e,\n data: utils.merge(this.attr.defaultAjaxData, f),\n eventData: b,\n success: c.bind(this),\n error: d.bind(this)\n });\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(\"uiWantsMoreTimelineItems\", this.requestItems);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(timeline, withData);\n});\ndefine(\"app/boot/timeline\", [\"module\",\"require\",\"exports\",\"app/ui/infinite_scroll_watcher\",\"app/data/timeline\",], function(module, require, exports) {\n function initialize(a) {\n ((a.no_global_infinite_scroll || InfiniteScrollWatcher.attachTo(window))), TimelineData.attachTo(JSBNG__document, a);\n };\n;\n var InfiniteScrollWatcher = require(\"app/ui/infinite_scroll_watcher\"), TimelineData = require(\"app/data/timeline\");\n module.exports = initialize;\n});\ndefine(\"app/data/activity_popup\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function activityPopupData() {\n this.defaultAttrs({\n noShowError: !0\n }), this.getUsers = function(a, b) {\n var c = ((b.isRetweeted ? \"/i/activity/retweeted_popup\" : \"/i/activity/favorited_popup\"));\n this.get({\n url: c,\n data: {\n id: b.tweetId\n },\n eventData: b,\n success: \"dataActivityPopupSuccess\",\n error: \"dataActivityPopupError\"\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiFetchActivityPopup\", this.getUsers);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(activityPopupData, withData);\n});\ndefine(\"app/ui/dialogs/activity_popup\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/ui/with_position\",\"app/ui/with_dialog\",\"app/ui/with_user_actions\",\"app/ui/with_item_actions\",], function(module, require, exports) {\n function activityPopup() {\n this.defaultAttrs({\n itemType: \"user\",\n titleSelector: \".modal-title\",\n tweetSelector: \".activity-tweet\",\n contentSelector: \".activity-content\",\n openDropdownSelector: \".user-dropdown.open .dropdown-menu\",\n usersSelector: \".activity-popup-users\"\n }), this.setTitle = function(a) {\n this.select(\"titleSelector\").html(a);\n }, this.setContent = function(a) {\n this.$node.toggleClass(\"has-content\", !!a), this.select(\"contentSelector\").html(a);\n }, this.requestPopup = function(a, b) {\n this.attr.eventData = utils.merge(this.attr.eventData, {\n scribeContext: {\n component: ((b.isRetweeted ? \"retweeted_dialog\" : \"favorited_dialog\"))\n }\n }, !0), this.setTitle(b.titleHtml);\n var c = $(b.tweetHtml);\n this.select(\"tweetSelector\").html(c), this.setContent(\"\"), this.open(), this.trigger(\"uiFetchActivityPopup\", {\n tweetId: c.attr(\"data-tweet-id\"),\n isRetweeted: b.isRetweeted\n });\n }, this.updateUsers = function(a, b) {\n this.setTitle(b.htmlTitle), this.setContent(b.htmlUsers);\n var c = this.select(\"usersSelector\");\n ((((c.height() >= parseInt(c.css(\"max-height\"), 10))) && c.addClass(\"dropdown-threshold\")));\n }, this.showError = function(a, b) {\n this.setContent($(\"\\u003Cp\\u003E\").addClass(\"error\").html(b.message));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiRequestActivityPopup\", this.requestPopup), this.JSBNG__on(JSBNG__document, \"dataActivityPopupSuccess\", this.updateUsers), this.JSBNG__on(JSBNG__document, \"dataActivityPopupError\", this.showError), this.JSBNG__on(JSBNG__document, \"uiShowProfilePopup uiOpenTweetDialogWithOptions uiNeedsDMDialog uiOpenSigninOrSignupDialog\", this.close);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withPosition = require(\"app/ui/with_position\"), withDialog = require(\"app/ui/with_dialog\"), withUserActions = require(\"app/ui/with_user_actions\"), withItemActions = require(\"app/ui/with_item_actions\");\n module.exports = defineComponent(activityPopup, withDialog, withPosition, withUserActions, withItemActions);\n});\ndefine(\"app/data/activity_popup_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function activityPopupScribe() {\n this.scribeActivityPopupOpen = function(a, b) {\n var c = b.sourceEventData;\n this.scribe(\"open\", b, {\n item_ids: [c.tweetId,],\n item_count: 1\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataActivityPopupSuccess\", this.scribeActivityPopupOpen);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(activityPopupScribe, withScribe);\n});\ndefine(\"app/boot/activity_popup\", [\"module\",\"require\",\"exports\",\"app/data/activity_popup\",\"app/ui/dialogs/activity_popup\",\"app/data/activity_popup_scribe\",], function(module, require, exports) {\n function initialize(a) {\n ActivityPopupData.attachTo(JSBNG__document, a), ActivityPopupScribe.attachTo(JSBNG__document, a), ActivityPopup.attachTo(activityPopupSelector, a);\n };\n;\n var ActivityPopupData = require(\"app/data/activity_popup\"), ActivityPopup = require(\"app/ui/dialogs/activity_popup\"), ActivityPopupScribe = require(\"app/data/activity_popup_scribe\"), activityPopupSelector = \"#activity-popup-dialog\";\n module.exports = initialize;\n});\ndefine(\"app/data/tweet_translation\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function tweetTranslation() {\n this.getTweetTranslation = function(a, b) {\n var c = function(a) {\n ((((a && a.message)) && this.trigger(\"uiShowMessage\", {\n message: a.message\n }))), this.trigger(\"dataTweetTranslationSuccess\", a);\n }, d = function(a, c, d) {\n this.trigger(\"dataTweetTranslationError\", {\n id: b.id,\n JSBNG__status: c,\n errorThrown: d\n });\n }, e = {\n id: b.tweetId,\n dest: b.dest\n };\n this.get({\n url: \"/i/translations/show.json\",\n data: e,\n headers: {\n \"X-Phx\": !0\n },\n eventData: b,\n success: c.bind(this),\n error: d.bind(this)\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiNeedsTweetTranslation\", this.getTweetTranslation);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), TweetTranslation = defineComponent(tweetTranslation, withData);\n module.exports = TweetTranslation;\n});\ndefine(\"app/data/conversations\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function conversations() {\n this.requestExpansion = function(a, b) {\n var c = function(b) {\n this.trigger(a.target, \"dataTweetConversationResult\", b), this.trigger(a.target, \"dataTweetSocialProofResult\", b);\n }, d = function(b, c, d) {\n this.trigger(a.target, \"dataTweetExpansionError\", {\n JSBNG__status: c,\n errorThrown: d\n });\n }, e = [\"social_proof\",];\n ((b.fullConversation ? e.push(\"ancestors\", \"descendants\") : ((b.descendantsOnly && e.push(\"descendants\")))));\n var f = {\n include: e\n };\n ((b.facepileMax && (f.facepile_max = b.facepileMax)));\n var g = window.JSBNG__location.search.match(/[?&]js_maps=([^&]+)/);\n ((g && (f.js_maps = g[1]))), this.get({\n url: ((\"/i/expanded/batch/\" + encodeURIComponent($(a.target).attr(\"data-tweet-id\")))),\n data: f,\n eventData: b,\n success: c.bind(this),\n error: d.bind(this)\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiNeedsTweetExpandedContent\", this.requestExpansion);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), Conversations = defineComponent(conversations, withData);\n module.exports = Conversations;\n});\ndefine(\"app/data/media_settings\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",\"core/i18n\",], function(module, require, exports) {\n function mediaSettings() {\n this.flagMedia = function(a, b) {\n this.post({\n url: \"/i/expanded/flag_possibly_sensitive\",\n eventData: b,\n data: b,\n success: \"dataFlaggedMediaResult\",\n error: \"dataFlaggedMediaError\"\n });\n }, this.updateViewPossiblySensitive = function(a, b) {\n this.post({\n url: \"/i/expanded/update_view_possibly_sensitive\",\n eventData: b,\n data: b,\n success: \"dataUpdatedViewPossiblySensitiveResult\",\n error: \"dataUpdatedViewPossiblySensitiveError\"\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiFlagMedia\", this.flagMedia), this.JSBNG__on(\"uiUpdateViewPossiblySensitive\", this.updateViewPossiblySensitive), this.JSBNG__on(\"dataUpdatedViewPossiblySensitiveResult\", function() {\n this.trigger(\"uiShowMessage\", {\n message: _(\"Your media display settings have been changed.\")\n });\n }), this.JSBNG__on(\"dataUpdatedViewPossiblySensitiveError\", function() {\n this.trigger(\"uiShowError\", {\n message: _(\"Couldn't set inline media settings.\")\n });\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), _ = require(\"core/i18n\");\n module.exports = defineComponent(mediaSettings, withData);\n});\ndefine(\"app/ui/dialogs/sensitive_flag_confirmation\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_dialog\",\"app/ui/with_position\",], function(module, require, exports) {\n function flagDialog() {\n this.defaultAttrs({\n dialogSelector: \"#sensitive_flag_dialog\",\n cancelSelector: \"#cancel_flag_confirmation\",\n submitSelector: \"#submit_flag_confirmation\",\n settingsSelector: \"#sensitive-settings-checkbox\",\n illegalSelector: \"#sensitive-illegal-checkbox\"\n }), this.flag = function() {\n ((this.select(\"settingsSelector\").attr(\"checked\") && this.trigger(\"uiUpdateViewPossiblySensitive\", {\n do_show: !1\n }))), ((this.select(\"illegalSelector\").attr(\"checked\") && this.trigger(\"uiFlagMedia\", {\n id: this.$dialog.attr(\"data-tweet-id\")\n }))), this.close();\n }, this.openWithId = function(b, c) {\n this.$dialog.attr(\"data-tweet-id\", c.id), this.open();\n }, this.after(\"initialize\", function(a) {\n this.$dialog = this.select(\"dialogSelector\"), this.JSBNG__on(JSBNG__document, \"uiFlagConfirmation\", this.openWithId), this.JSBNG__on(\"click\", {\n submitSelector: this.flag,\n cancelSelector: this.close\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withDialog = require(\"app/ui/with_dialog\"), withPosition = require(\"app/ui/with_position\");\n module.exports = defineComponent(flagDialog, withDialog, withPosition);\n});\ndefine(\"app/ui/user_actions\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_user_actions\",], function(module, require, exports) {\n function userActions() {\n \n };\n;\n var defineComponent = require(\"core/component\"), withUserActions = require(\"app/ui/with_user_actions\");\n module.exports = defineComponent(userActions, withUserActions);\n});\ndefine(\"app/data/prompt_mobile_app_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function mobileAppPromptScribe() {\n this.scribeOnClick = function(a, b) {\n var c = a.target;\n ((((c.getAttribute(\"id\") == \"iphone_download\")) ? this.scribe({\n component: \"promptbird_262\",\n element: \"iphone_download\",\n action: \"click\"\n }) : ((((c.getAttribute(\"id\") == \"android_download\")) ? this.scribe({\n component: \"promptbird_262\",\n element: \"android_download\",\n action: \"click\"\n }) : ((((c.className == \"dismiss-white\")) && this.scribe({\n component: \"promptbird_262\",\n action: \"dismiss\"\n })))))));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", this.scribeOnClick);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(mobileAppPromptScribe, withScribe);\n});\ndefine(\"app/boot/tweets\", [\"module\",\"require\",\"exports\",\"app/boot/activity_popup\",\"app/data/tweet_actions\",\"app/data/tweet_translation\",\"app/data/conversations\",\"app/data/media_settings\",\"app/ui/dialogs/sensitive_flag_confirmation\",\"app/ui/expando/expanding_tweets\",\"app/ui/media/media_tweets\",\"app/data/url_resolver\",\"app/ui/user_actions\",\"app/data/prompt_mobile_app_scribe\",\"core/utils\",], function(module, require, exports) {\n function initialize(a, b) {\n activityPopupBoot(b), TweetActionsData.attachTo(JSBNG__document, b), TweetTranslationData.attachTo(JSBNG__document, b), ConversationsData.attachTo(JSBNG__document, b), MediaSettingsData.attachTo(JSBNG__document, b), UrlResolver.attachTo(JSBNG__document), ExpandingTweets.attachTo(a, b), ((b.excludeUserActions || UserActions.attachTo(a, utils.merge(b, {\n genericItemSelector: \".js-stream-item\"\n })))), MediaTweets.attachTo(a, b), SensitiveFlagConfirmationDialog.attachTo(JSBNG__document), MobileAppPromptScribe.attachTo($(\"div[data-prompt-id=262]\"));\n };\n;\n var activityPopupBoot = require(\"app/boot/activity_popup\"), TweetActionsData = require(\"app/data/tweet_actions\"), TweetTranslationData = require(\"app/data/tweet_translation\"), ConversationsData = require(\"app/data/conversations\"), MediaSettingsData = require(\"app/data/media_settings\"), SensitiveFlagConfirmationDialog = require(\"app/ui/dialogs/sensitive_flag_confirmation\"), ExpandingTweets = require(\"app/ui/expando/expanding_tweets\"), MediaTweets = require(\"app/ui/media/media_tweets\"), UrlResolver = require(\"app/data/url_resolver\"), UserActions = require(\"app/ui/user_actions\"), MobileAppPromptScribe = require(\"app/data/prompt_mobile_app_scribe\"), utils = require(\"core/utils\");\n module.exports = initialize;\n});\ndefine(\"app/boot/help_pips_enable\", [\"module\",\"require\",\"exports\",\"app/utils/cookie\",\"app/utils/storage/core\",], function(module, require, exports) {\n function initialize(a) {\n var b = new JSBNG__Storage(\"help_pips\"), c = +(new JSBNG__Date);\n b.clear(), b.setItem(\"until\", ((c + 1209600000))), cookie(\"help_pips\", null);\n };\n;\n var cookie = require(\"app/utils/cookie\"), JSBNG__Storage = require(\"app/utils/storage/core\");\n module.exports = initialize;\n});\ndefine(\"app/data/help_pips\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function helpPipsData() {\n this.defaultAttrs({\n noShowError: !0\n }), this.loadHelpPips = function(a, b) {\n var c = function(a) {\n this.trigger(\"dataHelpPipsLoaded\", {\n pips: a\n });\n }.bind(this), d = function(a) {\n this.trigger(\"dataHelpPipsError\");\n }.bind(this);\n this.get({\n url: \"/i/help/pips\",\n data: {\n },\n eventData: b,\n success: c,\n error: d\n });\n }, this.after(\"initialize\", function() {\n this.loadHelpPips();\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(helpPipsData, withData);\n});\ndefine(\"app/data/help_pips_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function helpPipsScribe() {\n this.after(\"initialize\", function() {\n this.scribeOnEvent(\"uiHelpPipIconAdded\", \"impression\"), this.scribeOnEvent(\"uiHelpPipIconClicked\", \"open\"), this.scribeOnEvent(\"uiHelpPipPromptFollowed\", \"success\"), this.scribeOnEvent(\"uiHelpPipExplainTriggered\", \"show\"), this.scribeOnEvent(\"uiHelpPipExplainClicked\", \"dismiss\"), this.scribeOnEvent(\"uiHelpPipExplainFollowed\", \"complete\");\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(helpPipsScribe, withScribe);\n});\ndefine(\"app/ui/help_pip\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function helpPip() {\n this.explainTriggered = function(a) {\n var b = $(a.target).closest(\".js-stream-item\");\n if (!b.length) {\n return;\n }\n ;\n ;\n if (((this.pip.matcher && ((b.JSBNG__find(this.pip.matcher).length == 0))))) {\n return;\n }\n ;\n ;\n if (((this.state == \"icon\"))) this.trigger(\"uiHelpPipExplainTriggered\");\n else {\n if (((this.state != \"JSBNG__prompt\"))) {\n return;\n }\n ;\n ;\n this.trigger(\"uiHelpPipPromptFollowed\");\n }\n ;\n ;\n this.showState(\"explain\", b);\n }, this.dismissTriggered = function(a) {\n var b = $(a.target).closest(\".js-stream-item\");\n if (((((b.length && this.pip.matcher)) && ((b.JSBNG__find(this.pip.matcher).length == 0))))) {\n return;\n }\n ;\n ;\n ((((((!b.length || ((b[0] == this.$streamItem[0])))) && ((this.state == \"explain\")))) && this.trigger(\"uiHelpPipExplainFollowed\"))), this.dismiss();\n }, this.clicked = function(a) {\n ((((this.state == \"icon\")) ? (this.trigger(\"uiHelpPipIconClicked\"), this.showState(\"JSBNG__prompt\")) : ((((this.state == \"explain\")) && (this.trigger(\"uiHelpPipExplainClicked\"), this.dismiss())))));\n }, this.showState = function(a, b) {\n if (((((a == \"JSBNG__prompt\")) && !this.pip.html.JSBNG__prompt))) {\n return this.showState(\"explain\", b);\n }\n ;\n ;\n b = ((b || this.$streamItem));\n if (((this.state == a))) {\n return;\n }\n ;\n ;\n ((((((this.state == \"icon\")) && ((((a == \"JSBNG__prompt\")) || ((a == \"explain\")))))) && this.trigger(\"uiHelpPipOpened\", {\n pip: this.pip\n }))), ((((this.$streamItem[0] != b[0])) && this.unhighlight())), this.state = a, this.$streamItem = b;\n var c = this.$pip.JSBNG__find(\".js-pip\");\n c.prependTo(this.$pip.parent()).fadeOut(\"fast\", function() {\n c.remove();\n var b = this.pip.html[a], d = this.pip[((a + \"Highlight\"))];\n this.$pip.html(b).fadeIn(\"fast\"), ((((d && ((d != \"remove\")))) ? this.highlight(d) : this.unhighlight(((d == \"remove\")))));\n }.bind(this)), this.$pip.hide().prependTo(b);\n }, this.dismiss = function() {\n ((this.$streamItem && this.unhighlight())), this.$pip.fadeOut(function() {\n this.remove(), this.teardown(), this.trigger(\"uiHelpPipDismissed\");\n }.bind(this));\n }, this.highlight = function(a) {\n if (this.$streamItem.JSBNG__find(a).is(\".stork-highlighted\")) {\n return;\n }\n ;\n ;\n this.unhighlight(), this.$streamItem.JSBNG__find(a).each(function() {\n var a = $(this), b = $(\"\\u003Cspan\\u003E\").addClass(\"stork-highlight-background\"), c = $(\"\\u003Cspan\\u003E\").addClass(\"stork-highlight-container\").css({\n width: a.JSBNG__outerWidth(),\n height: a.JSBNG__outerHeight()\n });\n a.wrap(c).before(b).addClass(\"stork-highlighted\"), b.fadeIn();\n });\n }, this.unhighlight = function(a) {\n this.$streamItem.JSBNG__find(\".stork-highlighted\").each(function() {\n var b = $(this), c = b.parent().JSBNG__find(\".stork-highlight-background\"), d = function() {\n c.remove(), b.unwrap();\n };\n b.removeClass(\"stork-highlighted\"), ((a ? d() : c.fadeOut(d)));\n });\n }, this.remove = function() {\n this.$pip.remove();\n }, this.after(\"initialize\", function(a) {\n this.state = \"icon\", this.pip = a.pip, this.$streamItem = a.$streamItem, this.$pip = $(\"\\u003Cdiv\\u003E\\u003C/div\\u003E\").html(this.pip.html.icon), this.$pip.hide().prependTo(this.$streamItem).fadeIn(\"fast\"), this.JSBNG__on(this.$pip, \"click\", this.clicked), this.trigger(\"uiHelpPipIconAdded\"), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.remove), ((this.pip.explainOn && (((((typeof this.pip.explainOn == \"string\")) && (this.pip.explainOn = {\n JSBNG__event: this.pip.explainOn\n }))), ((this.pip.explainOn.selector ? this.JSBNG__on(this.$node.JSBNG__find(this.pip.explainOn.selector), this.pip.explainOn.JSBNG__event, this.explainTriggered) : this.JSBNG__on(this.pip.explainOn.JSBNG__event, this.explainTriggered)))))), ((this.pip.dismissOn && (((((typeof this.pip.dismissOn == \"string\")) && (this.pip.dismissOn = {\n JSBNG__event: this.pip.dismissOn\n }))), ((this.pip.dismissOn.selector ? this.JSBNG__on(this.$node.JSBNG__find(this.pip.dismissOn.selector), this.pip.dismissOn.JSBNG__event, this.dismissTriggered) : this.JSBNG__on(this.pip.dismissOn.JSBNG__event, this.dismissTriggered))))));\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(helpPip);\n});\ndefine(\"app/ui/help_pips_injector\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/help_pip\",\"app/utils/storage/core\",], function(module, require, exports) {\n function helpPipsInjector() {\n this.defaultAttrs({\n pipSelector: \".js-pip\",\n tweetSelector: \".js-stream-item\"\n }), this.pipsLoaded = function(a, b) {\n this.pips = b.pips, this.injectPips();\n }, this.tweetsDisplayed = function(a) {\n this.injectPips();\n }, this.pipOpened = function(a, b) {\n this.storage.setItem(b.pip.category, !0);\n }, this.pipDismissed = function(a) {\n this.injectPips();\n }, this.injectPips = function() {\n if (!this.pips) {\n return;\n }\n ;\n ;\n if (this.select(\"pipSelector\").length) {\n return;\n }\n ;\n ;\n var a = this.pips.filter(function(a) {\n return !this.storage.getItem(a.category);\n }.bind(this)), b = this.select(\"tweetSelector\").slice(0, 10);\n b.each(function(b, c) {\n var d = $(c), e = !1;\n if (((d.attr(\"data-promoted\") || ((d.JSBNG__find(\"[data-promoted]\").length > 0))))) {\n return;\n }\n ;\n ;\n $.each(a, function(a, b) {\n if (d.JSBNG__find(b.matcher).length) {\n return HelpPip.attachTo(this.$node, {\n $streamItem: d,\n pip: b,\n eventData: {\n scribeContext: {\n component: \"stork\",\n element: b.id\n }\n }\n }), e = !0, !1;\n }\n ;\n ;\n }.bind(this));\n if (e) {\n return !1;\n }\n ;\n ;\n }.bind(this));\n }, this.after(\"initialize\", function() {\n this.deferredDisplays = [], this.storage = new JSBNG__Storage(\"help_pips\"), this.JSBNG__on(JSBNG__document, \"uiTweetsDisplayed\", this.tweetsDisplayed), this.JSBNG__on(JSBNG__document, \"dataHelpPipsLoaded\", this.pipsLoaded), this.JSBNG__on(\"uiHelpPipDismissed\", this.pipDismissed), this.JSBNG__on(\"uiHelpPipOpened\", this.pipOpened);\n });\n };\n;\n var defineComponent = require(\"core/component\"), HelpPip = require(\"app/ui/help_pip\"), JSBNG__Storage = require(\"app/utils/storage/core\");\n module.exports = defineComponent(helpPipsInjector);\n});\ndefine(\"app/boot/help_pips\", [\"module\",\"require\",\"exports\",\"app/utils/cookie\",\"app/utils/storage/core\",\"app/boot/help_pips_enable\",\"app/data/help_pips\",\"app/data/help_pips_scribe\",\"app/ui/help_pips_injector\",], function(module, require, exports) {\n function initialize(a) {\n var b = new JSBNG__Storage(\"help_pips\"), c = +(new JSBNG__Date);\n ((cookie(\"help_pips\") && enableHelpPips())), ((((((b.getItem(\"until\") || 0)) > c)) && (HelpPipsData.attachTo(JSBNG__document), HelpPipsInjector.attachTo(\"#timeline\"), HelpPipsScribe.attachTo(JSBNG__document))));\n };\n;\n var cookie = require(\"app/utils/cookie\"), JSBNG__Storage = require(\"app/utils/storage/core\"), enableHelpPips = require(\"app/boot/help_pips_enable\"), HelpPipsData = require(\"app/data/help_pips\"), HelpPipsScribe = require(\"app/data/help_pips_scribe\"), HelpPipsInjector = require(\"app/ui/help_pips_injector\");\n module.exports = initialize;\n});\ndefine(\"app/ui/expando/close_all_button\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function closeAllButton() {\n this.incrementOpenCount = function() {\n this.toggleButton(++this.openCount);\n }, this.decrementOpenCount = function() {\n this.toggleButton(--this.openCount);\n }, this.toggleButton = function(a) {\n this.$node[((((a > 0)) ? \"fadeIn\" : \"fadeOut\"))](200);\n }, this.broadcastClose = function(a) {\n a.preventDefault(), this.trigger(this.attr.where, this.attr.closeAllEvent);\n }, this.readOpenCountFromTimeline = function() {\n this.openCount = $(this.attr.where).JSBNG__find(\".open\").length, this.toggleButton(this.openCount);\n }, this.hide = function() {\n this.$node.hide();\n }, this.after(\"initialize\", function(a) {\n this.openCount = 0, this.JSBNG__on(JSBNG__document, \"uiSwiftLoaded uiPageChanged\", this.readOpenCountFromTimeline), this.JSBNG__on(a.where, a.addEvent, this.incrementOpenCount), this.JSBNG__on(a.where, a.subtractEvent, this.decrementOpenCount), this.JSBNG__on(\"click\", this.broadcastClose), this.JSBNG__on(JSBNG__document, \"uiShortcutCloseAll\", this.broadcastClose), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.hide);\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(closeAllButton);\n});\ndefine(\"app/ui/timelines/with_keyboard_navigation\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withKeyboardNavigation() {\n this.defaultAttrs({\n selectedClass: \"selected-stream-item\",\n selectedSelector: \".selected-stream-item\",\n unselectableClass: \"js-unselectable-stream-item\",\n firstItemSelector: \".js-stream-item:first-child:not(.js-unselectable-stream-item)\",\n ownTweetSelector: \".my-tweet\",\n replyLinkSelector: \"div.tweet ul.js-actions a.js-action-reply\",\n profileCardSelector: \".profile-card\",\n streamTweetSelector: \".js-stream-tweet\",\n activityMentionClass: \"js-activity-mention\",\n activityReplyClass: \"js-activity-reply\",\n pushStateSelector: \"a.js-nav\",\n navigationActiveClass: \"js-navigation-active\"\n }), this.moveSelection = function(a) {\n var b = $(a.target);\n if (b.closest(this.attr.selectedSelector).length) {\n return;\n }\n ;\n ;\n var c;\n ((b.closest(\".js-expansion-container\") ? c = b.closest(\"li\") : c = b.closest(this.attr.genericItemSelector))), ((b.closest(this.attr.pushStateSelector).length && (this.$linkClicked = c, JSBNG__clearTimeout(this.linkTimer), this.linkTimer = JSBNG__setTimeout(function() {\n this.$linkClicked = $();\n }.bind(this), 0)))), ((this.$selected.length && this.selectItem(c)));\n }, this.clearSelection = function() {\n this.$selected.removeClass(this.attr.selectedClass), this.$selected = $();\n }, this.selectTopItem = function() {\n this.clearSelection(), this.trigger(\"uiInjectNewItems\"), this.selectAdjacentItem(\"next\");\n }, this.injectAndPossiblySelectTopItem = function() {\n var a = this.$selected.length;\n ((a && this.clearSelection())), this.trigger(\"uiInjectNewItems\"), ((a && this.selectAdjacentItem(\"next\")));\n }, this.selectPrevItem = function() {\n this.selectAdjacentItem(\"prev\");\n }, this.selectNextItem = function(a, b) {\n this.selectAdjacentItem(\"next\", b);\n }, this.selectNextItemNotFrom = function(a) {\n var b = \"next\", c = this.$selected;\n while (((this.getUserId() == a))) {\n this.selectAdjacentItem(b);\n if (((c == this.$selected))) {\n if (((b != \"next\"))) {\n return;\n }\n ;\n ;\n b = \"prev\";\n }\n else c = this.$selected;\n ;\n ;\n };\n ;\n }, this.getAdjacentParentItem = function(a, b) {\n var c = a.closest(\".js-navigable-stream\"), d = a;\n if (c.length) {\n a = c.closest(\".stream-item\"), d = a[b]();\n if (!d.length) {\n return this.getAdjacentParentItem(a, b);\n }\n ;\n ;\n }\n ;\n ;\n return d;\n }, this.getAdjacentChildItem = function(a, b) {\n var c = a, d = c.hasClass(\"js-has-navigable-stream\"), e = ((((b == \"next\")) ? \"first-child\" : \"last-child\"));\n return ((((c.length && d)) ? (c = c.JSBNG__find(\".js-navigable-stream\").eq(0).JSBNG__find(((\"\\u003Eli:\" + e))), this.getAdjacentChildItem(c, b)) : c));\n }, this.selectAdjacentItem = function(a, b) {\n var c;\n ((this.$selected.length ? c = this.$selected[a]() : c = this.select(\"firstItemSelector\").eq(0))), ((c.length || (c = this.getAdjacentParentItem(this.$selected, a)))), c = this.getAdjacentChildItem(c, a);\n if (((c.length && c.hasClass(this.attr.unselectableClass)))) {\n return this.$selected = c, this.selectAdjacentItem(a, b);\n }\n ;\n ;\n this.selectItem(c), this.setARIALabel(), this.focusSelected(), ((((c.length && ((!b || !b.maintainPosition)))) && this.adjustScrollForSelectedItem()));\n var d = ((((a == \"next\")) ? \"uiNextItemSelected\" : \"uiPreviousItemSelected\"));\n this.trigger(this.$selected, d);\n }, this.selectItem = function(a) {\n var b = this.$selected;\n if (((!a.length || ((b == a))))) {\n return;\n }\n ;\n ;\n this.$selected = a, this.$node.JSBNG__find(this.attr.selectedSelector).removeClass(this.attr.selectedClass), b.removeClass(this.attr.selectedClass), b.removeAttr(\"tabIndex\"), b.removeAttr(\"aria-labelledby\"), this.$selected.addClass(this.attr.selectedClass);\n }, this.setARIALabel = function() {\n var a = this.$selected.JSBNG__find(\".tweet\"), b = ((a.attr(\"id\") || ((\"tweet-\" + a.attr(\"data-tweet-id\"))))), c = [], d = [\".stream-item-header\",\".tweet-text\",\".context\",];\n ((a.hasClass(\"favorited\") && d.push(\".tweet-actions .unfavorite\"))), ((a.hasClass(\"retweeted\") && d.push(\".tweet-actions .undo-retweet\"))), d.push(\".expanded-content\"), a.JSBNG__find(d.join()).each(function(a, d) {\n var e = d.id;\n ((e || (e = ((((b + \"-\")) + a)), d.setAttribute(\"id\", e)))), c.push(e);\n }), this.$selected.attr(\"aria-labelledby\", c.join(\" \"));\n }, this.focusSelected = function() {\n this.$selected.attr(\"tabIndex\", -1).JSBNG__focus();\n }, this.deselect = function(a) {\n var b = (([\"HTML\",\"BODY\",].indexOf(a.target.tagName) != -1)), c = ((((a.target.id == \"page-outer\")) && !$(a.target).parents(\"#page-container\").length));\n ((((b || c)) && this.clearSelection()));\n }, this.favoriteItem = function() {\n this.trigger(this.$selected, \"uiDidFavoriteTweetToggle\");\n }, this.retweetItem = function() {\n ((this.itemSelectedIsMine() || this.trigger(this.$selected, \"uiDidRetweetTweetToggle\")));\n }, this.replyItem = function() {\n var a = this.$selected.JSBNG__find(this.attr.replyLinkSelector).first();\n this.trigger(a, \"uiDidReplyTweetToggle\");\n }, this.blockUser = function() {\n this.takeAction(\"uiOpenBlockUserDialog\");\n }, this.unblockUser = function() {\n this.takeAction(\"uiUnblockAction\");\n }, this.takeAction = function(a) {\n ((((!this.itemSelectedIsMine() && this.itemSelectedIsBlockable())) && this.trigger(this.$selected, a, {\n userId: this.getUserId(),\n username: this.getUsername(),\n fromShortcut: !0\n })));\n }, this.getUserId = function() {\n return this.$selected.JSBNG__find(this.attr.streamTweetSelector).attr(\"data-user-id\");\n }, this.getUsername = function() {\n return this.$selected.JSBNG__find(this.attr.streamTweetSelector).attr(\"data-name\");\n }, this.itemSelectedIsMine = function() {\n return (($(this.$selected).JSBNG__find(this.attr.ownTweetSelector).length > 0));\n }, this.itemSelectedIsBlockable = function() {\n return (((((($(this.$selected).children(this.attr.streamTweetSelector).length > 0)) || $(this.$selected).hasClass(this.attr.activityReplyClass))) || $(this.$selected).hasClass(this.attr.activityMentionClass)));\n }, this.updateAfterBlock = function(a, b) {\n (((($(this.attr.profileCardSelector).size() === 0)) && (this.selectNextItemNotFrom(b.userId), this.trigger(\"uiRemoveTweetsFromUser\", b))));\n }, this.adjustScrollForItem = function(a) {\n ((a.length && $(window).scrollTop(((a.offset().JSBNG__top - (($(window).height() / 2)))))));\n }, this.notifyExpansionRequest = function() {\n this.trigger(this.$selected, \"uiShouldToggleExpandedState\");\n }, this.adjustScrollForSelectedItem = function() {\n this.adjustScrollForItem(this.$selected);\n }, this.processActiveNavigation = function() {\n var a = 2;\n JSBNG__setTimeout(this.removeActiveNavigationClass.bind(this), ((a * 1000)));\n }, this.setNavigationActive = function() {\n this.$linkClicked.addClass(this.attr.navigationActiveClass);\n }, this.removeActiveNavigationClass = function() {\n var a = this.$node.JSBNG__find(((\".\" + this.attr.navigationActiveClass)));\n a.removeClass(this.attr.navigationActiveClass);\n }, this.handleEvent = function(a) {\n return function() {\n (($(\"body\").hasClass(\"modal-enabled\") || this[a].apply(this, arguments)));\n };\n }, this.changeSelection = function(a, b) {\n var c = $(a.target);\n ((this.$selected.length && (this.selectItem(c), ((((b && b.setFocus)) && (this.setARIALabel(), this.focusSelected()))))));\n }, this.after(\"initialize\", function() {\n this.$selected = this.$node.JSBNG__find(this.attr.selectedSelector), this.$linkClicked = $(), this.JSBNG__on(JSBNG__document, \"uiShortcutSelectPrev\", this.handleEvent(\"selectPrevItem\")), this.JSBNG__on(JSBNG__document, \"uiShortcutSelectNext uiSelectNext\", this.handleEvent(\"selectNextItem\")), this.JSBNG__on(JSBNG__document, \"uiSelectItem\", this.handleEvent(\"changeSelection\")), this.JSBNG__on(JSBNG__document, \"uiShortcutEnter\", this.handleEvent(\"notifyExpansionRequest\")), this.JSBNG__on(JSBNG__document, \"uiShortcutGotoTopOfScreen uiSelectTopTweet\", this.handleEvent(\"selectTopItem\")), this.JSBNG__on(JSBNG__document, \"uiGotoTopOfScreen\", this.handleEvent(\"injectAndPossiblySelectTopItem\")), this.JSBNG__on(JSBNG__document, \"uiShortcutFavorite\", this.handleEvent(\"favoriteItem\")), this.JSBNG__on(JSBNG__document, \"uiShortcutRetweet\", this.handleEvent(\"retweetItem\")), this.JSBNG__on(JSBNG__document, \"uiShortcutReply\", this.handleEvent(\"replyItem\")), this.JSBNG__on(JSBNG__document, \"uiShortcutBlock\", this.handleEvent(\"blockUser\")), this.JSBNG__on(JSBNG__document, \"uiShortcutUnblock\", this.handleEvent(\"unblockUser\")), this.JSBNG__on(JSBNG__document, \"uiUpdateAfterBlock\", this.updateAfterBlock), this.JSBNG__on(JSBNG__document, \"uiRemovedSomeTweets\", this.adjustScrollForSelectedItem), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged uiClearSelection\", this.clearSelection), this.JSBNG__on(JSBNG__document, \"uiPageChanged\", this.processActiveNavigation), this.JSBNG__on(\"click\", {\n genericItemSelector: this.moveSelection\n }), this.JSBNG__on(JSBNG__document, \"uiNavigate\", this.setNavigationActive), this.JSBNG__on(JSBNG__document, \"click\", this.deselect);\n });\n };\n;\n module.exports = withKeyboardNavigation;\n});\ndefine(\"app/ui/with_focus_highlight\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function focusHighlight() {\n this.defaultAttrs({\n focusClass: \"JSBNG__focus\",\n focusContainerSelector: \".tweet\"\n }), this.addFocusStyle = function(a, b) {\n $(b.el).addClass(this.attr.focusClass);\n }, this.removeFocusStyle = function(a, b) {\n JSBNG__setTimeout(function() {\n var a = b.el, c = JSBNG__document.activeElement;\n ((((!$.contains(a, c) && ((a != c)))) && $(a).removeClass(this.attr.focusClass)));\n }.bind(this), 0);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"focusin\", {\n focusContainerSelector: this.addFocusStyle\n }), this.JSBNG__on(\"focusout\", {\n focusContainerSelector: this.removeFocusStyle\n });\n });\n };\n;\n module.exports = focusHighlight;\n});\ndefine(\"app/ui/timelines/with_base_timeline\", [\"module\",\"require\",\"exports\",\"app/ui/timelines/with_keyboard_navigation\",\"app/ui/with_interaction_data\",\"app/utils/scribe_event_initiators\",\"app/ui/with_focus_highlight\",\"core/compose\",\"app/utils/animate_window_scrolltop\",], function(module, require, exports) {\n function withBaseTimeline() {\n compose.mixin(this, [withKeyboardNavigation,withInteractionData,withFocusHighLight,]), this.defaultAttrs({\n containerSelector: \".stream-container\",\n itemsSelector: \"#stream-items-id\",\n genericItemSelector: \".js-stream-item\",\n timelineEndSelector: \".timeline-end\",\n backToTopSelector: \".back-to-top\",\n lastItemSelector: \".stream-item:last\",\n streamItemContentsSelector: \".js-actionable-tweet, .js-actionable-user, .js-activity, .js-story-item\"\n }), this.findFirstItemContent = function(a) {\n var b = a.JSBNG__find(this.attr.streamItemContentsSelector);\n return b = b.not(\".conversation-tweet\"), $(b[0]);\n }, this.injectItems = function(a, b, c, d) {\n var e = $(\"\\u003Cdiv/\\u003E\").html(b).children();\n return ((((e.length > 0)) && this.select(\"timelineEndSelector\").addClass(\"has-items\"))), this.select(\"itemsSelector\")[a](e), this.reportInjectedItems(e, c, d), e;\n }, this.removeDuplicates = function(a) {\n var b = [];\n return a.filter(function(a) {\n return ((a.tweetId ? ((((b.indexOf(a.tweetId) === -1)) ? (b.push(a.tweetId), !0) : !1)) : !0));\n });\n }, this.reportInjectedItems = function(a, b, c) {\n var d = [];\n a.each(function(a, c) {\n if (((((((b === \"uiHasInjectedNewTimeline\")) || ((b === \"uiHasInjectedOldTimelineItems\")))) || ((b === \"uiHasInjectedRangeTimelineItems\"))))) {\n d = d.concat(this.extraInteractionData($(c))), d.push(this.interactionData(this.findFirstItemContent($(c))));\n }\n ;\n ;\n this.trigger(c, \"uiHasInjectedTimelineItem\");\n }.bind(this)), d = this.removeDuplicates(d);\n var e = {\n };\n if (((((((b === \"uiHasInjectedNewTimeline\")) || ((b === \"uiHasInjectedOldTimelineItems\")))) || ((b === \"uiHasInjectedRangeTimelineItems\"))))) {\n e = {\n scribeContext: {\n component: ((this.attr.itemType && ((this.attr.itemType + \"_stream\"))))\n },\n scribeData: {\n },\n items: d\n }, ((((c && c.autoplay)) && (e.scribeData.event_initiator = eventInitiators.clientSideApp)));\n }\n ;\n ;\n this.trigger(\"uiWantsToRefreshTimestamps\"), this.trigger(b, e);\n }, this.inspectItemsFromServer = function(a, b) {\n ((this.isOldItem(b) ? this.injectOldItems(b) : ((this.isNewItem(b) ? this.notifyNewItems(b) : ((this.wasRangeRequest(b) && this.injectRangeItems(b)))))));\n }, this.investigateDataError = function(a, b) {\n var c = b.sourceEventData;\n if (!c) {\n return;\n }\n ;\n ;\n ((this.wasRangeRequest(c) ? this.notifyRangeItemsError(b) : ((this.wasNewItemsRequest(c) || ((this.wasOldItemsRequest(c) && this.notifyOldItemsError(b)))))));\n }, this.possiblyShowBackToTop = function() {\n var a = this.select(\"lastItemSelector\").position();\n ((((a && ((a.JSBNG__top >= $(window).height())))) && this.select(\"backToTopSelector\").show()));\n }, this.scrollToTop = function() {\n animateWinScrollTop(0, \"fast\");\n }, this.getTimelinePosition = function(a) {\n return a.closest(this.attr.genericItemSelector).index();\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(\"dataGotMoreTimelineItems\", this.inspectItemsFromServer), this.JSBNG__on(\"dataGotMoreTimelineItemsError\", this.investigateDataError), this.JSBNG__on(\"click\", {\n backToTopSelector: this.scrollToTop\n }), this.possiblyShowBackToTop();\n });\n };\n;\n var withKeyboardNavigation = require(\"app/ui/timelines/with_keyboard_navigation\"), withInteractionData = require(\"app/ui/with_interaction_data\"), eventInitiators = require(\"app/utils/scribe_event_initiators\"), withFocusHighLight = require(\"app/ui/with_focus_highlight\"), compose = require(\"core/compose\"), animateWinScrollTop = require(\"app/utils/animate_window_scrolltop\");\n module.exports = withBaseTimeline;\n});\ndefine(\"app/ui/timelines/with_old_items\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withOldItems() {\n this.defaultAttrs({\n endOfStreamSelector: \".stream-footer\",\n errorMessageSelector: \".stream-fail-container\",\n tryAgainSelector: \".try-again-after-whale\",\n allowInfiniteScroll: !0\n }), this.getOldItems = function() {\n ((((this.shouldGetOldItems() && !this.requestInProgress)) && (this.requestInProgress = !0, this.trigger(\"uiWantsMoreTimelineItems\", this.getOldItemsData()))));\n }, this.injectOldItems = function(a) {\n this.hideWhaleEnd(), this.resetStateVariables(a), ((a.has_more_items ? this.showMoreSpinner() : this.hideMoreSpinner()));\n var b = this.$document.height();\n this.injectItems(((this.attr.isBackward ? \"prepend\" : \"append\")), a.items_html, \"uiHasInjectedOldTimelineItems\"), ((this.attr.isBackward ? (this.$window.scrollTop(((this.$document.height() - b))), ((a.has_more_items || this.select(\"endOfStreamSelector\").remove()))) : this.possiblyShowBackToTop())), this.requestInProgress = !1;\n }, this.notifyOldItemsError = function(a) {\n this.showWhaleEnd(), this.requestInProgress = !1;\n }, this.showWhaleEnd = function() {\n this.select(\"errorMessageSelector\").show(), this.select(\"endOfStreamSelector\").hide();\n }, this.hideWhaleEnd = function() {\n this.select(\"errorMessageSelector\").hide(), this.select(\"endOfStreamSelector\").show();\n }, this.showMoreSpinner = function() {\n this.select(\"timelineEndSelector\").addClass(\"has-more-items\");\n }, this.hideMoreSpinner = function() {\n this.select(\"timelineEndSelector\").removeClass(\"has-more-items\");\n }, this.tryAgainAfterWhale = function(a) {\n a.preventDefault(), this.hideWhaleEnd(), this.getOldItems();\n }, this.after(\"initialize\", function(a) {\n this.requestInProgress = !1, ((this.attr.allowInfiniteScroll && this.JSBNG__on(window, ((this.attr.isBackward ? \"uiNearTheTop\" : \"uiNearTheBottom\")), this.getOldItems))), this.$document = $(JSBNG__document), this.$window = $(window), this.JSBNG__on(\"click\", {\n tryAgainSelector: this.tryAgainAfterWhale\n });\n });\n };\n;\n module.exports = withOldItems;\n});\ndefine(\"app/utils/chrome\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n var chrome = {\n globalYOffset: null,\n selectors: {\n globalNav: \".global-nav\"\n },\n getGlobalYOffset: function() {\n return ((((chrome.globalYOffset === null)) && (chrome.globalYOffset = $(chrome.selectors.globalNav).height()))), chrome.globalYOffset;\n },\n getCanvasYOffset: function(a) {\n return ((a.offset().JSBNG__top - chrome.getGlobalYOffset()));\n }\n };\n module.exports = chrome;\n});\ndefine(\"app/ui/timelines/with_traveling_ptw\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withTravelingPTw() {\n this.closePromotedItem = function(a) {\n ((a.hasClass(\"open\") && this.trigger(a, \"uiShouldToggleExpandedState\", {\n noAnimation: !0\n })));\n }, this.transferClass = function(a, b, c) {\n ((a.hasClass(b) && (a.removeClass(b), c.addClass(b))));\n }, this.repositionPromotedItem = function(a) {\n var b = this.$promotedItem;\n this.transferClass(b, \"before-expanded\", b.prev()), this.transferClass(b, \"after-expanded\", b.next()), a.call(this, b.detach()), this.transferClass(b.next(), \"after-expanded\", \"prev\");\n }, this.after(\"initialize\", function(a) {\n this.travelingPromoted = a.travelingPromoted, this.$promotedItem = this.$node.JSBNG__find(\".promoted-tweet\").first().closest(\".stream-item\");\n }), this.movePromotedToTop = function() {\n if (this.autoplay) {\n return;\n }\n ;\n ;\n this.repositionPromotedItem(function(a) {\n var b = this.$node.JSBNG__find(this.attr.streamItemsSelector).children().first();\n b[((b.hasClass(\"open\") ? \"after\" : \"before\"))](a);\n });\n };\n };\n;\n module.exports = withTravelingPTw;\n});\ndefine(\"app/ui/timelines/with_autoplaying_timeline\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/utils/chrome\",\"app/ui/timelines/with_traveling_ptw\",\"app/utils/animate_window_scrolltop\",], function(module, require, exports) {\n function withAutoplayingTimeline() {\n compose.mixin(this, [withTravelingPTw,]);\n var a = 700, b = 750, c = 300;\n this.defaultAttrs({\n autoplayControlSelector: \".autoplay-control .play-pause\",\n streamItemsSelector: \".stream-items\",\n socialProofSelector: \".tweet-stats-container\",\n autoplayMarkerSelector: \".stream-autoplay-marker\",\n notificationBarOpacity: 94796\n }), this.autoplayNewItems = function(a, b) {\n if (!a) {\n return;\n }\n ;\n ;\n var c = this.$window.scrollTop(), d = ((c + this.$window.height())), e = ((this.$promotedItem.length && ((this.$promotedItem.offset().JSBNG__top > d)))), f = this.injectNewItems({\n }, {\n autoplay: !0\n });\n ((((this.travelingPTw && e)) && this.repositionPromotedItem(function(a) {\n f.first().before(a), f = f.add(a), this.trigger(a, \"uiShouldFixMargins\");\n })));\n var g = f.first().offset().JSBNG__top, h = ((((g > c)) && ((g < d)))), i = this.$container.offset().JSBNG__top, j = ((((f.last().next().offset().JSBNG__top - i)) + 1));\n if (h) this.$container.css(\"marginTop\", -j), this.animateBlockOfItems(f);\n else {\n var k = chrome.getGlobalYOffset(), l = ((this.$notification.is(\":visible\") ? k : -100));\n this.showingAutoplayMarker = !1, this.setScrollerScrollTop(((c + j))), this.$notification.show().JSBNG__find(\".text\").text($(a).text()).end().css({\n JSBNG__top: l,\n opacity: this.attr.notificationBarOpacity\n }).animate({\n JSBNG__top: k\n }, {\n duration: 500,\n complete: function() {\n var a = this.newItemsXLine;\n this.newItemsXLine = ((((a > 0)) ? ((a + j)) : ((i + j)))), this.showingAutoplayMarker = !0, this.latentItems.count = b;\n }.bind(this)\n });\n }\n ;\n ;\n }, this.animateBlockOfItems = function(b) {\n var c = this.$window.scrollTop(), d = parseFloat(this.$container.css(\"marginTop\")), e = -b.first().position().JSBNG__top;\n this.isAnimating = !0, this.$container.parent().css(\"overflow\", \"hidden\"), this.$container.animate({\n marginTop: 0\n }, {\n duration: ((a + Math.abs(d))),\n step: function(a) {\n ((this.lockedTimelineScroll && this.setScrollerScrollTop(((c + Math.abs(((d - Math.ceil(a)))))))));\n }.bind(this),\n complete: function() {\n this.$container.parent().css(\"overflow\", \"inherit\"), this.isAnimating = !1, this.afterAnimationQueue.forEach(function(a) {\n a.call(this);\n }, this), this.afterAnimationQueue = [];\n }.bind(this)\n });\n }, this.handleSocialProofPops = function(a) {\n var b = $(a.target).closest(\".stream-item\");\n if (((this.lastClickedItem && ((b[0] === this.lastClickedItem))))) {\n return;\n }\n ;\n ;\n var c = $(a.target).JSBNG__find(this.attr.socialProofSelector).hide(), d = function() {\n var a = b.next().offset().JSBNG__top;\n c.show();\n var d = b.next().offset().JSBNG__top, e = this.$window.scrollTop();\n ((((this.lockedTimelineScroll || ((e > d)))) && this.setScrollerScrollTop(((e + ((d - a)))))));\n }.bind(this);\n ((this.isAnimating ? this.afterAnimationQueue.push(d) : d()));\n }, this.animateScrollToTop = function() {\n var a = ((this.$container.offset().JSBNG__top - 150)), d = {\n duration: b\n };\n ((this.attr.overflowScroll ? this.$node.animate({\n scrollTop: a\n }, d) : animateWinScrollTop(a, d))), this.$notification.animate({\n JSBNG__top: -200,\n opacity: 0\n }, {\n duration: c\n });\n }, this.setScrollerScrollTop = function(a) {\n var b = ((this.attr.overflowScroll ? this.$node : $(window)));\n b.scrollTop(a);\n }, this.removeAutoplayMarkerOnScroll = function() {\n var a, b = function() {\n ((this.showingAutoplayMarker ? (this.showingAutoplayMarker = !1, this.$notification.fadeOut(200)) : ((((((this.newItemsXLine > 0)) && ((this.$window.scrollTop() < this.newItemsXLine)))) && (this.newItemsXLine = 0, this.latentItems.count = 0)))));\n }.bind(this);\n this.$window.JSBNG__scroll(function(c) {\n if (!this.autoplay) {\n return;\n }\n ;\n ;\n JSBNG__clearTimeout(a), a = JSBNG__setTimeout(b, 0);\n }.bind(this));\n }, this.toggleAutoplay = function(a) {\n $(\".tooltip\").remove(), (($(a.target).parent().toggleClass(\"paused\").hasClass(\"paused\") ? this.disableAutoplay() : this.reenableAutoplay()));\n }, this.disableAutoplay = function() {\n this.autoplay = !1, this.trigger(\"uiHasDisabledAutoplay\");\n }, this.reenableAutoplay = function() {\n this.autoplay = !0, this.lockedTimelineScroll = !1, this.trigger(\"uiHasEnabledAutoplay\");\n var a = this.select(\"newItemsBarSelector\");\n a.animate({\n marginTop: -a.JSBNG__outerHeight(),\n opacity: 0\n }, {\n duration: 225,\n complete: this.autoplayNewItems.bind(this, a.html())\n });\n }, this.enableAutoplay = function(a) {\n this.autoplay = !0, this.travelingPTw = a.travelingPTw, this.lockedTimelineScroll = !1, this.afterAnimationQueue = [], this.newItemsXLine = 0, this.$container = this.select(\"streamItemsSelector\"), this.$notification = this.select(\"autoplayMarkerSelector\"), this.$window = ((a.overflowScroll ? this.$node : $(window))), this.JSBNG__on(\"mouseover\", function() {\n this.lockedTimelineScroll = !0;\n }), this.JSBNG__on(\"mouseleave\", function() {\n this.lockedTimelineScroll = !1;\n }), this.JSBNG__on(\"uiHasRenderedTweetSocialProof\", this.handleSocialProofPops), this.JSBNG__on(\"uiHasExpandedTweet\", function(a) {\n this.lastClickedItem = $(a.target).data(\"expando\").$container.get(0);\n }), this.JSBNG__on(\"click\", {\n autoplayControlSelector: this.toggleAutoplay,\n autoplayMarkerSelector: this.animateScrollToTop\n }), this.removeAutoplayMarkerOnScroll(), this.$notification.width(this.$notification.width()).css(\"position\", \"fixed\");\n }, this.after(\"initialize\", function(a) {\n ((a.autoplay && this.enableAutoplay(a)));\n });\n };\n;\n var compose = require(\"core/compose\"), chrome = require(\"app/utils/chrome\"), withTravelingPTw = require(\"app/ui/timelines/with_traveling_ptw\"), animateWinScrollTop = require(\"app/utils/animate_window_scrolltop\");\n module.exports = withAutoplayingTimeline;\n});\ndefine(\"app/ui/timelines/with_polling\", [\"module\",\"require\",\"exports\",\"core/utils\",\"app/utils/setup_polling_with_backoff\",], function(module, require, exports) {\n function withPolling() {\n this.defaultAttrs({\n pollingWatchNode: $(window),\n pollingEnabled: !0\n }), this.pausePolling = function() {\n this.pollingTimer.pause(), this.pollingPaused = !0;\n }, this.resetPolling = function() {\n this.backoffEmptyResponseCount = 0, this.pollingPaused = !1;\n }, this.pollForNewItems = function(a, b) {\n this.trigger(\"uiTimelineShouldRefresh\", {\n injectImmediately: !1,\n interval: this.pollingTimer.interval,\n fromPolling: !0\n });\n }, this.onGotMoreTimelineItems = function(a, b) {\n if (!((((((this.attr.pollingOptions && this.attr.pollingOptions.pauseAfterBackoff)) && b)) && b.sourceEventData))) {\n return;\n }\n ;\n ;\n var c = b.sourceEventData;\n ((c.fromPolling && ((((this.isNewItem(b) || ((c.interval < this.attr.pollingOptions.blurredInterval)))) ? this.resetPolling() : ((((++this.backoffEmptyResponseCount >= this.attr.pollingOptions.backoffEmptyResponseLimit)) && this.pausePolling()))))));\n }, this.modifyNewItemsData = function(a) {\n var b = a();\n return ((((this.pollingPaused && this.attr.pollingOptions)) ? (this.resetPolling(), utils.merge(b, {\n count: this.attr.pollingOptions.resumeItemCount\n })) : b));\n }, this.possiblyRefreshBeforeInject = function(a, b, c) {\n return ((((((this.pollingPaused && b)) && ((b.type === \"click\")))) && this.trigger(\"uiTimelineShouldRefresh\", {\n injectImmediately: !0\n }))), a(b, c);\n }, this.around(\"getNewItemsData\", this.modifyNewItemsData), this.around(\"injectNewItems\", this.possiblyRefreshBeforeInject), this.after(\"initialize\", function() {\n if (!this.attr.pollingEnabled) {\n return;\n }\n ;\n ;\n this.JSBNG__on(JSBNG__document, \"uiTimelinePollForNewItems\", this.pollForNewItems), this.JSBNG__on(JSBNG__document, \"dataGotMoreTimelineItems\", this.onGotMoreTimelineItems), this.pollingTimer = setupPollingWithBackoff(\"uiTimelinePollForNewItems\", this.attr.pollingWatchNode, this.attr.pollingOptions), this.resetPolling();\n });\n };\n;\n var utils = require(\"core/utils\"), setupPollingWithBackoff = require(\"app/utils/setup_polling_with_backoff\");\n module.exports = withPolling;\n});\ndefine(\"app/ui/timelines/with_new_items\", [\"module\",\"require\",\"exports\",\"core/utils\",\"core/compose\",\"app/utils/chrome\",\"app/ui/timelines/with_autoplaying_timeline\",\"app/ui/timelines/with_polling\",], function(module, require, exports) {\n function withNewItems() {\n this.injectNewItems = function(a, b) {\n if (!this.latentItems.html) {\n return;\n }\n ;\n ;\n this.select(\"newItemsBarSelector\").remove();\n var c = this.injectItems(\"prepend\", this.latentItems.html, \"uiHasInjectedNewTimeline\", b);\n return this.resetLatentItems(), c;\n }, this.handleNewItemsBarClick = function(a, b) {\n this.injectNewItems(a, b), this.trigger(\"uiRefreshUserRecsOnNewTweets\");\n }, compose.mixin(this, [withAutoplayingTimeline,withPolling,]), this.defaultAttrs({\n newItemsBarSelector: \".js-new-tweets-bar\",\n streamItemSelector: \".stream-item\",\n refreshOnReturn: !0\n }), this.getNewItems = function(a, b) {\n this.trigger(\"uiWantsMoreTimelineItems\", utils.merge({\n include_new_items_bar: ((!b || !b.injectImmediately)),\n latent_count: this.latentItems.count,\n composed_count: Object.keys(this.composedThenInjectedTweetIds).length\n }, this.getNewItemsData(), b));\n }, this.notifyNewItems = function(a) {\n if (!a.items_html) {\n return;\n }\n ;\n ;\n var b = ((a.sourceEventData || {\n }));\n this.resetStateVariables(a);\n var c = ((this.attr.injectComposedTweets && this.removeComposedTweetsFromPayload(a)));\n if (!a.items_html) {\n return;\n }\n ;\n ;\n this.latentItems.html = ((a.items_html + ((this.latentItems.html || \"\"))));\n if (a.new_tweets_bar_html) {\n var d, e = a.new_tweets_bar_alternate_html;\n ((((((((this.attr.injectComposedTweets && ((c > 0)))) && e)) && e[((c - 1))])) ? d = $(e[((c - 1))]) : d = $(a.new_tweets_bar_html))), this.latentItems.count = d.children().first().data(\"item-count\"), ((this.autoplay ? this.autoplayNewItems(a.new_tweets_bar_html, this.latentItems.count) : ((b.injectImmediately || this.updateNewItemsBar(d))))), this.trigger(\"uiAddPageCount\", {\n count: this.latentItems.count\n });\n }\n ;\n ;\n ((((b.injectImmediately || b.timeline_empty)) && this.trigger(\"uiInjectNewItems\"))), ((b.scrollToTop && this.scrollToTop())), ((b.selectTopTweet && this.trigger(\"uiSelectTopTweet\")));\n }, this.removeComposedTweetsFromPayload = function(a) {\n var b = this.composedThenInjectedTweetIds, c = $(a.items_html).filter(this.attr.streamItemSelector);\n if (((c.length == 0))) {\n return 0;\n }\n ;\n ;\n var d = 0, e = c.filter(function(a, c) {\n var e = $(c).attr(\"data-item-id\");\n return ((((e in b)) ? (d++, delete b[e], !1) : !0));\n });\n return a.items_html = $(\"\\u003Cdiv/\\u003E\").append(e).html(), d;\n }, this.updateNewItemsBar = function(a) {\n var b = this.select(\"newItemsBarSelector\"), c = this.select(\"containerSelector\"), d = $(window).scrollTop(), e = chrome.getCanvasYOffset(c);\n ((b.length ? (b.parent().remove(), a.prependTo(c)) : (a.hide().prependTo(c), ((((d > e)) ? (a.show(), $(\"html, body\").scrollTop(((d + a.height())))) : a.slideDown()))))), this.trigger(\"uiNewItemsBarVisible\");\n }, this.resetLatentItems = function() {\n this.latentItems = {\n count: 0,\n html: \"\"\n };\n }, this.refreshOnNavigate = function(a, b) {\n ((((b.fromCache && this.attr.refreshOnReturn)) && this.trigger(\"uiTimelineShouldRefresh\", {\n navigated: !0\n })));\n }, this.refreshAndSelectTopTweet = function(a, b) {\n this.trigger(\"uiTimelineShouldRefresh\", {\n injectImmediately: !0,\n selectTopTweet: !0\n });\n }, this.injectComposedTweet = function(a, b) {\n if (b.in_reply_to_status_id) {\n return;\n }\n ;\n ;\n this.injectNewItems();\n var c = $(b.tweet_html).filter(this.attr.streamItemSelector).first().attr(\"data-item-id\");\n if (this.$node.JSBNG__find(((((\".original-tweet[data-tweet-id='\" + c)) + \"']:first\"))).length) {\n return;\n }\n ;\n ;\n this.latentItems.html = b.tweet_html, this.injectNewItems(), this.composedThenInjectedTweetIds[b.tweet_id] = !0;\n }, this.refreshAndInjectImmediately = function(a, b) {\n this.trigger(\"uiTimelineShouldRefresh\", {\n injectImmediately: !0,\n selectTopTweet: ((this.$selected.length == 1))\n });\n }, this.resetCacheOfComposedInjectedTweets = function(a, b) {\n this.composedThenInjectedTweetIds = composedThenInjectedTweetIds = {\n };\n }, this.after(\"initialize\", function(a) {\n this.composedThenInjectedTweetIds = composedThenInjectedTweetIds, this.resetLatentItems(), this.JSBNG__on(\"uiInjectNewItems\", this.injectNewItems), this.JSBNG__on(JSBNG__document, \"uiTimelineShouldRefresh\", this.getNewItems), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.injectNewItems), this.JSBNG__on(JSBNG__document, \"uiPageChanged\", this.refreshOnNavigate), this.JSBNG__on(JSBNG__document, \"uiGotoTopOfScreen\", this.refreshAndInjectImmediately), this.JSBNG__on(JSBNG__document, \"uiShortcutGotoTopOfScreen\", this.refreshAndSelectTopTweet), this.JSBNG__on(JSBNG__document, \"dataPageMutated\", this.resetCacheOfComposedInjectedTweets), ((this.attr.injectComposedTweets && this.JSBNG__on(JSBNG__document, \"dataTweetSuccess\", this.injectComposedTweet))), this.JSBNG__on(\"click\", {\n newItemsBarSelector: this.handleNewItemsBarClick\n });\n });\n };\n;\n var utils = require(\"core/utils\"), compose = require(\"core/compose\"), chrome = require(\"app/utils/chrome\"), withAutoplayingTimeline = require(\"app/ui/timelines/with_autoplaying_timeline\"), withPolling = require(\"app/ui/timelines/with_polling\"), composedThenInjectedTweetIds = {\n };\n module.exports = withNewItems;\n});\ndefine(\"app/ui/timelines/with_tweet_pagination\", [\"module\",\"require\",\"exports\",\"app/utils/string\",], function(module, require, exports) {\n function withTweetPagination() {\n this.isOldItem = function(a) {\n return ((a.max_id && ((!this.max_id || ((string.compare(this.max_id, a.max_id) >= 0))))));\n }, this.isNewItem = function(a) {\n return ((a.since_id && ((!this.since_id || ((string.compare(this.since_id, a.since_id) < 0))))));\n }, this.wasRangeRequest = function(a) {\n return ((a.max_id && a.since_id));\n }, this.wasNewItemsRequest = function(a) {\n return a.since_id;\n }, this.wasOldItemsRequest = function(a) {\n return a.max_id;\n }, this.shouldGetOldItems = function() {\n var a = ((((typeof this.max_id != \"undefined\")) && ((this.max_id !== null))));\n return ((!a || ((this.max_id != \"-1\"))));\n }, this.getOldItemsData = function() {\n return {\n max_id: this.max_id,\n query: this.query\n };\n }, this.getRangeItemsData = function(a, b) {\n return {\n since_id: a,\n max_id: b,\n query: this.query\n };\n }, this.getNewItemsData = function() {\n var a = {\n since_id: this.since_id,\n query: this.query\n };\n return ((((this.select(\"itemsSelector\").children().length == 0)) && (a.timeline_empty = !0))), a;\n }, this.resetStateVariables = function(a) {\n [\"max_id\",\"since_id\",\"query\",].forEach(function(b, c) {\n ((((typeof a[b] != \"undefined\")) && (this[b] = a[b], ((((((b == \"max_id\")) || ((b == \"since_id\")))) && this.select(\"containerSelector\").attr(((\"data-\" + b.replace(\"_\", \"-\"))), this[b]))))));\n }, this);\n }, this.after(\"initialize\", function(a) {\n this.since_id = ((this.select(\"containerSelector\").attr(\"data-since-id\") || undefined)), this.max_id = ((this.select(\"containerSelector\").attr(\"data-max-id\") || undefined)), this.query = ((a.query || \"\"));\n });\n };\n;\n var string = require(\"app/utils/string\");\n module.exports = withTweetPagination;\n});\ndefine(\"app/ui/timelines/with_preserved_scroll_position\", [\"module\",\"require\",\"exports\",\"core/utils\",\"core/i18n\",\"app/utils/string\",\"app/data/user_info\",\"core/compose\",], function(module, require, exports) {\n function withPreservedScrollPosition() {\n this.defaultAttrs({\n firstTweetSelector: \".stream-items .js-stream-item:first-child\",\n listSelector: \".stream-items:not(.conversation-module)\",\n tearClass: \"tear\",\n tearSelector: \".tear\",\n tearProcessingClass: \"tear-processing\",\n tearProcessingSelector: \".tear-processing\",\n currentScrollPosClass: \"current-scroll-pos\",\n currentScrollPosSelector: \".current-scroll-pos\",\n topOfViewportTweetSelector: \".top-of-viewport-tweet\",\n countAboveTear: 10,\n countBelowTearAboveCurrent: 3,\n countBelowCurrent: 10,\n preservedScrollEnabled: !1\n }), this.findTweetAtTop = function() {\n var a = $(), b = $(window).scrollTop();\n return this.select(\"genericItemSelector\").each(function(c, d) {\n var e = $(d);\n if (((e.offset().JSBNG__top > b))) {\n return a = e, !1;\n }\n ;\n ;\n }), a;\n }, this.findNearestRealTweet = function(a, b) {\n while (((a.length && ((a.JSBNG__find(\"[data-promoted=true]\").length || a.hasClass(this.attr.tearClass)))))) {\n a = a[b]();\n ;\n };\n ;\n return a;\n }, this.findSiblingTweets = function(a, b, c) {\n var d = $(), e = a, f = 0;\n while ((((e = e[b]()).length && ((f < c))))) {\n if (((!e.is(\"[data-item-type=tweet]\") && ((b == \"prev\"))))) {\n break;\n }\n ;\n ;\n d = d.add(e), f++;\n };\n ;\n return d;\n }, this.getTweetId = function(a) {\n var b = a.JSBNG__find(\".tweet\").attr(\"data-retweet-id\");\n return ((b ? b : a.attr(\"data-item-id\")));\n }, this.recordTweetAtTop = function() {\n var a = this.findTweetAtTop();\n if (a.length) {\n var b = this.getTweetId(this.findNearestRealTweet(a, \"next\")), c = ((a.offset().JSBNG__top - $(window).scrollTop()));\n a.addClass(this.attr.currentScrollPosClass), a.attr(\"data-offset\", c), this.trigger(\"uiTimelineScrollSet\", {\n topItem: b,\n offset: c\n });\n }\n ;\n ;\n }, this.trimTimeline = function() {\n var a = this.select(\"currentScrollPosSelector\"), b = this.select(\"firstTweetSelector\"), c, d;\n ((a.length || (a = b)));\n if (!a.length) {\n return;\n }\n ;\n ;\n d = $(), d = d.add(a), d = d.add(this.findSiblingTweets(a, \"next\", this.attr.countBelowCurrent)), d = d.add(this.findSiblingTweets(a, \"prev\", this.attr.countBelowTearAboveCurrent)), c = d.first();\n if (((c.index() >= this.attr.countAboveTear))) {\n var e = $(TEAR_HTML);\n c.before(e), d = d.add(e);\n }\n ;\n ;\n ((((this.attr.countAboveTear > 0)) && (d = d.add(b), d = d.add(this.findSiblingTweets(b, \"next\", ((this.attr.countAboveTear - 1)))))));\n var f = this.findNearestRealTweet(d.last(), \"prev\");\n this.select(\"containerSelector\").attr(\"data-max-id\", string.subtractOne(this.getTweetId(f))), this.select(\"listSelector\").html(d);\n }, this.restorePosition = function(a, b) {\n var c = {\n }, d = 0;\n ((((b && b.fromCache)) ? (c = this.select(\"currentScrollPosSelector\"), d = ((-1 * c.attr(\"data-offset\")))) : ((((b && b.scrollPosition)) && (c = this.select(\"topOfViewportTweetSelector\"), d = ((-1 * b.scrollPosition.offset)))))));\n var e, f, g;\n ((c.length && (f = $(window).scrollLeft(), g = ((c.offset().JSBNG__top + d)), window.JSBNG__scrollTo(f, g), c.removeClass(this.attr.currentScrollPosClass), $(JSBNG__document).one(\"JSBNG__scroll\", function() {\n window.JSBNG__scrollTo(f, g);\n }))));\n }, this.expandTear = function(a, b, c) {\n var d = $(a.target);\n ((d.hasClass(this.attr.tearClass) || (d = d.closest(this.attr.tearSelector)))), d.addClass(this.attr.tearProcessingClass);\n var e = this.findNearestRealTweet(d.prev(), \"prev\"), f = this.findNearestRealTweet(d.next(), \"next\"), g = this.getTweetId(f), h = this.getTweetId(e);\n d.attr(\"data-prev-id\", h), d.attr(\"data-next-id\", g), this.trigger(\"uiWantsMoreTimelineItems\", this.getRangeItemsData(string.subtractOne(g), h));\n }, this.injectRangeItems = function(a) {\n var b = this.select(\"tearSelector\"), c = $(a.items_html);\n b.each(function(b, d) {\n var e = $(d), f = e.attr(\"data-prev-id\"), g = e.attr(\"data-next-id\"), h = !0;\n ((((a.since_id == f)) && (((((f == this.getTweetId(c.first()))) && (c = c.not(c.first())))), ((((g == this.getTweetId(c.last()))) && (c = c.not(c.last()), h = !1))), c.hide(), e.before(c), e.removeClass(this.attr.tearProcessingClass), ((h || e.remove())), c.filter(\".js-stream-item\").slideDown(\"fast\"), this.reportInjectedItems(c, \"uiHasInjectedRangeTimelineItems\"))));\n }.bind(this));\n }, this.notifyRangeItemsError = function(a) {\n this.select(\"tearProcessingSelector\").removeClass(this.attr.tearProcessingClass);\n }, this.after(\"initialize\", function() {\n var a = userInfo.getExperimentGroup(\"home_timeline_snapback_951\"), b = userInfo.getExperimentGroup(\"web_conversations\"), c = ((((a && ((a.bucket == \"preserve\")))) || ((((b && ((b.experiment_key == \"conversations_on_home_timeline_785\")))) && ((b.bucket != \"control\")))))), d = userInfo.getDecider(\"preserve_scroll_position\");\n ((((this.attr.preservedScrollEnabled && ((c || d)))) && (this.preserveScrollPosition = !0, this.JSBNG__on(JSBNG__document, \"uiPageChanged\", this.restorePosition), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.recordTweetAtTop), this.before(\"teardown\", this.trimTimeline), this.JSBNG__on(\"click\", {\n tearSelector: this.expandTear\n }))));\n });\n };\n;\n var utils = require(\"core/utils\"), _ = require(\"core/i18n\"), string = require(\"app/utils/string\"), userInfo = require(\"app/data/user_info\"), compose = require(\"core/compose\"), TEAR_HTML = ((((\"\\u003Cli class=\\\"tear stream-item\\\"\\u003E\\u003Cbutton class=\\\"tear-inner btn-link\\\" type=\\\"button\\\"\\u003E\\u003Cspan class=\\\"tear-text\\\"\\u003E\" + _(\"Load more tweets\"))) + \"\\u003C/span\\u003E\\u003C/button\\u003E\\u003C/li\\u003E\"));\n module.exports = withPreservedScrollPosition;\n});\ndefine(\"app/ui/timelines/with_activity_supplements\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withActivitySupplements() {\n this.defaultAttrs({\n networkActivityPageViewAllToggle: \".stream-item-activity-network\",\n viewAllSupplementsButton: \"button.view-all-supplements\",\n interactionsPageViewAllToggle: \".stream-item-activity-me button.view-all-supplements\",\n additionalStreamItemsSelector: \".sub-stream-item-showing,.sub-stream-item-hidden\",\n additionalNetworkActivityItems: \".hidden-supplement, .hidden-supplement-expanded\",\n hiddenSupplement: \"hidden-supplement\",\n visibleSupplement: \"hidden-supplement-expanded\",\n hiddenSubItem: \"sub-stream-item-hidden\",\n visibleSubItem: \"sub-stream-item-showing\",\n visibleSupplementSelector: \".visible-supplement\"\n }), this.toggleSupplementTrigger = function(a) {\n var b = a.hasClass(\"show\");\n return a.toggleClass(\"hide\", b).toggleClass(\"show\", !b), b;\n }, this.toggleInteractionsSupplements = function(a, b) {\n var c = $(b.el), d = this.toggleSupplementTrigger(c);\n this.toggleSubStreamItemsVisibility(c.parent(), d);\n }, this.toggleNetworkActivitySupplements = function(a, b) {\n if ((($(a.target).closest(\".supplement\").length > 0))) {\n return;\n }\n ;\n ;\n var c = $(b.el), d = this.toggleSupplementTrigger(c.JSBNG__find(this.attr.viewAllSupplementsButton));\n ((d || this.trigger(c.JSBNG__find(\".activity-supplement \\u003E .stream-item.open\"), \"uiShouldToggleExpandedState\"))), this.toggleSubStreamItemsVisibility(c, d), c.JSBNG__find(this.attr.additionalNetworkActivityItems).toggleClass(\"hidden-supplement\", !d).toggleClass(\"hidden-supplement-expanded\", d);\n var e = c.closest(\".js-stream-item\"), f;\n ((d ? (e.addClass(\"js-has-navigable-stream\"), f = e.JSBNG__find(\".activity-supplement .stream-item:first-child\"), e.JSBNG__find(\".activity-supplement \\u003E .js-unselectable-stream-item\").removeClass(\"js-unselectable-stream-item\"), this.trigger(f, \"uiSelectItem\", {\n setFocus: !0\n })) : (e.removeClass(\"js-has-navigable-stream\"), e.JSBNG__find(\".activity-supplement \\u003E .hidden-supplement\").addClass(\"js-unselectable-stream-item\"), this.trigger(e, \"uiSelectItem\", {\n setFocus: !0\n }))));\n }, this.toggleSubStreamItemsVisibility = function(a, b) {\n a.JSBNG__find(this.attr.additionalStreamItemsSelector).toggleClass(\"sub-stream-item-hidden\", !b).toggleClass(\"sub-stream-item-showing\", b);\n }, this.selectAndFocusTopLevelStreamItem = function(a, b) {\n var c = $(b.el), d = c.hasClass(\"js-has-navigable-stream\"), e = this.select(\"viewAllSupplementsButton\").hasClass(\"show\"), f = c.closest(\".js-stream-item\");\n ((((e && !d)) && (a.stopPropagation(), f.removeClass(\"js-has-navigable-stream\"), this.trigger(f, \"uiSelectItem\", {\n setFocus: !0\n }))));\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(\"click\", {\n interactionsPageViewAllToggle: this.toggleInteractionsSupplements,\n networkActivityPageViewAllToggle: this.toggleNetworkActivitySupplements\n }), this.JSBNG__on(\"uiSelectItem\", {\n visibleSupplementSelector: this.selectAndFocusTopLevelStreamItem\n });\n });\n };\n;\n module.exports = withActivitySupplements;\n});\ndefine(\"app/ui/with_conversation_actions\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = function() {\n this.defaultAttrs({\n conversationModuleSelector: \".conversation-module\",\n hasConversationModuleSelector: \".tweet.has-conversation-module\",\n viewMoreSelector: \"a.view-more\",\n missingTweetsLinkSelector: \"a.missing-tweets-link\",\n conversationRootSelector: \"li.conversation-root\",\n repliesCountSelector: \".replies-count\",\n otherRepliesSelector: \".other-replies\",\n topLevelStreamItemSelector: \".stream-item:not(.conversation-tweet-item)\",\n afterExpandedClass: \"after-expanded\",\n beforeExpandedClass: \"before-expanded\",\n repliesCountClass: \"replies-count\",\n visuallyHiddenClass: \"visuallyhidden\",\n conversationRootClass: \"conversation-root\",\n originalTweetClass: \"original-tweet\",\n hadConversationClass: \"had-conversation\",\n conversationHtmlKey: \"conversationHtml\",\n restoreConversationDelay: 100,\n animationTime: 200\n }), this.dedupAndCollapse = function(a, b) {\n this.dedupConversations(), this.collapseConversations(((b && b.tweets)));\n }, this.dedupConversations = function() {\n var a = this.select(\"conversationModuleSelector\");\n a.each(function(a, b) {\n if (!b.parentNode) {\n return;\n }\n ;\n ;\n var c = $(b).attr(\"data-ancestors\").split(\",\"), d = $(this.idsToSelector(c));\n d.addClass(\"to-be-removed\"), d.prev().removeClass(this.attr.beforeExpandedClass).end().next().removeClass(this.attr.afterExpandedClass);\n var e = this;\n d.slideUp(function() {\n var a = $(this);\n ((a.hasClass(e.attr.selectedClass) && e.trigger(\"uiSelectNext\", {\n maintainPosition: !0\n }))), JSBNG__setTimeout(function() {\n a.remove();\n }, 0);\n });\n }.bind(this));\n }, this.idToSelector = function(a) {\n return ((\"#stream-item-tweet-\" + a));\n }, this.idsToSelector = function(a) {\n return a.map(this.idToSelector).join(\",\");\n }, this.collapseConversations = function(a) {\n var b;\n if (a) {\n var c = a.map(function(a) {\n return a.tweetId;\n }), d = this.$node.JSBNG__find(this.idsToSelector(c));\n b = d.JSBNG__find(this.attr.conversationModuleSelector);\n }\n else b = this.select(\"conversationModuleSelector\");\n ;\n ;\n var e = {\n }, f = {\n };\n b.get().reverse().forEach(function(a) {\n var b = $(a), c = b.attr(\"data-ancestors\"), d = b.JSBNG__find(\".conversation-root .tweet\").attr(\"data-item-id\");\n ((((!b.hasClass(\"dont-collapse\") && !b.hasClass(\"to-be-removed\"))) && ((e[c] ? this.collapseAncestors(b) : ((f[d] && this.collapseRoot(b))))))), e[c] = !0, f[d] = !0;\n }.bind(this));\n }, this.expandConversationHandler = function(a, b) {\n a.preventDefault();\n var c = $(a.target).closest(this.attr.conversationModuleSelector);\n this.expandConversation(c), c.addClass(\"dont-collapse\");\n }, this.expandConversation = function(a) {\n ((((a.JSBNG__find(\".conversation-tweet-item.conversation-ancestor:visible\").length > 0)) ? this.expandRoot(a) : this.expandAncestors(a)));\n }, this.expandAncestors = function(a) {\n var b = a.JSBNG__find(\".conversation-header\"), c = a.JSBNG__find(\".conversation-tweet-item, .missing-tweets-bar\"), d = a.JSBNG__find(\".original-tweet-item\");\n this.slideAndFadeContent(b, c, d);\n }, this.expandRoot = function(a) {\n var b = a.JSBNG__find(\".conversation-header\"), c = a.JSBNG__find(\".conversation-tweet-item.conversation-root, .missing-tweets-bar\"), d = a.JSBNG__find(\".conversation-tweet-item.conversation-ancestor:not(.conversation-root):first\");\n ((((d.length === 0)) && (d = a.JSBNG__find(\".original-tweet-item\")))), this.slideAndFadeContent(b, c, d);\n }, this.collapseAncestors = function(a) {\n var b = a.JSBNG__find(\".conversation-tweet-item, .missing-tweets-bar\"), c = a.JSBNG__find(\".conversation-header\"), d = a.JSBNG__find(\".original-tweet-item\");\n this.slideAndFadeContent(b, c, d);\n }, this.collapseRoot = function(a) {\n var b = a.JSBNG__find(\".conversation-tweet-item.conversation-root, .missing-tweets-bar\"), c = a.JSBNG__find(\".conversation-header\"), d = a.JSBNG__find(\".conversation-tweet-item.conversation-ancestor:not(.conversation-root):first\");\n ((((d.length === 0)) && (d = a.JSBNG__find(\".original-tweet-item\")))), this.slideAndFadeContent(b, c, d);\n }, this.slideAndFadeContent = function(a, b, c) {\n if (a.is(\":hidden\")) {\n return;\n }\n ;\n ;\n var d = c.offset().JSBNG__top, e = this.getCombinedHeight(a);\n a.hide();\n var f = c.offset().JSBNG__top;\n b.show();\n var g = this.getCombinedHeight(b), h = c.offset().JSBNG__top;\n this.setAbsolutePosition(b), b.hide(), a.show(), this.setAbsolutePosition(a);\n var i = ((d - f)), j = ((d - h));\n c.css(\"paddingTop\", e), a.fadeOut(this.attr.animationTime), b.fadeIn(this.attr.animationTime), c.animate({\n paddingTop: g\n }, this.attr.animationTime, function() {\n this.resetCss(a), this.resetCss(b), this.resetCss(c);\n }.bind(this));\n }, this.resetCss = function(a) {\n var b = {\n position: \"\",\n JSBNG__top: \"\",\n width: \"\",\n height: \"\",\n paddingTop: \"\"\n };\n a.css(b);\n }, this.setAbsolutePosition = function(a) {\n a.get().reverse().forEach(function(a) {\n var b = $(a), c = b.width(), d = b.height();\n b.css({\n position: \"absolute\",\n JSBNG__top: b.position().JSBNG__top\n }), b.width(c), b.height(d);\n });\n }, this.getCombinedHeight = function(a) {\n var b = 0;\n return a.each(function() {\n b += $(this).JSBNG__outerHeight();\n }), b;\n }, this.convertRootToStandardTweet = function(a) {\n a.data(this.attr.conversationHtmlKey, a.html());\n var b = a.JSBNG__find(this.attr.conversationRootSelector);\n a.empty().addClass(this.attr.hadConversationClass).html(b.html());\n var c = a.JSBNG__find(this.attr.tweetSelector);\n c.addClass(this.attr.originalTweetClass).removeClass(this.attr.conversationRootClass);\n }, this.restoreConversation = function(a, b) {\n var c = this.streamItemFromEvent(a), d = c.data(this.attr.conversationHtmlKey);\n ((d && (c.html(d), c.removeClass(this.attr.hadConversationClass), c.data(this.attr.conversationHtmlKey, null))));\n }, this.expandConversationRoot = function(a, b) {\n a.preventDefault();\n var c = this.streamItemFromEvent(a);\n this.convertRootToStandardTweet(c), c.trigger(\"uiShouldToggleExpandedState\");\n }, this.collapseRootAndRestoreConversation = function(a, b) {\n var c = this.streamItemFromEvent(a);\n c.trigger(\"uiShouldToggleExpandedState\"), JSBNG__setTimeout(function() {\n this.restoreConversation(a, b);\n }.bind(this), this.attr.restoreConversationDelay);\n }, this.streamItemFromEvent = function(a) {\n return $(a.target).closest(this.attr.topLevelStreamItemSelector);\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(JSBNG__document, \"uiHasInjectedNewTimeline uiHasInjectedOldTimelineItems\", this.dedupAndCollapse), this.JSBNG__on(\"click\", {\n viewMoreSelector: this.expandConversationHandler,\n missingTweetsLinkSelector: this.expandConversationRoot\n }), this.JSBNG__on(\"uiExpandConversationRoot\", this.expandConversationRoot), this.JSBNG__on(\"uiRestoreConversationModule\", this.collapseRootAndRestoreConversation), this.dedupAndCollapse();\n });\n };\n});\ndefine(\"app/ui/timelines/with_pinned_stream_items\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withPinnedStreamItems() {\n this.defaultAttrs({\n pinnedStreamItemSelector: \"li.js-pinned\"\n }), this.keepPinnedStreamItemsOnTop = function() {\n if (!this.$pinnedStreamItems.length) {\n return;\n }\n ;\n ;\n var a = this.$pinnedStreamItems.first(), b = this.$pinnedStreamItems.last(), c = this.$items.children().first(), d = a.prev(), e = b.next();\n a.css(\"margin-top\", \"0\"), ((a.hasClass(\"open\") && d.removeClass(\"before-expanded\"))), ((b.hasClass(\"open\") && (e.removeClass(\"after-expanded\"), c.addClass(\"after-expanded\")))), this.$items.prepend(this.$pinnedStreamItems.detach());\n }, this.after(\"initialize\", function(a) {\n this.$items = this.select(\"itemsSelector\"), this.$pinnedStreamItems = this.select(\"pinnedStreamItemSelector\"), this.JSBNG__on(\"uiHasInjectedNewTimeline\", this.keepPinnedStreamItemsOnTop);\n });\n };\n;\n module.exports = withPinnedStreamItems;\n});\ndefine(\"app/ui/timelines/tweet_timeline\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/timelines/with_base_timeline\",\"app/ui/timelines/with_old_items\",\"app/ui/timelines/with_new_items\",\"app/ui/timelines/with_tweet_pagination\",\"app/ui/timelines/with_preserved_scroll_position\",\"app/ui/timelines/with_activity_supplements\",\"app/ui/with_timestamp_updating\",\"app/ui/with_tweet_actions\",\"app/ui/with_tweet_translation\",\"app/ui/with_conversation_actions\",\"app/ui/with_item_actions\",\"app/ui/timelines/with_traveling_ptw\",\"app/ui/timelines/with_pinned_stream_items\",\"app/ui/gallery/with_gallery\",], function(module, require, exports) {\n function tweetTimeline() {\n this.defaultAttrs({\n itemType: \"tweet\"\n }), this.reportInitialTweetsDisplayed = function() {\n var b = this.select(\"genericItemSelector\"), c = [], d = function(b, d) {\n var e = this.interactionData(this.findFirstItemContent($(d)));\n ((this.attr.reinjectedPromotedTweets && (e.impressionId = undefined))), c.push(e);\n }.bind(this);\n for (var e = 0, f = b.length; ((e < f)); e++) {\n d(e, b[e]);\n ;\n };\n ;\n var g = {\n scribeContext: {\n component: \"stream\"\n },\n tweets: c\n };\n this.trigger(\"uiTweetsDisplayed\", g);\n }, this.reportTweetsDisplayed = function(a, b) {\n b.tweets = b.items, this.trigger(\"uiTweetsDisplayed\", b);\n }, this.removeTweetsFromUser = function(a, b) {\n var c = this.$node.JSBNG__find(((((\"[data-user-id=\" + b.userId)) + \"]\")));\n c.parent().remove(), this.trigger(\"uiRemovedSomeTweets\");\n }, this.after(\"initialize\", function(a) {\n this.attr.reinjectedPromotedTweets = a.reinjectedPromotedTweets, this.reportInitialTweetsDisplayed(), this.JSBNG__on(\"uiHasInjectedNewTimeline uiHasInjectedOldTimelineItems uiHasInjectedRangeTimelineItems\", this.reportTweetsDisplayed), this.JSBNG__on(\"uiRemoveTweetsFromUser\", this.removeTweetsFromUser);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withBaseTimeline = require(\"app/ui/timelines/with_base_timeline\"), withOldItems = require(\"app/ui/timelines/with_old_items\"), withNewItems = require(\"app/ui/timelines/with_new_items\"), withTweetPagination = require(\"app/ui/timelines/with_tweet_pagination\"), withPreservedScrollPosition = require(\"app/ui/timelines/with_preserved_scroll_position\"), withActivitySupplements = require(\"app/ui/timelines/with_activity_supplements\"), withTimestampUpdating = require(\"app/ui/with_timestamp_updating\"), withTweetActions = require(\"app/ui/with_tweet_actions\"), withTweetTranslation = require(\"app/ui/with_tweet_translation\"), withConversationActions = require(\"app/ui/with_conversation_actions\"), withItemActions = require(\"app/ui/with_item_actions\"), withTravelingPtw = require(\"app/ui/timelines/with_traveling_ptw\"), withPinnedStreamItems = require(\"app/ui/timelines/with_pinned_stream_items\"), withGallery = require(\"app/ui/gallery/with_gallery\");\n module.exports = defineComponent(tweetTimeline, withBaseTimeline, withTweetPagination, withPreservedScrollPosition, withOldItems, withNewItems, withTimestampUpdating, withTweetActions, withTweetTranslation, withConversationActions, withItemActions, withTravelingPtw, withPinnedStreamItems, withActivitySupplements, withGallery);\n});\ndefine(\"app/boot/tweet_timeline\", [\"module\",\"require\",\"exports\",\"app/boot/timeline\",\"app/boot/tweets\",\"app/boot/help_pips\",\"app/ui/expando/close_all_button\",\"app/ui/timelines/tweet_timeline\",\"core/utils\",], function(module, require, exports) {\n function initialize(a, b, c, d) {\n var e = utils.merge(a, {\n endpoint: b,\n itemType: c,\n eventData: {\n scribeContext: {\n component: ((d || c))\n }\n }\n });\n timelineBoot(e), tweetsBoot(\"#timeline\", e), ((e.help_pips_decider && helpPipsBoot(e))), CloseAllButton.attachTo(\"#close-all-button\", {\n addEvent: \"uiHasExpandedTweet\",\n subtractEvent: \"uiHasCollapsedTweet\",\n where: \"#timeline\",\n closeAllEvent: \"uiWantsToCloseAllTweets\"\n }), TweetTimeline.attachTo(\"#timeline\", utils.merge(e, {\n tweetItemSelector: \"div.original-tweet, .conversation-tweet-item div.tweet\"\n }));\n };\n;\n var timelineBoot = require(\"app/boot/timeline\"), tweetsBoot = require(\"app/boot/tweets\"), helpPipsBoot = require(\"app/boot/help_pips\"), CloseAllButton = require(\"app/ui/expando/close_all_button\"), TweetTimeline = require(\"app/ui/timelines/tweet_timeline\"), utils = require(\"core/utils\");\n module.exports = initialize;\n});\ndefine(\"app/ui/user_completion_module\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function userCompletionModule() {\n this.defaultAttrs({\n completeProfileSelector: \"#complete-profile-step\",\n confirmEmailSelector: \"#confirm-email-step[href=#]:not(.completed)\",\n confirmEmailInboxLinkSelector: \"#confirm-email-step[href!=#]:not(.completed)\",\n followAccountsSelector: \"#follow-accounts-step\"\n }), this.openConfirmEmailDialog = function() {\n this.trigger(\"uiOpenConfirmEmailDialog\");\n }, this.resendConfirmationEmail = function() {\n this.trigger(\"uiResendConfirmationEmail\");\n }, this.setCompleteProfileStepCompleted = function(a, b) {\n ((((b.sourceEventData.uploadType == \"avatar\")) && this.setStepCompleted(\"completeProfileSelector\")));\n }, this.setFollowAccountsStepCompleted = function() {\n this.setStepCompleted(\"followAccountsSelector\");\n }, this.setStepCompleted = function(a) {\n this.select(a).removeClass(\"selected\").addClass(\"completed\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataImageEnqueued\", this.setCompleteProfileStepCompleted), this.JSBNG__on(JSBNG__document, \"uiDidReachTargetFollowingCount\", this.setFollowAccountsStepCompleted), this.JSBNG__on(\"click\", {\n confirmEmailSelector: this.openConfirmEmailDialog,\n confirmEmailInboxLinkSelector: this.resendConfirmationEmail\n });\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(userCompletionModule);\n});\ndefine(\"app/data/user_completion_module_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function userCompletionModuleScribe() {\n this.defaultAttrs({\n userCompletionStepSelector: \".user-completion-step:not(.completed)\"\n }), this.scribeStepClick = function(a, b) {\n var c = $(a.target).data(\"scribe-element\");\n this.scribe({\n component: \"user_completion\",\n element: c,\n action: \"click\"\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n userCompletionStepSelector: this.scribeStepClick\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(userCompletionModuleScribe, withScribe);\n});\ndefine(\"app/boot/user_completion_module\", [\"module\",\"require\",\"exports\",\"app/ui/user_completion_module\",\"app/data/user_completion_module_scribe\",\"core/utils\",], function(module, require, exports) {\n function initialize(a) {\n var b = \"#user-completion-module\", c = utils.merge(a, {\n eventData: {\n scribeContext: {\n component: \"user_completion\"\n }\n }\n });\n UserCompletionModule.attachTo(b, c), UserCompletionModuleScribe.attachTo(b, c);\n };\n;\n var UserCompletionModule = require(\"app/ui/user_completion_module\"), UserCompletionModuleScribe = require(\"app/data/user_completion_module_scribe\"), utils = require(\"core/utils\");\n module.exports = initialize;\n});\ndefine(\"app/ui/who_to_follow/with_user_recommendations\", [\"module\",\"require\",\"exports\",\"core/utils\",\"$lib/bootstrap_tooltip.js\",], function(module, require, exports) {\n function withUserRecommendations() {\n this.defaultAttrs({\n refreshAnimationDuration: 200,\n cycleTimeout: 1000,\n experimentCycleTimeout: 300,\n wtfOptions: {\n },\n selfPromotedAccountHtml: \"\",\n $accountPriorToPreview: null,\n wtfRefreshOnNewTweets: !1,\n recListSelector: \".js-recommended-followers\",\n recSelector: \".js-actionable-user\",\n refreshRecsSelector: \".js-refresh-suggestions\",\n similarToContainerSelector: \".js-expanded-similar-to\",\n expandedContainerSelector: \".js-expanded-container\",\n itemType: \"user\"\n }), this.refreshRecommendations = function(a, b) {\n if (!this.currentlyRefreshing) {\n this.currentlyRefreshing = !0;\n var c = ((this.getVisibleIds(null, !0).length || this.attr.wtfOptions.limit));\n this.trigger(\"uiRefreshUserRecommendations\", utils.merge(this.attr.wtfOptions, {\n excluded: this.getVisibleIds(),\n limit: c,\n refreshType: a.type\n })), this.hideRecommendations();\n }\n ;\n ;\n }, this.getUserRecommendations = function(a, b) {\n this.trigger(\"uiGetUserRecommendations\", utils.merge(this.attr.wtfOptions, ((a || {\n })))), this.hideRecommendations();\n }, this.hideRecommendations = function() {\n this.animateContentOut(this.select(\"recListSelector\"), \"animationCallback\");\n }, this.handleRecommendationsResponse = function(a, b) {\n if (this.disabled) {\n return;\n }\n ;\n ;\n b = ((b || {\n }));\n var c = b.user_recommendations_html;\n if (c) {\n var d = this.currentlyRefreshingUser(b);\n this.$node.addClass(\"has-content\");\n if (this.shouldExpandWtf(b)) {\n var e = $(c), f = e.filter(this.attr.recSelector).first(), g = e.filter(this.attr.expandedContainerSelector);\n ((d && this.animateContentIn(d, \"animationCallback\", $(\"\\u003Cdiv\\u003E\").append(f).html(), {\n modOp: \"replaceWith\",\n scribeCallback: function() {\n ((this.currentlyExpanding ? this.pendingScribe = !0 : this.reportUsersDisplayed(b)));\n }.bind(this)\n }))), ((g.size() && this.animateExpansion(g, b)));\n }\n else {\n var h = this.select(\"recListSelector\"), i;\n ((d && (h = d, i = \"replaceWith\"))), this.animateContentIn(h, \"animationCallback\", c, {\n modOp: i,\n scribeCallback: function() {\n this.reportUsersDisplayed(b);\n }.bind(this)\n });\n }\n ;\n ;\n }\n else this.handleEmptyRefreshResponse(a, b), this.trigger(\"uiGotEmptyRecommendationsResponse\", b);\n ;\n ;\n }, this.handleRefreshError = function(a, b) {\n this.handleEmptyRefreshResponse(a, b);\n }, this.handleEmptyRefreshResponse = function(a, b) {\n if (!this.select(\"recSelector\").length) {\n return;\n }\n ;\n ;\n var c = this.select(\"recListSelector\"), d = this.currentlyRefreshingUser(b);\n ((d && (c = d))), this.animateContentIn(c, \"animationCallback\", c.html());\n }, this.getVisibleIds = function(a, b) {\n var c = this.select(\"recSelector\").not(a);\n return ((b || (c = c.not(\".promoted-account\")))), c.map(function() {\n return $(this).attr(\"data-user-id\");\n }).toArray();\n }, this.originalItemCount = function() {\n return $(this.attr.recListSelector).children(this.attr.recSelector).length;\n }, this.doAfterFollowAction = function(a, b) {\n if (((this.disabled || ((b.newState != \"following\"))))) {\n return;\n }\n ;\n ;\n var c = ((this.expandBucket ? this.attr.experimentCycleTimeout : this.attr.cycleTimeout));\n JSBNG__setTimeout(function() {\n if (this.currentlyRefreshing) {\n return;\n }\n ;\n ;\n var a = this.select(\"recSelector\").filter(((((\"[data-user-id='\" + b.userId)) + \"']\")));\n if (!a.length) {\n return;\n }\n ;\n ;\n this.cycleRecommendation(a, b);\n }.bind(this), c);\n }, this.isInSimilarToSection = function(a) {\n return !!a.closest(this.attr.similarToContainerSelector).length;\n }, this.cycleRecommendation = function(a, b) {\n this.animateContentOut(a, \"animationCallback\");\n var c = utils.merge(this.attr.wtfOptions, {\n limit: 1,\n visible: this.getVisibleIds(a),\n refreshUserId: b.userId\n });\n ((this.isInSimilarToSection(a) && (c.user_id = this.select(\"similarToContainerSelector\").data(\"similar-to-user-id\")))), this.trigger(\"uiGetUserRecommendations\", c);\n }, this.animateExpansion = function(a, b) {\n var c = this.select(\"recListSelector\"), d = this.select(\"expandedContainerSelector\"), e = function() {\n ((this.pendingScribe && (this.reportUsersDisplayed(b), this.pendingScribe = !1))), this.currentlyExpanding = !1;\n };\n ((d.length ? d.html(a.html()) : c.append(a))), ((a.is(\":visible\") ? e.bind(this)() : a.slideDown(\"slow\", e.bind(this))));\n }, this.animateContentIn = function(a, b, c, d) {\n if (!a.length) {\n return;\n }\n ;\n ;\n d = ((d || {\n }));\n var e = function() {\n ((a.is(this.attr.recListSelector) && (this.currentlyRefreshing = !1))), a[((d.modOp || \"html\"))](c).animate({\n opacity: 1\n }, this.attr.refreshAnimationDuration), ((d.scribeCallback && d.scribeCallback()));\n }.bind(this);\n ((a.is(\":animated\") ? this[b] = e : e()));\n }, this.animateContentOut = function(a, b) {\n a.animate({\n opacity: 0\n }, {\n duration: this.attr.refreshAnimationDuration,\n complete: function() {\n ((this[b] && this[b]())), this[b] = null;\n }.bind(this)\n });\n }, this.getItemPosition = function(a) {\n var b = this.originalItemCount();\n return ((this.isInSimilarToSection(a) ? ((((b + a.closest(this.attr.recSelector).index())) - 1)) : ((a.closest(this.attr.expandedContainerSelector).length ? ((b + a.closest(this.attr.recSelector).index())) : a.closest(this.attr.recSelector).index()))));\n }, this.currentlyRefreshingUser = function(a) {\n return ((((((!a || !a.sourceEventData)) || !a.sourceEventData.refreshUserId)) ? null : this.select(\"recSelector\").filter(((((\"[data-user-id=\" + a.sourceEventData.refreshUserId)) + \"]\")))));\n }, this.shouldExpandWtf = function(a) {\n return !!((((a && a.sourceEventData)) && a.sourceEventData.get_replacement));\n }, this.getUsersDisplayed = function() {\n var a = this.select(\"recSelector\"), b = [];\n return a.each(function(a, c) {\n var d = $(c);\n b.push({\n id: d.attr(\"data-user-id\"),\n impressionId: d.attr(\"data-impression-id\")\n });\n }), b;\n }, this.reportUsersDisplayed = function(a) {\n var b = this.getUsersDisplayed();\n this.trigger(\"uiUsersDisplayed\", {\n users: b\n }), this.trigger(\"uiDidGetRecommendations\", a);\n }, this.verifyInitialRecommendations = function() {\n ((this.hasRecommendations() ? this.reportUsersDisplayed({\n initialResults: !0\n }) : this.getUserRecommendations({\n initialResults: !0\n })));\n }, this.hasRecommendations = function() {\n return ((this.select(\"recSelector\").length > 0));\n }, this.storeSelfPromotedAccount = function(a, b) {\n ((b.html && (this.selfPromotedAccountHtml = b.html)));\n }, this.replaceUser = function(a, b) {\n a.tooltip(\"hide\"), ((a.parent().hasClass(\"preview-wrapper\") && a.unwrap())), a.replaceWith(b);\n }, this.replaceUserAnimation = function(a, b) {\n a.tooltip(\"hide\"), this.before(\"teardown\", function() {\n this.replaceUser(a, b);\n });\n var c = $(\"\\u003Cdiv/\\u003E\", {\n class: a.attr(\"class\"),\n style: a.attr(\"style\")\n }).addClass(\"preview-wrapper\");\n a.wrap(c);\n var d = a.css(\"minHeight\");\n a.css({\n minHeight: 0\n }).slideUp(70, function() {\n b.attr(\"style\", a.attr(\"style\")), a.replaceWith(b), b.delay(350).slideDown(70, function() {\n b.css({\n minHeight: d\n }), b.unwrap(), JSBNG__setTimeout(function() {\n b.tooltip(\"show\"), JSBNG__setTimeout(function() {\n b.tooltip(\"hide\");\n }, 8000);\n }, 500);\n });\n });\n }, this.handlePreviewPromotedAccount = function() {\n if (this.disabled) {\n return;\n }\n ;\n ;\n if (this.selfPromotedAccountHtml) {\n var a = $(this.selfPromotedAccountHtml), b = this.select(\"recSelector\").first();\n this.attr.$accountPriorToPreview = b.clone(), this.replaceUserAnimation(b, a), a.JSBNG__find(\"a\").JSBNG__on(\"click\", function(a) {\n a.preventDefault(), a.stopPropagation();\n });\n }\n ;\n ;\n }, this.maybeRestoreAccountPriorToPreview = function() {\n var a = this.attr.$accountPriorToPreview;\n if (!a) {\n return;\n }\n ;\n ;\n this.replaceUser(this.select(\"recSelector\").first(), a), this.attr.$accountPriorToPreview = null;\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataDidGetUserRecommendations\", this.handleRecommendationsResponse), this.JSBNG__on(JSBNG__document, \"dataFailedToGetUserRecommendations\", this.handleRefreshError), this.JSBNG__on(JSBNG__document, \"dataFollowStateChange\", this.doAfterFollowAction), this.JSBNG__on(\"click\", {\n refreshRecsSelector: this.refreshRecommendations\n }), this.JSBNG__on(JSBNG__document, \"dataDidGetSelfPromotedAccount\", this.storeSelfPromotedAccount), this.JSBNG__on(JSBNG__document, \"uiPromptbirdPreviewPromotedAccount\", this.handlePreviewPromotedAccount), this.JSBNG__on(JSBNG__document, \"uiPromptbirdDismissPrompt\", this.maybeRestoreAccountPriorToPreview), ((this.attr.wtfRefreshOnNewTweets && this.JSBNG__on(JSBNG__document, \"uiRefreshUserRecsOnNewTweets uiPageChanged\", this.refreshRecommendations)));\n });\n };\n;\n var utils = require(\"core/utils\");\n require(\"$lib/bootstrap_tooltip.js\"), module.exports = withUserRecommendations;\n});\ndefine(\"app/ui/who_to_follow/who_to_follow_dashboard\", [\"module\",\"require\",\"exports\",\"core/i18n\",\"core/utils\",\"core/component\",\"app/ui/with_user_actions\",\"app/ui/with_item_actions\",\"app/ui/who_to_follow/with_user_recommendations\",], function(module, require, exports) {\n function whoToFollowDashboard() {\n this.defaultAttrs({\n dashboardSelector: \".dashboard-user-recommendations\",\n recUserSelector: \".dashboard-user-recommendations .js-actionable-user\",\n dismissRecSelector: \".dashboard-user-recommendations .js-actionable-user .js-action-dismiss\",\n viewAllSelector: \".js-view-all-link\",\n interestsSelector: \".js-interests-link\",\n findFriendsSelector: \".js-find-friends-link\"\n }), this.dismissRecommendation = function(a, b) {\n if (!this.currentlyRefreshing) {\n this.currentlyDismissing = !0;\n var c = $(a.target).closest(this.attr.recSelector), d = c.attr(\"data-user-id\");\n this.trigger(\"uiDismissUserRecommendation\", {\n recommended_user_id: d,\n impressionId: c.attr(\"data-impression-id\"),\n excluded: [d,],\n visible: this.getVisibleIds(c),\n token: c.attr(\"data-feedback-token\"),\n dismissable: this.attr.wtfOptions.dismissable,\n refreshUserId: d\n }), this.animateContentOut(c, \"animationCallback\");\n }\n ;\n ;\n }, this.handleDismissResponse = function(a, b) {\n b = ((b || {\n })), this.currentlyDismissing = !1;\n if (b.user_recommendations_html) {\n var c = this.currentlyRefreshingUser(b), d = $(b.user_recommendations_html), e = this.getItemPosition(c);\n this.animateContentIn(c, \"animationCallback\", b.user_recommendations_html, {\n modOp: \"replaceWith\",\n scribeCallback: function() {\n var a = {\n oldUser: this.interactionData(c, {\n position: e\n })\n };\n ((d.length && (a.newUser = this.interactionData(d, {\n position: e\n })))), this.trigger(\"uiDidDismissUserRecommendation\", a);\n }.bind(this)\n });\n }\n else this.handleEmptyDismissResponse();\n ;\n ;\n }, this.handleDismissError = function(a, b) {\n var c = this.currentlyRefreshingUser(b);\n ((c && c.remove())), this.handleEmptyDismissResponse();\n }, this.handleEmptyDismissResponse = function() {\n ((this.select(\"recSelector\").length || (this.trigger(\"uiShowMessage\", {\n message: _(\"You have no more recommendations today!\")\n }), this.$node.remove())));\n }, this.enable = function() {\n this.disabled = !1, this.refreshRecommendations({\n type: \"empty-timeline\"\n }), this.$node.show();\n }, this.initRecommendations = function() {\n ((this.disabled ? this.$node.hide() : this.verifyInitialRecommendations()));\n }, this.reset = function() {\n ((((this.currentlyRefreshing || this.currentlyDismissing)) ? this.select(\"dashboardSelector\").html(\"\") : (this.select(\"dashboardSelector\").css(\"opacity\", 1), this.select(\"recUserSelector\").css(\"opacity\", 1))));\n }, this.expandWhoToFollow = function(a, b) {\n this.currentlyExpanding = !0;\n var c = utils.merge(this.attr.wtfOptions, {\n limit: 3,\n visible: this.getVisibleIds(a),\n refreshUserId: b.userId,\n get_replacement: !0\n });\n this.trigger(\"uiGetUserRecommendations\", c);\n }, this.triggerLinkClickScribes = function(a) {\n var b = this, c = {\n interests_link: this.attr.interestsSelector,\n import_link: this.attr.findFriendsSelector,\n view_all_link: this.attr.viewAllSelector,\n refresh_link: this.attr.refreshRecsSelector\n }, d = $(a.target);\n $.each(c, function(a, c) {\n ((d.is(c) && b.trigger(JSBNG__document, \"uiClickedWtfLink\", {\n element: a\n })));\n });\n }, this.after(\"initialize\", function() {\n this.disabled = ((this.attr.wtfOptions ? this.attr.wtfOptions.disabled : !1)), this.JSBNG__on(JSBNG__document, \"dataDidDismissRecommendation\", this.handleDismissResponse), this.JSBNG__on(JSBNG__document, \"dataFailedToDismissUserRecommendation\", this.handleDismissError), this.JSBNG__on(JSBNG__document, \"uiDidHideEmptyTimelineModule\", this.enable), this.JSBNG__on(JSBNG__document, \"uiSwiftLoaded uiPageChanged\", this.initRecommendations), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.reset), this.JSBNG__on(\"click\", {\n dismissRecSelector: this.dismissRecommendation,\n interestsSelector: this.triggerLinkClickScribes,\n viewAllSelector: this.triggerLinkClickScribes,\n findFriendsSelector: this.triggerLinkClickScribes,\n refreshRecsSelector: this.triggerLinkClickScribes\n }), this.around(\"cycleRecommendation\", function(a, b, c) {\n ((((((((this.attr.wtfOptions.display_location === \"wtf-component\")) && !this.currentlyExpanding)) && ((this.getVisibleIds(null, !0).length <= 3)))) ? this.expandWhoToFollow(b, c) : a(b, c)));\n });\n });\n };\n;\n var _ = require(\"core/i18n\"), utils = require(\"core/utils\"), defineComponent = require(\"core/component\"), withUserActions = require(\"app/ui/with_user_actions\"), withItemActions = require(\"app/ui/with_item_actions\"), withUserRecommendations = require(\"app/ui/who_to_follow/with_user_recommendations\");\n module.exports = defineComponent(whoToFollowDashboard, withUserActions, withItemActions, withUserRecommendations);\n});\ndefine(\"app/ui/who_to_follow/who_to_follow_timeline\", [\"module\",\"require\",\"exports\",\"core/i18n\",\"core/component\",\"app/ui/with_user_actions\",\"app/ui/with_item_actions\",\"app/ui/who_to_follow/with_user_recommendations\",], function(module, require, exports) {\n function whoToFollowTimeline() {\n this.defaultAttrs({\n doneButtonSelector: \".empty-timeline .js-done\",\n headerTextSelector: \".empty-timeline .header-text\",\n targetFollowingCount: 5,\n titles: {\n 0: _(\"Here are some people you might enjoy following.\"),\n 1: _(\"Victory! That\\u2019s 1.\"),\n 2: _(\"Congratulations! That\\u2019s 2.\"),\n 3: _(\"Excellent! You\\u2019re making progress.\"),\n 4: _(\"Good work! You\\u2019ve almost reached 5.\"),\n 5: _(\"Yee-haw! That\\u2019s 5 follows. Now you\\u2019re on a roll.\")\n }\n }), this.dismissAllRecommendations = function(a, b) {\n var c = $(b.el);\n if (c.is(\":disabled\")) {\n return;\n }\n ;\n ;\n var d = this.getVisibleIds();\n this.trigger(\"uiDidDismissEmptyTimelineRecommendations\", {\n userIds: d\n }), this.trigger(\"uiDidHideEmptyTimelineModule\"), this.$node.remove();\n }, this.refreshDoneButtonState = function() {\n if (((this.followingCount >= this.attr.targetFollowingCount))) {\n var a = this.select(\"doneButtonSelector\");\n a.attr(\"disabled\", !1), this.trigger(\"uiDidReachTargetFollowingCount\");\n }\n ;\n ;\n }, this.refreshTitle = function() {\n var a = this.attr.titles[this.followingCount.toString()];\n this.select(\"headerTextSelector\").text(a);\n }, this.refreshTimeline = function() {\n this.trigger(\"uiTimelineShouldRefresh\", {\n injectImmediately: !0\n });\n }, this.increaseFollowingCount = function() {\n this.followingCount++;\n }, this.decreaseFollowingCount = function() {\n this.followingCount--;\n }, this.initRecommendations = function() {\n this.followingCount = this.attr.wtfOptions.followingCount, this.verifyInitialRecommendations();\n }, this.after(\"initialize\", function() {\n this.attr.wtfOptions = ((this.attr.emptyTimelineOptions || {\n })), this.JSBNG__on(JSBNG__document, \"uiFollowAction\", this.increaseFollowingCount), this.JSBNG__on(JSBNG__document, \"uiUnfollowAction\", this.decreaseFollowingCount), this.JSBNG__on(JSBNG__document, \"dataFollowStateChange\", this.refreshDoneButtonState), this.JSBNG__on(JSBNG__document, \"dataFollowStateChange\", this.refreshTitle), this.JSBNG__on(JSBNG__document, \"dataFollowStateChange\", this.refreshTimeline), this.JSBNG__on(JSBNG__document, \"uiSwiftLoaded uiPageChanged\", this.initRecommendations), this.JSBNG__on(\"click\", {\n doneButtonSelector: this.dismissAllRecommendations\n });\n });\n };\n;\n var _ = require(\"core/i18n\"), defineComponent = require(\"core/component\"), withUserActions = require(\"app/ui/with_user_actions\"), withItemActions = require(\"app/ui/with_item_actions\"), withUserRecommendations = require(\"app/ui/who_to_follow/with_user_recommendations\");\n module.exports = defineComponent(whoToFollowTimeline, withUserActions, withItemActions, withUserRecommendations);\n});\ndefine(\"app/data/who_to_follow\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/utils/storage/custom\",\"app/data/with_data\",], function(module, require, exports) {\n function whoToFollowData() {\n this.defaults = {\n maxExcludedRecsInLocalStorage: 100,\n endpoints: {\n users: {\n url: \"/i/users/recommendations\",\n method: \"GET\",\n successEvent: \"dataDidGetUserRecommendations\",\n errorEvent: \"dataFailedToGetUserRecommendations\"\n },\n dismiss: {\n url: \"/i/users/recommendations/hide\",\n method: \"POST\",\n successEvent: \"dataDidDismissRecommendation\",\n errorEvent: \"dataFailedToDismissUserRecommendation\"\n },\n promoted_self: {\n url: \"/i/users/promoted_self\",\n method: \"GET\",\n successEvent: \"dataDidGetSelfPromotedAccount\",\n errorEvent: \"dataFailedToGetSelfPromotedAccount\"\n }\n }\n }, this.refreshEndpoint = function(a) {\n return this.hitEndpoint(a, {\n \"Cache-Control\": \"max-age=0\",\n Pragma: \"no-cache\"\n });\n }, this.hitEndpoint = function(a, b) {\n var b = ((b || {\n })), c = this.defaults.endpoints[a];\n return function(a, d) {\n d = ((d || {\n })), d.excluded = ((d.excluded || []));\n var e = ((d.visible || []));\n delete d.visible, this.JSONRequest({\n type: c.method,\n url: c.url,\n headers: b,\n dataType: \"json\",\n data: utils.merge(d, {\n excluded: this.storage.pushAll(\"excluded\", d.excluded).concat(e).join(\",\")\n }),\n eventData: d,\n success: c.successEvent,\n error: c.errorEvent\n }, c.method);\n }.bind(this);\n }, this.excludeUsers = function(a, b) {\n this.storage.pushAll(\"excluded\", b.userIds), this.trigger(\"dataDidExcludeUserRecommendations\", b);\n }, this.excludeFollowed = function(a, b) {\n b = ((b || {\n })), ((((((b.newState === \"following\")) && b.userId)) && this.storage.push(\"excluded\", b.userId)));\n }, this.after(\"initialize\", function(a) {\n var b = customStorage({\n withArray: !0,\n withMaxElements: !0,\n withUniqueElements: !0\n });\n this.storage = new b(\"excluded_wtf_recs\"), this.storage.setMaxElements(\"excluded\", this.attr.maxExcludedRecsInLocalStorage), this.JSBNG__on(JSBNG__document, \"uiRefreshUserRecommendations\", this.refreshEndpoint(\"users\")), this.JSBNG__on(JSBNG__document, \"uiGetUserRecommendations\", this.hitEndpoint(\"users\")), this.JSBNG__on(JSBNG__document, \"uiDismissUserRecommendation\", this.hitEndpoint(\"dismiss\")), this.JSBNG__on(JSBNG__document, \"uiDidDismissEmptyTimelineRecommendations\", this.excludeUsers), this.JSBNG__on(JSBNG__document, \"dataFollowStateChange\", this.excludeFollowed), this.JSBNG__on(JSBNG__document, \"uiGotPromptbirdDashboardProfile\", this.hitEndpoint(\"promoted_self\"));\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), customStorage = require(\"app/utils/storage/custom\"), withData = require(\"app/data/with_data\"), WhoToFollowData = defineComponent(whoToFollowData, withData);\n module.exports = WhoToFollowData;\n});\ndefine(\"app/data/who_to_follow_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_interaction_data\",\"app/data/with_interaction_data_scribe\",\"core/utils\",], function(module, require, exports) {\n function whoToFollowScribe() {\n this.defaultAttrs({\n userSelector: \".js-actionable-user\",\n itemType: \"user\"\n }), this.scribeDismissRecommendation = function(a, b) {\n this.scribeInteraction(\"dismiss\", b.oldUser), ((b.newUser && this.scribeInteraction({\n element: \"replace\",\n action: \"results\"\n }, b.newUser, {\n referring_event: \"replace\"\n })));\n }, this.scribeRecommendationResults = function(a, b) {\n var c = [];\n ((a.emptyResponse || this.$node.JSBNG__find(this.attr.userSelector).map(function(a, b) {\n c.push(this.interactionData($(b), {\n position: a\n }));\n }.bind(this))));\n var d = ((a.emptyResponse ? \"no_results\" : \"results\"));\n this.scribeInteractiveResults({\n element: b,\n action: d\n }, c, a, {\n referring_event: b\n });\n }, this.scribeRecommendations = function(a, b) {\n var c = ((b.sourceEventData || {\n })), d = ((b.initialResults || c.initialResults));\n ((d ? (this.scribeRecommendationResults(b, \"initial\"), ((b.emptyResponse || this.scribeRecommendationImpression(b)))) : (this.scribe({\n action: \"refresh\"\n }, b, {\n event_info: c.refreshType\n }), this.scribeRecommendationResults(b, \"newer\"))));\n }, this.scribeEmptyRecommendationsResponse = function(a, b) {\n this.scribeRecommendations(a, utils.merge(b, {\n emptyResponse: !0\n }));\n }, this.scribeRecommendationImpression = function(a) {\n this.scribe(\"impression\", a);\n }, this.scribeLinkClicks = function(a, b) {\n this.scribe({\n component: \"user_recommendations\",\n element: b.element,\n action: \"click\"\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiDidDismissUserRecommendation\", this.scribeDismissRecommendation), this.JSBNG__on(JSBNG__document, \"uiDidGetRecommendations\", this.scribeRecommendations), this.JSBNG__on(JSBNG__document, \"uiGotEmptyRecommendationsResponse\", this.scribeEmptyRecommendationsResponse), this.JSBNG__on(JSBNG__document, \"uiClickedWtfLink\", this.scribeLinkClicks);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withInteractionData = require(\"app/ui/with_interaction_data\"), withInteractionDataScribe = require(\"app/data/with_interaction_data_scribe\"), utils = require(\"core/utils\");\n module.exports = defineComponent(whoToFollowScribe, withInteractionData, withInteractionDataScribe);\n});\ndefine(\"app/ui/profile/recent_connections_module\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_user_actions\",\"app/ui/with_item_actions\",], function(module, require, exports) {\n function recentConnectionsModule() {\n this.defaultAttrs({\n itemType: \"user\"\n });\n };\n;\n var defineComponent = require(\"core/component\"), withUserActions = require(\"app/ui/with_user_actions\"), withItemActions = require(\"app/ui/with_item_actions\");\n module.exports = defineComponent(recentConnectionsModule, withUserActions, withItemActions);\n});\ndefine(\"app/ui/promptbird/with_invite_contacts\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withInviteContacts() {\n this.defaultAttrs({\n inviteContactsSelector: \".invite_contacts_prompt.prompt + .promptbird-action-bar .call-to-action\"\n }), this.doInviteContacts = function(b, c) {\n b.preventDefault(), this.trigger(\"uiPromptbirdShowInviteContactsDialog\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n inviteContactsSelector: this.doInviteContacts\n });\n });\n };\n;\n module.exports = withInviteContacts;\n});\ndefine(\"app/ui/promptbird\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/promptbird/with_invite_contacts\",\"app/ui/tweet_dialog\",], function(module, require, exports) {\n function promptbirdPrompt() {\n this.defaultAttrs({\n promptSelector: \".JSBNG__prompt\",\n languageSelector: \".language\",\n callToActionSelector: \".call-to-action\",\n callToActionDismissSelector: \".call-to-action.dismiss-prompt\",\n delayedDismissSelector: \".js-follow-btn\",\n dismissSelector: \"a.js-dismiss\",\n setLanguageSelector: \".call-to-action.set-language\",\n oneClickImportSelector: \".call-to-action.one-click-import-button\",\n inlineImportButtonSelector: \".service-links a.service-link\",\n promptMentionTweetComposeSelector: \".show_tweet_dialog.promptbird-action-bar a.call-to-action\",\n deviceFollowSelector: \".device-follow.promptbird-action-bar a.call-to-action\",\n dashboardProfilePromptSelector: \".gain_followers_prompt\",\n previewPromotedAccountSelector: \".gain_followers_prompt .preview-promoted-account\",\n followPromptCallToActionSelector: \"div.promptbird-action-bar.user-actions.not-following \\u003E button.js-follow-btn\"\n }), this.importCallbackUrl = function() {\n return ((((((window.JSBNG__location.protocol + \"//\")) + window.JSBNG__location.host)) + \"/who_to_follow/matches\"));\n }, this.promptLanguage = function() {\n return this.select(\"languageSelector\").attr(\"data-language\");\n }, this.dismissPrompt = function(a, b) {\n a.preventDefault(), this.trigger(\"uiPromptbirdDismissPrompt\", {\n scribeContext: this.scribeContext(),\n prompt_id: this.$node.data(\"prompt-id\")\n }), this.$node.remove();\n }, this.doPromptMentionTweetCompose = function(a, b) {\n a.preventDefault();\n var c = this.$node.JSBNG__find(\"a.call-to-action\").data(\"screenname\"), d = this.$node.JSBNG__find(\"a.call-to-action\").data(\"title\");\n this.trigger(\"uiPromptMentionTweetCompose\", {\n screenName: c,\n title: d,\n scribeContext: this.scribeContext()\n });\n }, this.doDeviceFollow = function(a, b) {\n a.preventDefault();\n var c = this.$node.JSBNG__find(\".call-to-action\").data(\"user-id\");\n this.trigger(\"uiDeviceNotificationsOnAction\", {\n userId: c,\n scribeContext: this.scribeContext()\n });\n }, this.delayedDismissPrompt = function(b, c) {\n this.trigger(\"uiPromptbirdDismissPrompt\", {\n prompt_id: this.$node.data(\"prompt-id\")\n });\n var d = this.$node;\n JSBNG__setTimeout(function() {\n d.remove();\n }, 1000);\n }, this.setLanguage = function(a, b) {\n this.trigger(\"uiPromptbirdSetLanguage\", {\n lang: this.promptLanguage()\n });\n }, this.doOneClickImport = function(a, b) {\n a.preventDefault();\n var c = this.$node.JSBNG__find(\"span.one-click-import-button\").data(\"email\"), d = ((\"/invitations/oauth_launch?email=\" + encodeURIComponent(c))), e = this.$node.data(\"prompt-id\"), b = {\n triggerEvent: !0,\n url: d\n };\n ((((e === 46)) && (b.width = 880, b.height = 550))), this.trigger(\"uiPromptbirdDoOneClickImport\", b);\n }, this.doInlineContactImport = function(a, b) {\n a.preventDefault();\n var c = $(a.target);\n this.trigger(\"uiPromptbirdDoInlineContactImport\", {\n url: c.data(\"url\"),\n width: c.data(\"width\"),\n height: c.data(\"height\"),\n popup: c.data(\"popup\"),\n serviceName: c.JSBNG__find(\"strong.service-name\").data(\"service-id\"),\n callbackUrl: this.importCallbackUrl()\n });\n }, this.clickAndDismissPrompt = function(a, b) {\n this.trigger(\"uiPromptbirdDismissPrompt\", {\n scribeContext: this.scribeContext(),\n prompt_id: this.$node.data(\"prompt-id\")\n }), this.$node.remove();\n }, this.generateClickEvent = function(a, b) {\n this.trigger(\"uiPromptbirdClick\", {\n scribeContext: this.scribeContext(),\n prompt_id: this.$node.data(\"prompt-id\")\n }), this.$node.hide();\n }, this.clickPreviewPromotedAccount = function(a, b) {\n a.preventDefault(), this.trigger(\"uiPromptbirdPreviewPromotedAccount\", {\n scribeContext: this.scribeContext()\n });\n }, this.showDashboardProfilePrompt = function() {\n this.$node.slideDown(\"fast\"), this.trigger(\"uiShowDashboardProfilePromptbird\", {\n scribeContext: this.scribeContext()\n });\n }, this.maybeInitDashboardProfilePrompt = function() {\n if (((this.select(\"dashboardProfilePromptSelector\").length === 0))) {\n return;\n }\n ;\n ;\n this.JSBNG__on(JSBNG__document, \"uiDidGetRecommendations\", function() {\n this.trigger(\"uiGotPromptbirdDashboardProfile\"), this.JSBNG__on(JSBNG__document, \"dataDidGetSelfPromotedAccount\", this.showDashboardProfilePrompt);\n });\n }, this.scribeContext = function() {\n return {\n component: ((\"promptbird_\" + this.$node.data(\"prompt-id\")))\n };\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n callToActionSelector: this.generateClickEvent,\n callToActionDismissSelector: this.clickAndDismissPrompt,\n dismissSelector: this.dismissPrompt,\n delayedDismissSelector: this.delayedDismissPrompt,\n setLanguageSelector: this.setLanguage,\n oneClickImportSelector: this.doOneClickImport,\n inlineImportButtonSelector: this.doInlineContactImport,\n previewPromotedAccountSelector: this.clickPreviewPromotedAccount,\n promptMentionTweetComposeSelector: this.doPromptMentionTweetCompose,\n followPromptCallToActionSelector: this.generateClickEvent,\n deviceFollowSelector: this.doDeviceFollow\n }), this.JSBNG__on(JSBNG__document, \"uiPromptbirdInviteContactsSuccess\", this.dismissPrompt), this.maybeInitDashboardProfilePrompt();\n });\n };\n;\n var defineComponent = require(\"core/component\"), withInviteContacts = require(\"app/ui/promptbird/with_invite_contacts\"), tweetDialog = require(\"app/ui/tweet_dialog\");\n module.exports = defineComponent(promptbirdPrompt, withInviteContacts);\n});\ndefine(\"app/utils/oauth_popup\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = function(a) {\n var b = a.url, c = ((((b.indexOf(\"?\") == -1)) ? \"?\" : \"&\"));\n ((a.callbackUrl ? b += ((((c + \"callback_hash=\")) + encodeURIComponent(a.callbackUrl))) : ((a.triggerEvent && (b += ((c + \"trigger_event=true\")))))));\n var d = $(window), e = ((((window.JSBNG__screenY || window.JSBNG__screenTop)) || 0)), f = ((((window.JSBNG__screenX || window.JSBNG__screenLeft)) || 0)), g = ((((((d.height() - 500)) / 2)) + e)), h = ((((((d.width() - 500)) / 2)) + f)), a = {\n width: ((a.width ? a.width : 500)),\n height: ((a.height ? a.height : 500)),\n JSBNG__top: g,\n left: h,\n JSBNG__toolbar: \"no\",\n JSBNG__location: \"yes\"\n }, i = $.param(a).replace(/&/g, \",\");\n window.open(b, \"twitter_oauth\", i).JSBNG__focus();\n };\n});\ndefine(\"app/data/promptbird\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",\"app/utils/oauth_popup\",], function(module, require, exports) {\n function promptbirdData() {\n this.languageChanged = function(a, b) {\n window.JSBNG__location.reload();\n }, this.changeLanguage = function(a, b) {\n var c = {\n lang: b.lang\n };\n this.post({\n url: \"/settings/account/set_language\",\n eventData: c,\n data: c,\n success: \"dataPromptbirdLanguageChangeSuccess\",\n error: \"dataPromptbirdLanguageChangeFailure\"\n });\n }, this.dismissPrompt = function(a, b) {\n var c = {\n prompt_id: b.prompt_id\n };\n this.post({\n url: \"/users/dismiss_prompt\",\n headers: {\n \"X-PHX\": !0\n },\n eventData: c,\n data: c,\n success: \"dataPromptbirdPromptDismissed\",\n error: \"dataPromptbirdPromptDismissalError\"\n });\n }, this.clickPrompt = function(a, b) {\n var c = {\n prompt_id: b.prompt_id\n };\n this.post({\n url: \"/users/click_prompt\",\n headers: {\n \"X-PHX\": !0\n },\n eventData: c,\n data: c,\n success: \"dataPromptbirdPromptClicked\",\n error: \"dataPromptbirdPromptClickError\"\n });\n }, this.doOneClickImport = function(a, b) {\n oauthPopup(b), this.trigger(\"dataPromptbirdDidOneClickImport\", b);\n }, this.doInlineContactImport = function(a, b) {\n var c = b.url;\n ((c && ((b.popup ? oauthPopup({\n url: c,\n width: b.width,\n height: b.height,\n callbackUrl: b.callbackUrl\n }) : window.open(c, \"_blank\").JSBNG__focus()))));\n }, this.onPromptMentionTweetCompose = function(a, b) {\n this.trigger(\"uiOpenTweetDialog\", b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiPromptbirdSetLanguage\", this.changeLanguage), this.JSBNG__on(\"uiPromptbirdDismissPrompt\", this.dismissPrompt), this.JSBNG__on(\"uiPromptbirdClick\", this.clickPrompt), this.JSBNG__on(\"uiPromptbirdDoOneClickImport\", this.doOneClickImport), this.JSBNG__on(\"dataPromptbirdLanguageChangeSuccess\", this.languageChanged), this.JSBNG__on(\"uiPromptbirdDoInlineContactImport\", this.doInlineContactImport), this.JSBNG__on(\"uiPromptMentionTweetCompose\", this.onPromptMentionTweetCompose);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), oauthPopup = require(\"app/utils/oauth_popup\");\n module.exports = defineComponent(promptbirdData, withData);\n});\ndefine(\"app/data/promptbird_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function promptbirdScribe() {\n this.after(\"initialize\", function() {\n this.scribeOnEvent(\"uiPromptbirdClick\", {\n action: \"click\"\n }), this.scribeOnEvent(\"uiPromptbirdPreviewPromotedAccount\", {\n action: \"preview\"\n }), this.scribeOnEvent(\"uiPromptbirdDismissPrompt\", {\n action: \"dismiss\"\n }), this.scribeOnEvent(\"uiShowDashboardProfilePromptbird\", {\n action: \"show\"\n }), this.scribeOnEvent(\"uiPromptMentionTweetCompose\", {\n action: \"show\"\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(promptbirdScribe, withScribe);\n});\ndefine(\"app/ui/with_select_all\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withSelectAll() {\n this.defaultAttrs({\n }), this.checkboxChanged = function(a) {\n var b = this.select(\"checkboxSelector\"), c = this.select(\"checkedCheckboxSelector\");\n this.select(\"actionButtonSelector\").attr(\"disabled\", ((c.length == 0))), this.select(\"selectAllSelector\").attr(\"checked\", ((c.length == b.length))), this.trigger(\"uiListSelectionChanged\");\n }, this.selectAllChanged = function() {\n var a = this.select(\"selectAllSelector\");\n this.select(\"checkboxSelector\").attr(\"checked\", a.is(\":checked\")), this.select(\"actionButtonSelector\").attr(\"disabled\", !a.is(\":checked\")), this.trigger(\"uiListSelectionChanged\");\n }, this.after(\"initialize\", function() {\n this.attr.checkedCheckboxSelector = ((this.attr.checkboxSelector + \":checked\")), this.JSBNG__on(\"change\", {\n checkboxSelector: this.checkboxChanged,\n selectAllSelector: this.selectAllChanged\n });\n });\n };\n;\n module.exports = withSelectAll;\n});\ndefine(\"app/ui/who_to_follow/with_invite_messages\", [\"module\",\"require\",\"exports\",\"core/i18n\",], function(module, require, exports) {\n function withInviteMessages() {\n this.defaultAttrs({\n showMessageOnSuccess: !0\n }), this.showSuccessMessage = function(a, b) {\n var c = this.select(\"actionButtonSelector\"), d = c.data(\"done-href\");\n if (d) {\n this.trigger(\"uiNavigate\", {\n href: d\n });\n return;\n }\n ;\n ;\n var e, f;\n ((b ? (e = b.invited.length, f = _(\"We let {{count}} of your contacts know about Twitter.\", {\n count: e\n })) : (e = -1, f = _(\"We let your contacts know about Twitter.\")))), ((this.attr.showMessageOnSuccess && this.trigger(\"uiShowMessage\", {\n message: f\n }))), this.trigger(\"uiInviteFinished\", {\n count: e\n });\n }, this.showFailureMessage = function(a, b) {\n var c = ((((b.errors && b.errors[0])) && b.errors[0].code));\n switch (c) {\n case 47:\n this.trigger(\"uiShowError\", {\n message: _(\"We couldn't send invitations to any of those addresses.\")\n });\n break;\n case 37:\n this.trigger(\"uiShowError\", {\n message: _(\"There was an error emailing your contacts. Please try again later.\")\n });\n break;\n default:\n this.showSuccessMessage(a);\n };\n ;\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataInviteContactsSuccess\", this.showSuccessMessage), this.JSBNG__on(JSBNG__document, \"dataInviteContactsFailure\", this.showFailureMessage);\n });\n };\n;\n var _ = require(\"core/i18n\");\n module.exports = withInviteMessages;\n});\ndefine(\"app/ui/who_to_follow/with_invite_preview\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withInvitePreview() {\n this.defaultAttrs({\n previewInviteSelector: \".js-preview-invite\"\n }), this.previewInvite = function(a, b) {\n a.preventDefault(), window.open(\"/invitations/email_preview\", \"invitation_email_preview\", \"height=550,width=740\"), this.trigger(\"uiPreviewInviteOpened\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n previewInviteSelector: this.previewInvite\n });\n });\n };\n;\n module.exports = withInvitePreview;\n});\ndefine(\"app/ui/who_to_follow/with_unmatched_contacts\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/ui/with_select_all\",\"app/ui/who_to_follow/with_invite_messages\",\"app/ui/who_to_follow/with_invite_preview\",], function(module, require, exports) {\n function withUnmatchedContacts() {\n compose.mixin(this, [withSelectAll,withInviteMessages,withInvitePreview,]), this.defaultAttrs({\n checkboxSelector: \".contact-checkbox\",\n selectAllSelector: \".select-all-contacts\",\n actionButtonSelector: \".js-invite\"\n }), this.inviteChecked = function() {\n var a = [], b = this.select(\"checkedCheckboxSelector\");\n b.each(function() {\n var b = $(this), c = b.closest(\"label\").JSBNG__find(\".contact-item-name\").text(), d = {\n email: b.val()\n };\n ((((c != d.email)) && (d.JSBNG__name = c))), a.push(d);\n }), this.select(\"actionButtonSelector\").attr(\"disabled\", !0), this.trigger(\"uiInviteContacts\", {\n invitable: this.select(\"checkboxSelector\").length,\n contacts: a,\n scribeContext: {\n component: this.attr.inviteContactsComponent\n }\n });\n }, this.reenableActionButton = function() {\n this.select(\"actionButtonSelector\").attr(\"disabled\", !1);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"change\", {\n checkboxSelector: this.checkboxChanged,\n selectAllSelector: this.selectAllChanged\n }), this.JSBNG__on(\"click\", {\n actionButtonSelector: this.inviteChecked\n }), this.JSBNG__on(JSBNG__document, \"dataInviteContactsSuccess dataInviteContactsFailure\", this.reenableActionButton);\n });\n };\n;\n var compose = require(\"core/compose\"), withSelectAll = require(\"app/ui/with_select_all\"), withInviteMessages = require(\"app/ui/who_to_follow/with_invite_messages\"), withInvitePreview = require(\"app/ui/who_to_follow/with_invite_preview\");\n module.exports = withUnmatchedContacts;\n});\ndefine(\"app/ui/dialogs/promptbird_invite_contacts_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_position\",\"app/ui/with_dialog\",\"app/ui/who_to_follow/with_unmatched_contacts\",], function(module, require, exports) {\n function promptbirdInviteContactsDialog() {\n this.defaultAttrs({\n contactSelector: \".contact-item\",\n inviteContactsComponent: \"invite_contacts_promptbird\"\n }), this.contactCheckboxChanged = function(a) {\n var b = $(a.target);\n b.closest(this.attr.contactSelector).toggleClass(\"selected\", b.is(\":checked\"));\n }, this.contactSelectAllChanged = function() {\n var a = this.select(\"selectAllSelector\");\n this.select(\"contactSelector\").toggleClass(\"selected\", a.is(\":checked\"));\n }, this.inviteSuccess = function(a, b) {\n this.close(), this.trigger(\"uiPromptbirdInviteContactsSuccess\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"change\", {\n checkboxSelector: this.contactCheckboxChanged,\n selectAllSelector: this.contactSelectAllChanged\n }), this.JSBNG__on(JSBNG__document, \"uiPromptbirdShowInviteContactsDialog\", this.open), this.JSBNG__on(JSBNG__document, \"uiInviteFinished\", this.inviteSuccess), this.JSBNG__on(JSBNG__document, \"dataInviteContactsFailure\", this.close);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withPosition = require(\"app/ui/with_position\"), withDialog = require(\"app/ui/with_dialog\"), withUnmatchedContacts = require(\"app/ui/who_to_follow/with_unmatched_contacts\");\n module.exports = defineComponent(promptbirdInviteContactsDialog, withDialog, withPosition, withUnmatchedContacts);\n});\ndefine(\"app/data/contact_import\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function contactImportData() {\n this.contactImportStatus = function(a, b) {\n this.get({\n url: \"/who_to_follow/import/status\",\n data: {\n },\n eventData: b,\n success: \"dataContactImportStatusSuccess\",\n error: \"dataContactImportStatusFailure\"\n });\n }, this.contactImportFollow = function(a, b) {\n var c = {\n user_ids: ((b.includeIds || [])),\n unchecked_user_ids: ((b.excludeIds || []))\n };\n this.post({\n url: \"/find_sources/contacts/follow_some.json\",\n data: c,\n eventData: b,\n headers: {\n \"X-PHX\": !0\n },\n success: this.handleContactImportSuccess.bind(this),\n error: \"dataContactImportFollowFailure\"\n });\n }, this.handleContactImportSuccess = function(a) {\n a.followed_ids.forEach(function(a) {\n this.trigger(\"dataBulkFollowStateChange\", {\n userId: a,\n newState: \"following\"\n });\n }.bind(this)), a.requested_ids.forEach(function(a) {\n this.trigger(\"dataBulkFollowStateChange\", {\n userId: a,\n newState: \"pending\"\n });\n }.bind(this)), this.trigger(\"dataContactImportFollowSuccess\", a);\n }, this.inviteContacts = function(a, b) {\n var c = b.contacts.map(function(a) {\n return ((a.JSBNG__name ? ((((((((\"\\\"\" + a.JSBNG__name.replace(/\"/g, \"\\\\\\\"\"))) + \"\\\" \\u003C\")) + a.email)) + \"\\u003E\")) : a.email));\n });\n this.post({\n url: \"/users/send_invites_by_email\",\n data: {\n addresses: c.join(\",\"),\n source: \"contact_import\"\n },\n eventData: b,\n success: \"dataInviteContactsSuccess\",\n error: \"dataInviteContactsFailure\"\n });\n }, this.wipeAddressbook = function(a, b) {\n this.post({\n url: \"/users/wipe_addressbook.json\",\n headers: {\n \"X-PHX\": !0\n },\n data: {\n },\n eventData: b,\n success: \"dataWipeAddressbookSuccess\",\n error: \"dataWipeAddressbookFailure\"\n });\n }, this.unmatchedContacts = function(a, b) {\n this.get({\n url: \"/welcome/unmatched_contacts\",\n data: {\n },\n eventData: b,\n success: \"dataUnmatchedContactsSuccess\",\n error: \"dataUnmatchedContactsFailure\"\n });\n }, this.getMatchesModule = function(a, b) {\n function c(a) {\n ((a.html && this.trigger(\"dataContactImportMatchesSuccess\", a)));\n };\n ;\n this.get({\n url: \"/who_to_follow/matches\",\n data: {\n },\n eventData: b,\n success: c.bind(this),\n error: \"dataContactImportMatchesFailure\"\n });\n }, this.inviteModule = function(a, b) {\n function c(a) {\n ((a.html && this.trigger(\"dataInviteModuleSuccess\", a)));\n };\n ;\n this.get({\n url: \"/who_to_follow/invite\",\n data: {\n },\n eventData: b,\n success: c.bind(this),\n error: \"dataInviteModuleFailure\"\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiWantsContactImportStatus\", this.contactImportStatus), this.JSBNG__on(JSBNG__document, \"uiContactImportFollow\", this.contactImportFollow), this.JSBNG__on(JSBNG__document, \"uiWantsUnmatchedContacts\", this.unmatchedContacts), this.JSBNG__on(JSBNG__document, \"uiInviteContacts\", this.inviteContacts), this.JSBNG__on(JSBNG__document, \"uiWantsAddressbookWiped\", this.wipeAddressbook), this.JSBNG__on(JSBNG__document, \"uiWantsContactImportMatches\", this.getMatchesModule), this.JSBNG__on(JSBNG__document, \"uiWantsInviteModule\", this.inviteModule);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(contactImportData, withData);\n});\ndefine(\"app/data/contact_import_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_scribe\",], function(module, require, exports) {\n function contactImportScribe() {\n this.scribeServiceLaunch = function(a, b) {\n this.scribe({\n component: \"import_service_stream\",\n action: \"launch_service\"\n }, {\n query: b.service\n });\n }, this.scribePreviewInviteOpened = function(a, b) {\n this.scribe({\n component: \"invite_friends\",\n element: \"preview_invite_link\",\n action: \"click\"\n });\n }, this.scribeFollowSuccess = function(a, b) {\n this.scribe({\n component: \"stream_header\",\n action: \"follow\"\n }, {\n item_count: b.followed_ids.length,\n item_ids: b.followed_ids,\n event_value: b.followed_ids.length,\n event_info: \"follow_all\"\n });\n }, this.scribeInvitationSuccess = function(a, b) {\n var c = b.sourceEventData, d = b.sourceEventData.scribeContext;\n ((((c.invitable !== undefined)) && this.scribe(utils.merge({\n }, d, {\n action: \"invitable\"\n }), {\n item_count: c.invitable\n }))), this.scribe(utils.merge({\n }, d, {\n action: \"invited\"\n }), {\n item_count: c.contacts.length,\n event_value: c.contacts.length\n });\n }, this.scribeInvitationFailure = function(a, b) {\n var c = b.sourceEventData, d = b.sourceEventData.scribeContext, e = ((((b.errors && b.errors[0])) && b.errors[0].code));\n this.scribe(utils.merge({\n }, d, {\n action: \"error\"\n }), {\n item_count: c.contacts.length,\n status_code: e\n });\n }, this.scribeLinkClick = function(a, b) {\n var c = a.target.className;\n ((((c.indexOf(\"find-friends-btn\") != -1)) && this.scribe({\n component: \"empty_timeline\",\n element: \"find_friends_link\",\n action: \"click\"\n })));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiImportServiceLaunched\", this.scribeServiceLaunch), this.JSBNG__on(\"uiPreviewInviteOpened\", this.scribePreviewInviteOpened), this.JSBNG__on(\"dataContactImportFollowSuccess\", this.scribeFollowSuccess), this.JSBNG__on(\"dataInviteContactsSuccess\", this.scribeInvitationSuccess), this.JSBNG__on(\"dataInviteContactsFailure\", this.scribeInvitationFailure), this.JSBNG__on(\"click\", this.scribeLinkClick);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(contactImportScribe, withScribe);\n});\ndefine(\"app/ui/with_import_services\", [\"module\",\"require\",\"exports\",\"core/i18n\",\"app/utils/oauth_popup\",], function(module, require, exports) {\n function withImportServices() {\n this.launchService = function(a) {\n var b = $(a.target).closest(this.attr.launchServiceSelector);\n this.oauthPopup({\n url: b.data(\"url\"),\n triggerEvent: !0,\n width: b.data(\"width\"),\n height: b.data(\"height\")\n }), this.trigger(\"uiImportServiceLaunched\", {\n service: b.data(\"service\")\n });\n }, this.importDeniedFailure = function() {\n this.trigger(\"uiShowError\", {\n message: _(\"You denied Twitter's access to your contact information.\")\n });\n }, this.importMissingFailure = function() {\n this.trigger(\"uiShowError\", {\n message: _(\"An error occurred validating your credentials.\")\n });\n }, this.after(\"initialize\", function() {\n this.oauthPopup = oauthPopup, this.JSBNG__on(JSBNG__document, \"uiOauthImportDenied\", this.importDeniedFailure), this.JSBNG__on(JSBNG__document, \"uiOauthImportMissing\", this.importMissingFailure), this.JSBNG__on(\"click\", {\n launchServiceSelector: this.launchService\n });\n });\n };\n;\n var _ = require(\"core/i18n\"), oauthPopup = require(\"app/utils/oauth_popup\");\n module.exports = withImportServices;\n});\ndefine(\"app/ui/who_to_follow/import_services\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/i18n\",\"app/ui/with_import_services\",], function(module, require, exports) {\n function importServices() {\n this.defaultAttrs({\n launchServiceSelector: \".js-service-row\",\n matchesHref: \"/who_to_follow/matches\",\n redirectOnSuccess: !0\n }), this.importSuccess = function() {\n this.trigger(\"uiOpenImportLoadingDialog\"), this.startPolling();\n }, this.dialogCancelled = function() {\n this.stopPolling();\n }, this.startPolling = function() {\n this.pollingCount = 0, this.interval = window.JSBNG__setInterval(this.checkForContacts.bind(this), 3000);\n }, this.stopPolling = function() {\n ((this.interval && (window.JSBNG__clearInterval(this.interval), this.interval = null))), this.trigger(\"uiCloseDialog\");\n }, this.checkForContacts = function() {\n ((((this.pollingCount++ > 15)) ? (this.trigger(\"uiShowError\", {\n message: _(\"Loading seems to be taking a while. Please wait a moment and try again.\")\n }), this.stopPolling()) : this.trigger(\"uiWantsContactImportStatus\")));\n }, this.hasStatus = function(a, b) {\n ((b.done && (this.stopPolling(), ((b.error ? this.trigger(\"uiShowError\", {\n message: b.message\n }) : ((this.attr.redirectOnSuccess ? this.trigger(\"uiNavigate\", {\n href: this.attr.matchesHref\n }) : this.trigger(\"uiWantsContactImportMatches\"))))))));\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(JSBNG__document, \"uiOauthImportSuccess\", this.importSuccess), this.JSBNG__on(JSBNG__document, \"uiImportLoadingDialogCancelled\", this.dialogCancelled), this.JSBNG__on(JSBNG__document, \"dataContactImportStatusSuccess\", this.hasStatus), ((a.hasUserCompletionModule && (this.attr.matchesHref += \"?from_num=1\")));\n }), this.after(\"teardown\", function() {\n this.stopPolling();\n });\n };\n;\n var defineComponent = require(\"core/component\"), _ = require(\"core/i18n\"), withImportServices = require(\"app/ui/with_import_services\");\n module.exports = defineComponent(importServices, withImportServices);\n});\ndefine(\"app/ui/who_to_follow/import_loading_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_position\",\"app/ui/with_dialog\",], function(module, require, exports) {\n function importLoadingDialog() {\n this.defaultAttrs({\n closeSelector: \".modal-close\"\n }), this.after(\"afterClose\", function() {\n this.trigger(\"uiImportLoadingDialogCancelled\");\n }), this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiOpenImportLoadingDialog\", this.open);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withPosition = require(\"app/ui/with_position\"), withDialog = require(\"app/ui/with_dialog\");\n module.exports = defineComponent(importLoadingDialog, withDialog, withPosition);\n});\ndefine(\"app/ui/dashboard_tweetbox\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",], function(module, require, exports) {\n function dashboardTweetbox() {\n this.defaultAttrs({\n hasDefaultText: !0,\n tweetFormSelector: \".tweet-form\",\n defaultTextFrom: \"data-screen-name\",\n prependText: \"@\"\n }), this.openTweetBox = function() {\n var a = this.attr.prependText, b = ((this.$node.attr(this.attr.defaultTextFrom) || \"\")), c = this.select(\"tweetFormSelector\");\n this.trigger(c, \"uiInitTweetbox\", utils.merge({\n draftTweetId: this.attr.draftTweetId,\n condensable: !0,\n condensedText: ((a + b)),\n defaultText: ((this.attr.hasDefaultText ? ((((a + b)) + \" \")) : \"\"))\n }, {\n eventData: this.attr.eventData\n }));\n }, this.after(\"initialize\", function() {\n this.openTweetBox();\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\");\n module.exports = defineComponent(dashboardTweetbox);\n});\ndefine(\"app/utils/boomerang\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/clock\",\"app/data/scribe_transport\",], function(module, require, exports) {\n function Boomerang() {\n this.initializeBoomerang = function() {\n var a = {\n allow_ssl: !0,\n autorun: !1,\n user_ip: this.attr.ip,\n BW: {\n base_url: this.attr.baseUrl,\n cookie: ((this.attr.force ? null : \"BA\"))\n }\n }, b = function(a) {\n ((((((a && a.bw)) || this.attr.inTest)) && this.scribeBoomerangResults(a)));\n try {\n delete window.BOOMR;\n } catch (b) {\n window.BOOMR = undefined;\n };\n ;\n }.bind(this);\n using(\"app/utils/boomerang_lib\", function() {\n delete BOOMR.plugins.RT, BOOMR.init(a), BOOMR.subscribe(\"before_beacon\", b), clock.setTimeoutEvent(\"boomerangStart\", 10000);\n });\n }, this.scribeBoomerangResults = function(a) {\n var b = parseInt(((a.bw / 1024)), 10), c = parseInt(((((a.bw_err * 100)) / a.bw)), 10), d = parseInt(((((a.lat_err * 100)) / a.lat)), 10);\n scribeTransport.send({\n event_name: \"measurement\",\n load_time_ms: a.t_done,\n bandwidth_kbytes: b,\n bandwidth_error_percent: c,\n latency_ms: a.lat,\n latency_error_percent: d,\n product: \"webclient\",\n base_url: this.attr.baseUrl\n }, \"boomerang\"), ((this.attr.force && this.trigger(\"uiShowError\", {\n message: ((((((((((((((\"Bandwidth: \" + b)) + \" KB/s &plusmn; \")) + c)) + \"%\\u003Cbr /\\u003ELatency: \")) + a.lat)) + \" ms &plusmn; \")) + a.lat_err))\n })));\n }, this.startBoomerang = function() {\n BOOMR.page_ready();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(window, \"load\", this.initializeBoomerang), this.JSBNG__on(\"boomerangStart\", this.startBoomerang);\n });\n };\n;\n var defineComponent = require(\"core/component\"), clock = require(\"core/clock\"), scribeTransport = require(\"app/data/scribe_transport\");\n module.exports = defineComponent(Boomerang);\n});\ndefine(\"app/ui/profile_stats\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_profile_stats\",], function(module, require, exports) {\n var defineComponent = require(\"core/component\"), withProfileStats = require(\"app/ui/with_profile_stats\");\n module.exports = defineComponent(withProfileStats);\n});\ndefine(\"app/pages/home\", [\"module\",\"require\",\"exports\",\"app/boot/app\",\"app/boot/trends\",\"app/boot/tweet_timeline\",\"app/boot/user_completion_module\",\"app/ui/who_to_follow/who_to_follow_dashboard\",\"app/ui/who_to_follow/who_to_follow_timeline\",\"app/data/who_to_follow\",\"app/data/who_to_follow_scribe\",\"app/ui/profile/recent_connections_module\",\"app/ui/promptbird\",\"app/data/promptbird\",\"app/data/promptbird_scribe\",\"app/ui/dialogs/promptbird_invite_contacts_dialog\",\"app/data/contact_import\",\"app/data/contact_import_scribe\",\"app/data/contact_import\",\"app/ui/who_to_follow/import_services\",\"app/ui/who_to_follow/import_loading_dialog\",\"app/ui/dashboard_tweetbox\",\"app/utils/boomerang\",\"core/utils\",\"core/i18n\",\"app/ui/profile_stats\",], function(module, require, exports) {\n var bootApp = require(\"app/boot/app\"), trendsBoot = require(\"app/boot/trends\"), tweetTimelineBoot = require(\"app/boot/tweet_timeline\"), userCompletionModuleBoot = require(\"app/boot/user_completion_module\"), WhoToFollowDashboard = require(\"app/ui/who_to_follow/who_to_follow_dashboard\"), WhoToFollowTimeline = require(\"app/ui/who_to_follow/who_to_follow_timeline\"), WhoToFollowData = require(\"app/data/who_to_follow\"), WhoToFollowScribe = require(\"app/data/who_to_follow_scribe\"), RecentConnectionsModule = require(\"app/ui/profile/recent_connections_module\"), PromptbirdUI = require(\"app/ui/promptbird\"), PromptbirdData = require(\"app/data/promptbird\"), PromptbirdScribe = require(\"app/data/promptbird_scribe\"), PromptbirdInviteContactsDialog = require(\"app/ui/dialogs/promptbird_invite_contacts_dialog\"), ContactImport = require(\"app/data/contact_import\"), ContactImportScribe = require(\"app/data/contact_import_scribe\"), ContactImportData = require(\"app/data/contact_import\"), ImportServices = require(\"app/ui/who_to_follow/import_services\"), ImportLoadingDialog = require(\"app/ui/who_to_follow/import_loading_dialog\"), DashboardTweetbox = require(\"app/ui/dashboard_tweetbox\"), Boomerang = require(\"app/utils/boomerang\"), utils = require(\"core/utils\"), _ = require(\"core/i18n\"), ProfileStats = require(\"app/ui/profile_stats\");\n module.exports = function(a) {\n bootApp(a), trendsBoot(a), tweetTimelineBoot(utils.merge(a, {\n preservedScrollEnabled: !0\n }), a.timeline_url, \"tweet\", \"tweet\"), userCompletionModuleBoot(a);\n var b = utils.merge(a, {\n eventData: {\n scribeContext: {\n component: \"user_recommendations\"\n }\n }\n }), c = \".promptbird\", d = utils.merge(a, {\n eventData: {\n scribeContext: {\n section: \"JSBNG__home\"\n }\n }\n });\n PromptbirdData.attachTo(JSBNG__document, d), PromptbirdUI.attachTo(c, d), PromptbirdScribe.attachTo(c, d);\n var e = $(c).data(\"prompt-id\");\n ((((((((e === 46)) || ((e === 49)))) || ((e === 50)))) ? (ContactImportData.attachTo(JSBNG__document), ContactImportScribe.attachTo(JSBNG__document), ImportServices.attachTo(c), ImportLoadingDialog.attachTo(\"#import-loading-dialog\")) : ((((e === 223)) && (PromptbirdInviteContactsDialog.attachTo(\"#promptbird-invite-contacts-dialog\", d), ContactImport.attachTo(JSBNG__document, d), ContactImportScribe.attachTo(JSBNG__document, d)))))), WhoToFollowDashboard.attachTo(\".dashboard .js-wtf-module\", b), WhoToFollowScribe.attachTo(\".dashboard .js-wtf-module\", b), ((a.emptyTimelineOptions.emptyTimelineModule && WhoToFollowTimeline.attachTo(\"#empty-timeline-recommendations\", b))), WhoToFollowScribe.attachTo(\"#empty-timeline-recommendations\", b), WhoToFollowData.attachTo(JSBNG__document, b), RecentConnectionsModule.attachTo(\".dashboard .recent-followers-module\", a, {\n eventData: {\n scribeContext: {\n component: \"recent_followers\"\n }\n }\n }), DashboardTweetbox.attachTo(\".home-tweet-box\", {\n draftTweetId: \"JSBNG__home\",\n prependText: _(\"Compose new Tweet...\"),\n hasDefaultText: !1,\n eventData: {\n scribeContext: {\n component: \"tweet_box\"\n }\n }\n }), ProfileStats.attachTo(\".dashboard .mini-profile\"), ((a.boomr && Boomerang.attachTo(JSBNG__document, a.boomr)));\n };\n});\ndefine(\"app/boot/wtf_module\", [\"module\",\"require\",\"exports\",\"app/ui/who_to_follow/who_to_follow_dashboard\",\"app/data/who_to_follow\",\"app/data/who_to_follow_scribe\",\"core/utils\",], function(module, require, exports) {\n var WhoToFollowDashboard = require(\"app/ui/who_to_follow/who_to_follow_dashboard\"), WhoToFollowData = require(\"app/data/who_to_follow\"), WhoToFollowScribe = require(\"app/data/who_to_follow_scribe\"), utils = require(\"core/utils\");\n module.exports = function(b) {\n var c = utils.merge(b, {\n eventData: {\n scribeContext: {\n component: \"user_recommendations\"\n }\n }\n });\n WhoToFollowDashboard.attachTo(\".dashboard .js-wtf-module\", c), WhoToFollowData.attachTo(JSBNG__document, c), WhoToFollowScribe.attachTo(\".dashboard .js-wtf-module\", c);\n };\n});\ndefine(\"app/data/who_to_tweet\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function whoToTweetData() {\n this.whoToTweetModule = function(a, b) {\n function c(a) {\n ((a.html && this.trigger(\"dataWhoToTweetModuleSuccess\", a)));\n };\n ;\n this.get({\n url: ((((\"/\" + b.screen_name)) + \"/following/users\")),\n data: {\n who_to_tweet: !0\n },\n eventData: b,\n success: c.bind(this),\n error: \"dataInviteModuleFailure\"\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiWantsWhoToTweetModule\", this.whoToTweetModule);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(whoToTweetData, withData);\n});\ndefine(\"app/boot/connect\", [\"module\",\"require\",\"exports\",\"app/boot/app\",\"app/boot/trends\",\"app/boot/wtf_module\",\"app/data/contact_import\",\"app/data/contact_import_scribe\",\"app/data/who_to_tweet\",], function(module, require, exports) {\n function initialize(a) {\n bootApp(a), whoToFollowModule(a), ContactImportData.attachTo(JSBNG__document, a), ContactImportScribe.attachTo(JSBNG__document, a), WhoToTweetData.attachTo(JSBNG__document, a), bootTrends(a);\n };\n;\n var bootApp = require(\"app/boot/app\"), bootTrends = require(\"app/boot/trends\"), whoToFollowModule = require(\"app/boot/wtf_module\"), ContactImportData = require(\"app/data/contact_import\"), ContactImportScribe = require(\"app/data/contact_import_scribe\"), WhoToTweetData = require(\"app/data/who_to_tweet\"), wtfSelector = \".dashboard .js-wtf-module\", timelineSelector = \"#timeline\";\n module.exports = initialize;\n});\ndefine(\"app/ui/who_to_follow/with_list_resizing\", [\"module\",\"require\",\"exports\",\"core/compose\",\"core/utils\",\"app/ui/with_scrollbar_width\",], function(module, require, exports) {\n function withListResizing() {\n compose.mixin(this, [withScrollbarWidth,]), this.defaultAttrs({\n backToTopSelector: \".back-to-top\",\n listSelector: \".scrolling-user-list\",\n listFooterSelector: \".user-list-footer\",\n minHeight: 300\n }), this.scrollToTop = function(a) {\n a.preventDefault(), a.stopImmediatePropagation(), this.select(\"listSelector\").animate({\n scrollTop: 0\n });\n }, this.initUi = function() {\n this.calculateScrollbarWidth();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiSwiftLoaded uiPageChanged\", this.initUi), this.JSBNG__on(\"click\", {\n backToTopSelector: this.scrollToTop\n });\n });\n };\n;\n var compose = require(\"core/compose\"), utils = require(\"core/utils\"), withScrollbarWidth = require(\"app/ui/with_scrollbar_width\");\n module.exports = withListResizing;\n});\ndefine(\"app/ui/who_to_follow/matched_contacts_list\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/i18n\",\"app/ui/with_select_all\",\"app/ui/who_to_follow/with_list_resizing\",], function(module, require, exports) {\n function matchedContactsList() {\n this.defaultAttrs({\n selectedCounterSelector: \".js-follow-count\",\n listItemSelector: \".listview-find-friends-result\",\n checkboxSelector: \".js-action-checkbox\",\n selectAllSelector: \"#select_all_matches\",\n actionButtonSelector: \".js-follow-all\"\n }), this.updateSelection = function() {\n var a = this;\n this.select(\"checkboxSelector\").each(function() {\n $(this).closest(a.attr.listItemSelector).toggleClass(\"selected\", this.checked);\n });\n var b = this.select(\"selectAllSelector\");\n ((b.is(\":checked\") && (this.invisibleSelected = !0)));\n var c = b.val(), d = this.select(\"checkboxSelector\").length, e = this.select(\"checkedCheckboxSelector\").length, f = ((d - e)), g;\n ((this.invisibleSelected ? g = ((c - f)) : g = e)), this.select(\"selectedCounterSelector\").text(g), this.select(\"actionButtonSelector\").attr(\"disabled\", ((g == 0)));\n }, this.maybeDeselectInvisible = function(a, b) {\n this.invisibleSelected = a.target.checked;\n }, this.maybeCheckNewItem = function(a) {\n if (this.invisibleSelected) {\n var b = $(a.target);\n b.JSBNG__find(this.attr.listItemSelector).addClass(\"selected\"), b.JSBNG__find(this.attr.checkboxSelector).attr(\"checked\", \"checked\");\n }\n ;\n ;\n }, this.initSelections = function() {\n ((this.select(\"selectAllSelector\").is(\":checked\") && (this.select(\"checkboxSelector\").attr(\"checked\", \"checked\"), this.select(\"listItemSelector\").addClass(\"selected\"))));\n }, this.followAll = function() {\n var a = this.invisibleSelected, b = {\n excludeIds: [],\n includeIds: []\n };\n this.select(\"checkboxSelector\").each(function() {\n var c = this.checked, d = $(this).closest(\"[data-user-id]\").data(\"user-id\");\n ((((a && !c)) ? b.excludeIds.push(d) : ((((!a && c)) && b.includeIds.push(d)))));\n }), this.select(\"actionButtonSelector\").addClass(\"loading\").attr(\"disabled\", !0), this.trigger(\"uiContactImportFollow\", b);\n }, this.removeLoading = function() {\n this.select(\"actionButtonSelector\").removeClass(\"loading\").attr(\"disabled\", !1);\n }, this.displaySuccess = function(a, b) {\n this.removeLoading(), ((this.attr.findFriendsInline ? this.trigger(\"uiWantsWhoToTweetModule\", {\n screen_name: this.$node.data(\"screen-name\")\n }) : this.trigger(\"uiNavigate\", {\n href: ((\"/who_to_follow/invite?followed_count=\" + b.followed_ids.length))\n })));\n }, this.displayError = function() {\n this.removeLoading(), this.trigger(\"uiShowError\", {\n message: _(\"There was an error following your contacts.\")\n });\n }, this.displayMatches = function(a, b) {\n if (((!b || !b.html))) {\n return;\n }\n ;\n ;\n this.$node.html(b.html), this.initSelections();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiSwiftLoaded uiPageChanged\", this.initSelections), this.JSBNG__on(\"uiListSelectionChanged\", this.updateSelection), this.JSBNG__on(\"change\", {\n selectAllSelector: this.maybeDeselectInvisible\n }), this.JSBNG__on(\"uiHasInjectedTimelineItem\", this.maybeCheckNewItem), this.JSBNG__on(JSBNG__document, \"dataContactImportFollowSuccess\", this.displaySuccess), this.JSBNG__on(JSBNG__document, \"dataContactImportFollowFailure\", this.displayError), this.JSBNG__on(JSBNG__document, \"dataContactImportMatchesSuccess\", this.displayMatches), this.JSBNG__on(\"click\", {\n actionButtonSelector: this.followAll\n }), this.invisibleSelected = !0;\n });\n };\n;\n var defineComponent = require(\"core/component\"), _ = require(\"core/i18n\"), withSelectAll = require(\"app/ui/with_select_all\"), withListResizing = require(\"app/ui/who_to_follow/with_list_resizing\");\n module.exports = defineComponent(matchedContactsList, withSelectAll, withListResizing);\n});\ndefine(\"app/ui/who_to_follow/unmatched_contacts_list\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/who_to_follow/with_list_resizing\",\"app/ui/who_to_follow/with_unmatched_contacts\",], function(module, require, exports) {\n function unmatchedContactsList() {\n this.defaultAttrs({\n selectedCounterSelector: \".js-selected-count\",\n listItemSelector: \".stream-item\",\n hideLinkSelector: \".js-hide\"\n }), this.updateSelection = function() {\n var a = this;\n this.select(\"checkboxSelector\").each(function() {\n $(this).closest(a.attr.listItemSelector).toggleClass(\"selected\", this.checked);\n });\n var b = this.select(\"checkedCheckboxSelector\").length;\n this.select(\"selectedCounterSelector\").text(b), this.select(\"actionButtonSelector\").attr(\"disabled\", ((b == 0)));\n }, this.redirectToSuggestions = function(a, b) {\n this.trigger(\"uiNavigate\", {\n href: ((\"/who_to_follow/suggestions?invited_count=\" + b.count))\n });\n }, this.hide = function() {\n this.$node.hide();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiListSelectionChanged\", this.updateSelection), this.JSBNG__on(\"uiInviteFinished\", this.redirectToSuggestions), this.JSBNG__on(\"click\", {\n hideLinkSelector: this.hide\n }), this.attr.showMessageOnSuccess = !1;\n });\n };\n;\n var defineComponent = require(\"core/component\"), withListResizing = require(\"app/ui/who_to_follow/with_list_resizing\"), withUnmatchedContacts = require(\"app/ui/who_to_follow/with_unmatched_contacts\");\n module.exports = defineComponent(unmatchedContactsList, withListResizing, withUnmatchedContacts);\n});\ndefine(\"app/ui/who_to_tweet\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/ddg\",\"app/ui/with_user_actions\",], function(module, require, exports) {\n function whoToTweet() {\n this.defaultAttrs({\n tweetToButtonSelector: \".js-tweet-to-btn\"\n }), this.tweetToUser = function(a, b) {\n var c = $(a.target).closest(\".user-actions\");\n this.mentionUser(c);\n }, this.trackEvent = function(a) {\n ((((a.type == \"uiTweetSent\")) && ddg.track(\"find_friends_on_empty_connect_635\", \"tweet_sent\")));\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(JSBNG__document, \"uiTweetSent\", this.trackEvent), this.JSBNG__on(\"click\", {\n tweetToButtonSelector: this.tweetToUser\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), ddg = require(\"app/data/ddg\"), withUserActions = require(\"app/ui/with_user_actions\");\n module.exports = defineComponent(whoToTweet, withUserActions);\n});\ndefine(\"app/ui/with_loading_indicator\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withLoadingIndicator() {\n this.defaultAttrs({\n spinnerContainer: \"body\",\n spinnerClass: \"pushing-state\"\n }), this.showSpinner = function(a, b) {\n this.select(\"spinnerContainer\").addClass(this.attr.spinnerClass);\n }, this.hideSpinner = function(a, b) {\n this.select(\"spinnerContainer\").removeClass(this.attr.spinnerClass);\n };\n };\n;\n module.exports = withLoadingIndicator;\n});\ndefine(\"app/ui/who_to_follow/find_friends\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/ddg\",\"app/ui/who_to_follow/import_loading_dialog\",\"app/ui/who_to_follow/import_services\",\"app/ui/who_to_follow/matched_contacts_list\",\"app/ui/infinite_scroll_watcher\",\"app/ui/who_to_follow/unmatched_contacts_list\",\"app/ui/who_to_tweet\",\"app/ui/who_to_follow/with_invite_preview\",\"app/ui/with_select_all\",\"app/ui/with_loading_indicator\",], function(module, require, exports) {\n function findFriends() {\n this.defaultAttrs({\n importLoadingDialogSelector: \"#import-loading-dialog\",\n launchContainerSelector: \".empty-connect\",\n findFriendsSelector: \".find-friends-container\",\n findFriendsButtonSelector: \".find-friends-btn\",\n scrollListSelector: \".scrolling-user-list\",\n scrollListContentSelector: \".stream\",\n unmatchedContactsSelector: \".content-main.invite-module\",\n launchServiceSelector: \".js-launch-service\",\n inviteLinkSelector: \".matches .skip-link\",\n skipInvitesLinkSelector: \".invite-module .skip-link\",\n checkboxSelector: \".contact-checkbox\",\n selectAllSelector: \".select-all-contacts\",\n whoToTweetModuleSelector: \"#who-to-tweet\"\n }), this.showInviteModule = function(a, b) {\n this.select(\"findFriendsSelector\").html(b.html), UnmatchedContactsList.attachTo(this.attr.unmatchedContactsSelector, {\n hideLinkSelector: this.attr.skipInvitesLinkSelector\n }), ddg.track(\"find_friends_on_empty_connect_635\", \"invite_module_view\");\n }, this.showWhoToTweetModule = function(a, b) {\n this.select(\"findFriendsSelector\").html(b.html), WhoToTweet.attachTo(this.attr.whoToTweetModuleSelector);\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(JSBNG__document, \"dataInviteModuleSuccess\", this.showInviteModule), this.JSBNG__on(JSBNG__document, \"dataWhoToTweetModuleSuccess\", this.showWhoToTweetModule), this.JSBNG__on(JSBNG__document, \"dataContactImportMatchesSuccess dataInviteModuleSuccess dataInviteModuleFailure dataWhoToTweetModuleSuccess dataWhoToTweetModuleFailure\", this.hideSpinner), this.JSBNG__on(JSBNG__document, \"uiWantsContactImportMatches uiWantsInviteModule uiWantsWhoToTweetModule\", this.showSpinner), this.JSBNG__on(\"click\", {\n inviteLinkSelector: function() {\n this.trigger(\"uiWantsInviteModule\"), ddg.track(\"find_friends_on_empty_connect_635\", \"skip_link_click\");\n },\n findFriendsButtonSelector: function() {\n ddg.track(\"find_friends_on_empty_connect_635\", \"find_friends_click\");\n }\n }), ImportLoadingDialog.attachTo(this.attr.importLoadingDialogSelector, a), ImportServices.attachTo(this.attr.launchContainerSelector, {\n launchServiceSelector: this.attr.launchServiceSelector,\n redirectOnSuccess: !1\n }), MatchedContactsList.attachTo(this.attr.findFriendsSelector, utils.merge(a, {\n findFriendsInline: !0\n })), InfiniteScrollWatcher.attachTo(this.attr.scrollListSelector, {\n contentSelector: this.attr.scrollListContentSelector\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), ddg = require(\"app/data/ddg\"), ImportLoadingDialog = require(\"app/ui/who_to_follow/import_loading_dialog\"), ImportServices = require(\"app/ui/who_to_follow/import_services\"), MatchedContactsList = require(\"app/ui/who_to_follow/matched_contacts_list\"), InfiniteScrollWatcher = require(\"app/ui/infinite_scroll_watcher\"), UnmatchedContactsList = require(\"app/ui/who_to_follow/unmatched_contacts_list\"), WhoToTweet = require(\"app/ui/who_to_tweet\"), withInvitePreview = require(\"app/ui/who_to_follow/with_invite_preview\"), withSelectAll = require(\"app/ui/with_select_all\"), withLoadingIndicator = require(\"app/ui/with_loading_indicator\");\n module.exports = defineComponent(findFriends, withInvitePreview, withSelectAll, withLoadingIndicator);\n});\ndefine(\"app/pages/connect/interactions\", [\"module\",\"require\",\"exports\",\"app/boot/connect\",\"app/boot/tweet_timeline\",\"app/ui/who_to_follow/find_friends\",], function(module, require, exports) {\n var connectBoot = require(\"app/boot/connect\"), tweetTimelineBoot = require(\"app/boot/tweet_timeline\"), FindFriends = require(\"app/ui/who_to_follow/find_friends\");\n module.exports = function(a) {\n connectBoot(a), tweetTimelineBoot(a, \"/i/connect/timeline\", \"activity\", \"stream\"), (($(\"body.find_friends_on_empty_connect_635\").length && FindFriends.attachTo(JSBNG__document, a)));\n };\n});\ndefine(\"app/pages/connect/mentions\", [\"module\",\"require\",\"exports\",\"app/boot/connect\",\"app/boot/tweet_timeline\",], function(module, require, exports) {\n var connectBoot = require(\"app/boot/connect\"), tweetTimelineBoot = require(\"app/boot/tweet_timeline\");\n module.exports = function(a) {\n connectBoot(a), tweetTimelineBoot(a, \"/mentions/timeline\", \"tweet\");\n };\n});\ndefine(\"app/pages/connect/network_activity\", [\"module\",\"require\",\"exports\",\"app/boot/connect\",\"app/boot/tweet_timeline\",], function(module, require, exports) {\n var connectBoot = require(\"app/boot/connect\"), tweetTimelineBoot = require(\"app/boot/tweet_timeline\");\n module.exports = function(a) {\n a.containingItemSelector = \".supplement\", a.marginBreaking = !1, connectBoot(a), tweetTimelineBoot(a, \"/activity/timeline\", \"activity\", \"stream\");\n };\n});\ndefine(\"app/ui/inline_edit\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function inlineEdit() {\n this.defaultAttrs({\n editableFieldSelector: \".editable-field\",\n profileFieldSelector: \".profile-field\",\n placeholderSelector: \".placeholder\",\n padding: 20\n }), this.syncDimensions = function() {\n var a = this.getDimensions(this.currentText());\n if (this.isTextArea) {\n var b = Math.ceil(((a.height / this.lineHeight)));\n this.$editableField.attr(\"rows\", b);\n }\n else this.$editableField.width(((a.width + this.padding)));\n ;\n ;\n }, this.saveOldValues = function() {\n this.oldTextValue = this.editableFieldValue(), this.oldHtmlValue = this.$profileField.html();\n }, this.resetProfileField = function() {\n this.$profileField.html(this.oldHtmlValue);\n }, this.resetToOldValues = function() {\n this.$editableField.val(this.oldTextValue).trigger(\"uiInputChanged\"), this.resetProfileField();\n }, this.syncValue = function() {\n var a = this.editableFieldValue();\n ((((this.oldTextValue !== a)) && (this.setProfileField(), this.trigger(\"uiInlineEditSave\", {\n newValue: a,\n field: this.$editableField.attr(\"JSBNG__name\")\n }))));\n }, this.setProfileField = function() {\n var a = this.editableFieldValue();\n ((((this.truncateLength && ((a.length > this.truncateLength)))) && (a = ((a.substr(0, this.truncateLength) + \"\\u2026\"))))), this.$profileField.text(a);\n }, this.currentText = function() {\n return ((this.editableFieldValue() || this.getPlaceholderText()));\n }, this.editableFieldValue = function() {\n return this.$editableField.val();\n }, this.addPadding = function() {\n this.padding = this.attr.padding;\n }, this.removePadding = function() {\n this.padding = 0;\n }, this.getDimensions = function(a) {\n return ((this.truncateLength && (a = a.substr(0, this.truncateLength)))), ((((this.prevText !== a)) && (this.measureDimensions(a), this.prevText = a))), {\n width: this.width,\n height: this.height\n };\n }, this.measureDimensions = function(a) {\n var b = this.$profileField.clone();\n b.text(a), b.css(\"white-space\", \"pre-wrap\"), this.$profileField.replaceWith(b), this.height = b.height(), this.width = b.width(), b.replaceWith(this.$profileField);\n }, this.preventNewlineAndLeadingSpace = function(a) {\n if (((((a.keyCode === 13)) || ((((a.keyCode === 32)) && !this.editableFieldValue()))))) {\n a.preventDefault(), a.stopImmediatePropagation();\n }\n ;\n ;\n }, this.getPlaceholderText = function() {\n return this.$placeholder.text();\n }, this.after(\"initialize\", function() {\n this.$editableField = this.select(\"editableFieldSelector\"), this.$profileField = this.select(\"profileFieldSelector\"), this.$placeholder = this.select(\"placeholderSelector\"), this.lineHeight = parseInt(this.$profileField.css(\"line-height\"), 10), this.isTextArea = this.$editableField.is(\"textarea\"), this.truncateLength = parseInt(this.$editableField.attr(\"data-truncate-length\"), 10), this.padding = 0, this.syncDimensions(), this.JSBNG__on(JSBNG__document, \"uiNeedsTextPreview\", this.setProfileField), this.JSBNG__on(JSBNG__document, \"uiEditProfileSaveFields\", this.syncValue), this.JSBNG__on(JSBNG__document, \"uiEditProfileStart\", this.saveOldValues), this.JSBNG__on(JSBNG__document, \"uiEditProfileCancel\", this.resetToOldValues), this.JSBNG__on(JSBNG__document, \"uiEditProfileStart\", this.syncDimensions), this.JSBNG__on(JSBNG__document, \"uiShowProfileEditError\", this.resetProfileField), this.JSBNG__on(this.$editableField, \"keydown\", this.preventNewlineAndLeadingSpace), ((this.isTextArea || (this.JSBNG__on(this.$editableField, \"JSBNG__focus\", this.addPadding), this.JSBNG__on(this.$editableField, \"JSBNG__blur\", this.removePadding)))), this.JSBNG__on(this.$editableField, \"keyup focus blur update paste\", this.syncDimensions);\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(inlineEdit);\n});\ndefine(\"app/data/async_profile\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function asyncProfileData() {\n this.defaultAttrs({\n noShowError: !0\n }), this.saveField = function(a, b) {\n this.fields[b.field] = b.newValue;\n }, this.clearFields = function() {\n this.fields = {\n };\n }, this.saveFields = function(a, b) {\n function c(a) {\n if (((a.error === !0))) {\n return d.call(this, a);\n }\n ;\n ;\n this.trigger(\"dataInlineEditSaveSuccess\", a), this.clearFields();\n };\n ;\n function d(a) {\n this.trigger(\"dataInlineEditSaveError\", a), this.clearFields();\n };\n ;\n a.preventDefault(), ((((Object.keys(this.fields).length > 0)) ? (this.trigger(\"dataInlineEditSaveStarted\", {\n }), this.fields.page_context = this.attr.pageName, this.fields.section_context = this.attr.sectionName, this.post({\n url: \"/i/profiles/update\",\n data: this.fields,\n eventData: b,\n success: c.bind(this),\n error: d.bind(this)\n })) : this.trigger(\"dataInlineEditSaveSuccess\")));\n }, this.after(\"initialize\", function() {\n this.fields = {\n }, this.JSBNG__on(\"uiInlineEditSave\", this.saveField), this.JSBNG__on(\"uiEditProfileSave\", this.saveFields);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(asyncProfileData, withData);\n});\ndeferred(\"$lib/jquery_ui.profile.js\", function() {\n (function($, a) {\n function b(a, b) {\n var d = a.nodeName.toLowerCase();\n if (((\"area\" === d))) {\n var e = a.parentNode, f = e.JSBNG__name, g;\n return ((((((!a.href || !f)) || ((e.nodeName.toLowerCase() !== \"map\")))) ? !1 : (g = $(((((\"img[usemap=#\" + f)) + \"]\")))[0], ((!!g && c(g))))));\n }\n ;\n ;\n return ((((/input|select|textarea|button|object/.test(d) ? !a.disabled : ((((\"a\" == d)) ? ((a.href || b)) : b)))) && c(a)));\n };\n ;\n function c(a) {\n return !$(a).parents().andSelf().filter(function() {\n return (((($.curCSS(this, \"visibility\") === \"hidden\")) || $.expr.filters.hidden(this)));\n }).length;\n };\n ;\n $.ui = (($.ui || {\n }));\n if ($.ui.version) {\n return;\n }\n ;\n ;\n $.extend($.ui, {\n version: \"1.8.22\",\n keyCode: {\n ALT: 18,\n BACKSPACE: 8,\n CAPS_LOCK: 20,\n COMMA: 188,\n COMMAND: 91,\n COMMAND_LEFT: 91,\n COMMAND_RIGHT: 93,\n CONTROL: 17,\n DELETE: 46,\n DOWN: 40,\n END: 35,\n ENTER: 13,\n ESCAPE: 27,\n HOME: 36,\n INSERT: 45,\n LEFT: 37,\n MENU: 93,\n NUMPAD_ADD: 107,\n NUMPAD_DECIMAL: 110,\n NUMPAD_DIVIDE: 111,\n NUMPAD_ENTER: 108,\n NUMPAD_MULTIPLY: 106,\n NUMPAD_SUBTRACT: 109,\n PAGE_DOWN: 34,\n PAGE_UP: 33,\n PERIOD: 190,\n RIGHT: 39,\n SHIFT: 16,\n SPACE: 32,\n TAB: 9,\n UP: 38,\n WINDOWS: 91\n }\n }), $.fn.extend({\n propAttr: (($.fn.prop || $.fn.attr)),\n _focus: $.fn.JSBNG__focus,\n JSBNG__focus: function(a, b) {\n return ((((typeof a == \"number\")) ? this.each(function() {\n var c = this;\n JSBNG__setTimeout(function() {\n $(c).JSBNG__focus(), ((b && b.call(c)));\n }, a);\n }) : this._focus.apply(this, arguments)));\n },\n scrollParent: function() {\n var a;\n return (((((($.browser.msie && /(static|relative)/.test(this.css(\"position\")))) || /absolute/.test(this.css(\"position\")))) ? a = this.parents().filter(function() {\n return ((/(relative|absolute|fixed)/.test($.curCSS(this, \"position\", 1)) && /(auto|scroll)/.test((((($.curCSS(this, \"overflow\", 1) + $.curCSS(this, \"overflow-y\", 1))) + $.curCSS(this, \"overflow-x\", 1))))));\n }).eq(0) : a = this.parents().filter(function() {\n return /(auto|scroll)/.test((((($.curCSS(this, \"overflow\", 1) + $.curCSS(this, \"overflow-y\", 1))) + $.curCSS(this, \"overflow-x\", 1))));\n }).eq(0))), ((((/fixed/.test(this.css(\"position\")) || !a.length)) ? $(JSBNG__document) : a));\n },\n zIndex: function(b) {\n if (((b !== a))) {\n return this.css(\"zIndex\", b);\n }\n ;\n ;\n if (this.length) {\n var c = $(this[0]), d, e;\n while (((c.length && ((c[0] !== JSBNG__document))))) {\n d = c.css(\"position\");\n if (((((((d === \"absolute\")) || ((d === \"relative\")))) || ((d === \"fixed\"))))) {\n e = parseInt(c.css(\"zIndex\"), 10);\n if (((!isNaN(e) && ((e !== 0))))) {\n return e;\n }\n ;\n ;\n }\n ;\n ;\n c = c.parent();\n };\n ;\n }\n ;\n ;\n return 0;\n },\n disableSelection: function() {\n return this.bind((((($.support.selectstart ? \"selectstart\" : \"mousedown\")) + \".ui-disableSelection\")), function(a) {\n a.preventDefault();\n });\n },\n enableSelection: function() {\n return this.unbind(\".ui-disableSelection\");\n }\n }), (($(\"\\u003Ca\\u003E\").JSBNG__outerWidth(1).jquery || $.each([\"Width\",\"Height\",], function(b, c) {\n function g(a, b, c, e) {\n return $.each(d, function() {\n b -= ((parseFloat($.curCSS(a, ((\"padding\" + this)), !0)) || 0)), ((c && (b -= ((parseFloat($.curCSS(a, ((((\"border\" + this)) + \"Width\")), !0)) || 0))))), ((e && (b -= ((parseFloat($.curCSS(a, ((\"margin\" + this)), !0)) || 0)))));\n }), b;\n };\n ;\n var d = ((((c === \"Width\")) ? [\"Left\",\"Right\",] : [\"Top\",\"Bottom\",])), e = c.toLowerCase(), f = {\n JSBNG__innerWidth: $.fn.JSBNG__innerWidth,\n JSBNG__innerHeight: $.fn.JSBNG__innerHeight,\n JSBNG__outerWidth: $.fn.JSBNG__outerWidth,\n JSBNG__outerHeight: $.fn.JSBNG__outerHeight\n };\n $.fn[((\"JSBNG__inner\" + c))] = function(b) {\n return ((((b === a)) ? f[((\"JSBNG__inner\" + c))].call(this) : this.each(function() {\n $(this).css(e, ((g(this, b) + \"px\")));\n })));\n }, $.fn[((\"JSBNG__outer\" + c))] = function(a, b) {\n return ((((typeof a != \"number\")) ? f[((\"JSBNG__outer\" + c))].call(this, a) : this.each(function() {\n $(this).css(e, ((g(this, a, !0, b) + \"px\")));\n })));\n };\n }))), $.extend($.expr[\":\"], {\n data: (($.expr.createPseudo ? $.expr.createPseudo(function(a) {\n return function(b) {\n return !!$.data(b, a);\n };\n }) : function(a, b, c) {\n return !!$.data(a, c[3]);\n })),\n focusable: function(a) {\n return b(a, !isNaN($.attr(a, \"tabindex\")));\n },\n tabbable: function(a) {\n var c = $.attr(a, \"tabindex\"), d = isNaN(c);\n return ((((d || ((c >= 0)))) && b(a, !d)));\n }\n }), $(function() {\n var a = JSBNG__document.body, b = a.appendChild(b = JSBNG__document.createElement(\"div\"));\n b.offsetHeight, $.extend(b.style, {\n minHeight: \"100px\",\n height: \"auto\",\n padding: 0,\n borderWidth: 0\n }), $.support.minHeight = ((b.offsetHeight === 100)), $.support.selectstart = ((\"onselectstart\" in b)), a.removeChild(b).style.display = \"none\";\n }), (($.curCSS || ($.curCSS = $.css))), $.extend($.ui, {\n plugin: {\n add: function(a, b, c) {\n var d = $.ui[a].prototype;\n {\n var fin55keys = ((window.top.JSBNG_Replay.forInKeys)((c))), fin55i = (0);\n var e;\n for (; (fin55i < fin55keys.length); (fin55i++)) {\n ((e) = (fin55keys[fin55i]));\n {\n d.plugins[e] = ((d.plugins[e] || [])), d.plugins[e].push([b,c[e],]);\n ;\n };\n };\n };\n ;\n },\n call: function(a, b, c) {\n var d = a.plugins[b];\n if (((!d || !a.element[0].parentNode))) {\n return;\n }\n ;\n ;\n for (var e = 0; ((e < d.length)); e++) {\n ((a.options[d[e][0]] && d[e][1].apply(a.element, c)));\n ;\n };\n ;\n }\n },\n contains: function(a, b) {\n return ((JSBNG__document.compareDocumentPosition ? ((a.compareDocumentPosition(b) & 16)) : ((((a !== b)) && a.contains(b)))));\n },\n hasScroll: function(a, b) {\n if ((($(a).css(\"overflow\") === \"hidden\"))) {\n return !1;\n }\n ;\n ;\n var c = ((((b && ((b === \"left\")))) ? \"scrollLeft\" : \"scrollTop\")), d = !1;\n return ((((a[c] > 0)) ? !0 : (a[c] = 1, d = ((a[c] > 0)), a[c] = 0, d)));\n },\n isOverAxis: function(a, b, c) {\n return ((((a > b)) && ((a < ((b + c))))));\n },\n isOver: function(a, b, c, d, e, f) {\n return (($.ui.isOverAxis(a, c, e) && $.ui.isOverAxis(b, d, f)));\n }\n });\n })(jQuery), function($, a) {\n if ($.cleanData) {\n var b = $.cleanData;\n $.cleanData = function(a) {\n for (var c = 0, d; (((d = a[c]) != null)); c++) {\n try {\n $(d).triggerHandler(\"remove\");\n } catch (e) {\n \n };\n ;\n };\n ;\n b(a);\n };\n }\n else {\n var c = $.fn.remove;\n $.fn.remove = function(a, b) {\n return this.each(function() {\n return ((b || ((((!a || $.filter(a, [this,]).length)) && $(\"*\", this).add([this,]).each(function() {\n try {\n $(this).triggerHandler(\"remove\");\n } catch (a) {\n \n };\n ;\n }))))), c.call($(this), a, b);\n });\n };\n }\n ;\n ;\n $.widget = function(a, b, c) {\n var d = a.split(\".\")[0], e;\n a = a.split(\".\")[1], e = ((((d + \"-\")) + a)), ((c || (c = b, b = $.Widget))), $.expr[\":\"][e] = function(b) {\n return !!$.data(b, a);\n }, $[d] = (($[d] || {\n })), $[d][a] = function(a, b) {\n ((arguments.length && this._createWidget(a, b)));\n };\n var f = new b;\n f.options = $.extend(!0, {\n }, f.options), $[d][a].prototype = $.extend(!0, f, {\n namespace: d,\n widgetName: a,\n widgetEventPrefix: (($[d][a].prototype.widgetEventPrefix || a)),\n widgetBaseClass: e\n }, c), $.widget.bridge(a, $[d][a]);\n }, $.widget.bridge = function(b, c) {\n $.fn[b] = function(d) {\n var e = ((typeof d == \"string\")), f = Array.prototype.slice.call(arguments, 1), g = this;\n return d = ((((!e && f.length)) ? $.extend.apply(null, [!0,d,].concat(f)) : d)), ((((e && ((d.charAt(0) === \"_\")))) ? g : (((e ? this.each(function() {\n var c = $.data(this, b), e = ((((c && $.isFunction(c[d]))) ? c[d].apply(c, f) : c));\n if (((((e !== c)) && ((e !== a))))) {\n return g = e, !1;\n }\n ;\n ;\n }) : this.each(function() {\n var a = $.data(this, b);\n ((a ? a.option(((d || {\n })))._init() : $.data(this, b, new c(d, this))));\n }))), g)));\n };\n }, $.Widget = function(a, b) {\n ((arguments.length && this._createWidget(a, b)));\n }, $.Widget.prototype = {\n widgetName: \"widget\",\n widgetEventPrefix: \"\",\n options: {\n disabled: !1\n },\n _createWidget: function(a, b) {\n $.data(b, this.widgetName, this), this.element = $(b), this.options = $.extend(!0, {\n }, this.options, this._getCreateOptions(), a);\n var c = this;\n this.element.bind(((\"remove.\" + this.widgetName)), function() {\n c.destroy();\n }), this._create(), this._trigger(\"create\"), this._init();\n },\n _getCreateOptions: function() {\n return (($.metadata && $.metadata.get(this.element[0])[this.widgetName]));\n },\n _create: function() {\n \n },\n _init: function() {\n \n },\n destroy: function() {\n this.element.unbind(((\".\" + this.widgetName))).removeData(this.widgetName), this.widget().unbind(((\".\" + this.widgetName))).removeAttr(\"aria-disabled\").removeClass(((((this.widgetBaseClass + \"-disabled \")) + \"ui-state-disabled\")));\n },\n widget: function() {\n return this.element;\n },\n option: function(b, c) {\n var d = b;\n if (((arguments.length === 0))) {\n return $.extend({\n }, this.options);\n }\n ;\n ;\n if (((typeof b == \"string\"))) {\n if (((c === a))) {\n return this.options[b];\n }\n ;\n ;\n d = {\n }, d[b] = c;\n }\n ;\n ;\n return this._setOptions(d), this;\n },\n _setOptions: function(a) {\n var b = this;\n return $.each(a, function(a, c) {\n b._setOption(a, c);\n }), this;\n },\n _setOption: function(a, b) {\n return this.options[a] = b, ((((a === \"disabled\")) && this.widget()[((b ? \"addClass\" : \"removeClass\"))](((((((this.widgetBaseClass + \"-disabled\")) + \" \")) + \"ui-state-disabled\"))).attr(\"aria-disabled\", b))), this;\n },\n enable: function() {\n return this._setOption(\"disabled\", !1);\n },\n disable: function() {\n return this._setOption(\"disabled\", !0);\n },\n _trigger: function(a, b, c) {\n var d, e, f = this.options[a];\n c = ((c || {\n })), b = $.JSBNG__Event(b), b.type = ((((a === this.widgetEventPrefix)) ? a : ((this.widgetEventPrefix + a)))).toLowerCase(), b.target = this.element[0], e = b.originalEvent;\n if (e) {\n {\n var fin56keys = ((window.top.JSBNG_Replay.forInKeys)((e))), fin56i = (0);\n (0);\n for (; (fin56i < fin56keys.length); (fin56i++)) {\n ((d) = (fin56keys[fin56i]));\n {\n ((((d in b)) || (b[d] = e[d])));\n ;\n };\n };\n };\n }\n ;\n ;\n return this.element.trigger(b, c), !(((($.isFunction(f) && ((f.call(this.element[0], b, c) === !1)))) || b.isDefaultPrevented()));\n }\n };\n }(jQuery), function($, a) {\n var b = !1;\n $(JSBNG__document).mouseup(function(a) {\n b = !1;\n }), $.widget(\"ui.mouse\", {\n options: {\n cancel: \":input,option\",\n distance: 1,\n delay: 0\n },\n _mouseInit: function() {\n var a = this;\n this.element.bind(((\"mousedown.\" + this.widgetName)), function(b) {\n return a._mouseDown(b);\n }).bind(((\"click.\" + this.widgetName)), function(b) {\n if (((!0 === $.data(b.target, ((a.widgetName + \".preventClickEvent\")))))) {\n return $.removeData(b.target, ((a.widgetName + \".preventClickEvent\"))), b.stopImmediatePropagation(), !1;\n }\n ;\n ;\n }), this.started = !1;\n },\n _mouseDestroy: function() {\n this.element.unbind(((\".\" + this.widgetName))), $(JSBNG__document).unbind(((\"mousemove.\" + this.widgetName)), this._mouseMoveDelegate).unbind(((\"mouseup.\" + this.widgetName)), this._mouseUpDelegate);\n },\n _mouseDown: function(a) {\n if (b) {\n return;\n }\n ;\n ;\n ((this._mouseStarted && this._mouseUp(a))), this._mouseDownEvent = a;\n var c = this, d = ((a.which == 1)), e = ((((((typeof this.options.cancel == \"string\")) && a.target.nodeName)) ? $(a.target).closest(this.options.cancel).length : !1));\n if (((((!d || e)) || !this._mouseCapture(a)))) {\n return !0;\n }\n ;\n ;\n this.mouseDelayMet = !this.options.delay, ((this.mouseDelayMet || (this._mouseDelayTimer = JSBNG__setTimeout(function() {\n c.mouseDelayMet = !0;\n }, this.options.delay))));\n if (((this._mouseDistanceMet(a) && this._mouseDelayMet(a)))) {\n this._mouseStarted = ((this._mouseStart(a) !== !1));\n if (!this._mouseStarted) {\n return a.preventDefault(), !0;\n }\n ;\n ;\n }\n ;\n ;\n return ((((!0 === $.data(a.target, ((this.widgetName + \".preventClickEvent\"))))) && $.removeData(a.target, ((this.widgetName + \".preventClickEvent\"))))), this._mouseMoveDelegate = function(a) {\n return c._mouseMove(a);\n }, this._mouseUpDelegate = function(a) {\n return c._mouseUp(a);\n }, $(JSBNG__document).bind(((\"mousemove.\" + this.widgetName)), this._mouseMoveDelegate).bind(((\"mouseup.\" + this.widgetName)), this._mouseUpDelegate), a.preventDefault(), b = !0, !0;\n },\n _mouseMove: function(a) {\n return ((((((!$.browser.msie || ((JSBNG__document.documentMode >= 9)))) || !!a.button)) ? ((this._mouseStarted ? (this._mouseDrag(a), a.preventDefault()) : (((((this._mouseDistanceMet(a) && this._mouseDelayMet(a))) && (this._mouseStarted = ((this._mouseStart(this._mouseDownEvent, a) !== !1)), ((this._mouseStarted ? this._mouseDrag(a) : this._mouseUp(a)))))), !this._mouseStarted))) : this._mouseUp(a)));\n },\n _mouseUp: function(a) {\n return $(JSBNG__document).unbind(((\"mousemove.\" + this.widgetName)), this._mouseMoveDelegate).unbind(((\"mouseup.\" + this.widgetName)), this._mouseUpDelegate), ((this._mouseStarted && (this._mouseStarted = !1, ((((a.target == this._mouseDownEvent.target)) && $.data(a.target, ((this.widgetName + \".preventClickEvent\")), !0))), this._mouseStop(a)))), !1;\n },\n _mouseDistanceMet: function(a) {\n return ((Math.max(Math.abs(((this._mouseDownEvent.pageX - a.pageX))), Math.abs(((this._mouseDownEvent.pageY - a.pageY)))) >= this.options.distance));\n },\n _mouseDelayMet: function(a) {\n return this.mouseDelayMet;\n },\n _mouseStart: function(a) {\n \n },\n _mouseDrag: function(a) {\n \n },\n _mouseStop: function(a) {\n \n },\n _mouseCapture: function(a) {\n return !0;\n }\n });\n }(jQuery), function($, a) {\n $.widget(\"ui.draggable\", $.ui.mouse, {\n widgetEventPrefix: \"drag\",\n options: {\n addClasses: !0,\n appendTo: \"parent\",\n axis: !1,\n connectToSortable: !1,\n containment: !1,\n cursor: \"auto\",\n cursorAt: !1,\n grid: !1,\n handle: !1,\n helper: \"original\",\n iframeFix: !1,\n opacity: !1,\n refreshPositions: !1,\n revert: !1,\n revertDuration: 500,\n scope: \"default\",\n JSBNG__scroll: !0,\n scrollSensitivity: 20,\n scrollSpeed: 20,\n snap: !1,\n snapMode: \"both\",\n snapTolerance: 20,\n stack: !1,\n zIndex: !1\n },\n _create: function() {\n ((((((this.options.helper == \"original\")) && !/^(?:r|a|f)/.test(this.element.css(\"position\")))) && (this.element[0].style.position = \"relative\"))), ((this.options.addClasses && this.element.addClass(\"ui-draggable\"))), ((this.options.disabled && this.element.addClass(\"ui-draggable-disabled\"))), this._mouseInit();\n },\n destroy: function() {\n if (!this.element.data(\"draggable\")) {\n return;\n }\n ;\n ;\n return this.element.removeData(\"draggable\").unbind(\".draggable\").removeClass(\"ui-draggable ui-draggable-dragging ui-draggable-disabled\"), this._mouseDestroy(), this;\n },\n _mouseCapture: function(a) {\n var b = this.options;\n return ((((((this.helper || b.disabled)) || $(a.target).is(\".ui-resizable-handle\"))) ? !1 : (this.handle = this._getHandle(a), ((this.handle ? (((b.iframeFix && $(((((b.iframeFix === !0)) ? \"div\" : b.iframeFix))).each(function() {\n $(\"\\u003Cdiv class=\\\"ui-draggable-iframeFix\\\" style=\\\"background: #fff;\\\"\\u003E\\u003C/div\\u003E\").css({\n width: ((this.offsetWidth + \"px\")),\n height: ((this.offsetHeight + \"px\")),\n position: \"absolute\",\n opacity: \"0.001\",\n zIndex: 1000\n }).css($(this).offset()).appendTo(\"body\");\n }))), !0) : !1)))));\n },\n _mouseStart: function(a) {\n var b = this.options;\n return this.helper = this._createHelper(a), this.helper.addClass(\"ui-draggable-dragging\"), this._cacheHelperProportions(), (($.ui.ddmanager && ($.ui.ddmanager.current = this))), this._cacheMargins(), this.cssPosition = this.helper.css(\"position\"), this.scrollParent = this.helper.scrollParent(), this.offset = this.positionAbs = this.element.offset(), this.offset = {\n JSBNG__top: ((this.offset.JSBNG__top - this.margins.JSBNG__top)),\n left: ((this.offset.left - this.margins.left))\n }, $.extend(this.offset, {\n click: {\n left: ((a.pageX - this.offset.left)),\n JSBNG__top: ((a.pageY - this.offset.JSBNG__top))\n },\n parent: this._getParentOffset(),\n relative: this._getRelativeOffset()\n }), this.originalPosition = this.position = this._generatePosition(a), this.originalPageX = a.pageX, this.originalPageY = a.pageY, ((b.cursorAt && this._adjustOffsetFromHelper(b.cursorAt))), ((b.containment && this._setContainment())), ((((this._trigger(\"start\", a) === !1)) ? (this._clear(), !1) : (this._cacheHelperProportions(), (((($.ui.ddmanager && !b.dropBehaviour)) && $.ui.ddmanager.prepareOffsets(this, a))), this._mouseDrag(a, !0), (($.ui.ddmanager && $.ui.ddmanager.dragStart(this, a))), !0)));\n },\n _mouseDrag: function(a, b) {\n this.position = this._generatePosition(a), this.positionAbs = this._convertPositionTo(\"absolute\");\n if (!b) {\n var c = this._uiHash();\n if (((this._trigger(\"drag\", a, c) === !1))) {\n return this._mouseUp({\n }), !1;\n }\n ;\n ;\n this.position = c.position;\n }\n ;\n ;\n if (((!this.options.axis || ((this.options.axis != \"y\"))))) {\n this.helper[0].style.left = ((this.position.left + \"px\"));\n }\n ;\n ;\n if (((!this.options.axis || ((this.options.axis != \"x\"))))) {\n this.helper[0].style.JSBNG__top = ((this.position.JSBNG__top + \"px\"));\n }\n ;\n ;\n return (($.ui.ddmanager && $.ui.ddmanager.drag(this, a))), !1;\n },\n _mouseStop: function(a) {\n var b = !1;\n (((($.ui.ddmanager && !this.options.dropBehaviour)) && (b = $.ui.ddmanager.drop(this, a)))), ((this.dropped && (b = this.dropped, this.dropped = !1)));\n var c = this.element[0], d = !1;\n while (((c && (c = c.parentNode)))) {\n ((((c == JSBNG__document)) && (d = !0)));\n ;\n };\n ;\n if (((!d && ((this.options.helper === \"original\"))))) {\n return !1;\n }\n ;\n ;\n if (((((((((((this.options.revert == \"invalid\")) && !b)) || ((((this.options.revert == \"valid\")) && b)))) || ((this.options.revert === !0)))) || (($.isFunction(this.options.revert) && this.options.revert.call(this.element, b)))))) {\n var e = this;\n $(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function() {\n ((((e._trigger(\"JSBNG__stop\", a) !== !1)) && e._clear()));\n });\n }\n else ((((this._trigger(\"JSBNG__stop\", a) !== !1)) && this._clear()));\n ;\n ;\n return !1;\n },\n _mouseUp: function(a) {\n return ((((this.options.iframeFix === !0)) && $(\"div.ui-draggable-iframeFix\").each(function() {\n this.parentNode.removeChild(this);\n }))), (($.ui.ddmanager && $.ui.ddmanager.dragStop(this, a))), $.ui.mouse.prototype._mouseUp.call(this, a);\n },\n cancel: function() {\n return ((this.helper.is(\".ui-draggable-dragging\") ? this._mouseUp({\n }) : this._clear())), this;\n },\n _getHandle: function(a) {\n var b = ((((!this.options.handle || !$(this.options.handle, this.element).length)) ? !0 : !1));\n return $(this.options.handle, this.element).JSBNG__find(\"*\").andSelf().each(function() {\n ((((this == a.target)) && (b = !0)));\n }), b;\n },\n _createHelper: function(a) {\n var b = this.options, c = (($.isFunction(b.helper) ? $(b.helper.apply(this.element[0], [a,])) : ((((b.helper == \"clone\")) ? this.element.clone().removeAttr(\"id\") : this.element))));\n return ((c.parents(\"body\").length || c.appendTo(((((b.appendTo == \"parent\")) ? this.element[0].parentNode : b.appendTo))))), ((((((c[0] != this.element[0])) && !/(fixed|absolute)/.test(c.css(\"position\")))) && c.css(\"position\", \"absolute\"))), c;\n },\n _adjustOffsetFromHelper: function(a) {\n ((((typeof a == \"string\")) && (a = a.split(\" \")))), (($.isArray(a) && (a = {\n left: +a[0],\n JSBNG__top: ((+a[1] || 0))\n }))), ((((\"left\" in a)) && (this.offset.click.left = ((a.left + this.margins.left))))), ((((\"right\" in a)) && (this.offset.click.left = ((((this.helperProportions.width - a.right)) + this.margins.left))))), ((((\"JSBNG__top\" in a)) && (this.offset.click.JSBNG__top = ((a.JSBNG__top + this.margins.JSBNG__top))))), ((((\"bottom\" in a)) && (this.offset.click.JSBNG__top = ((((this.helperProportions.height - a.bottom)) + this.margins.JSBNG__top)))));\n },\n _getParentOffset: function() {\n this.offsetParent = this.helper.offsetParent();\n var a = this.offsetParent.offset();\n ((((((((this.cssPosition == \"absolute\")) && ((this.scrollParent[0] != JSBNG__document)))) && $.ui.contains(this.scrollParent[0], this.offsetParent[0]))) && (a.left += this.scrollParent.scrollLeft(), a.JSBNG__top += this.scrollParent.scrollTop())));\n if (((((this.offsetParent[0] == JSBNG__document.body)) || ((((this.offsetParent[0].tagName && ((this.offsetParent[0].tagName.toLowerCase() == \"html\")))) && $.browser.msie))))) {\n a = {\n JSBNG__top: 0,\n left: 0\n };\n }\n ;\n ;\n return {\n JSBNG__top: ((a.JSBNG__top + ((parseInt(this.offsetParent.css(\"borderTopWidth\"), 10) || 0)))),\n left: ((a.left + ((parseInt(this.offsetParent.css(\"borderLeftWidth\"), 10) || 0))))\n };\n },\n _getRelativeOffset: function() {\n if (((this.cssPosition == \"relative\"))) {\n var a = this.element.position();\n return {\n JSBNG__top: ((((a.JSBNG__top - ((parseInt(this.helper.css(\"JSBNG__top\"), 10) || 0)))) + this.scrollParent.scrollTop())),\n left: ((((a.left - ((parseInt(this.helper.css(\"left\"), 10) || 0)))) + this.scrollParent.scrollLeft()))\n };\n }\n ;\n ;\n return {\n JSBNG__top: 0,\n left: 0\n };\n },\n _cacheMargins: function() {\n this.margins = {\n left: ((parseInt(this.element.css(\"marginLeft\"), 10) || 0)),\n JSBNG__top: ((parseInt(this.element.css(\"marginTop\"), 10) || 0)),\n right: ((parseInt(this.element.css(\"marginRight\"), 10) || 0)),\n bottom: ((parseInt(this.element.css(\"marginBottom\"), 10) || 0))\n };\n },\n _cacheHelperProportions: function() {\n this.helperProportions = {\n width: this.helper.JSBNG__outerWidth(),\n height: this.helper.JSBNG__outerHeight()\n };\n },\n _setContainment: function() {\n var a = this.options;\n ((((a.containment == \"parent\")) && (a.containment = this.helper[0].parentNode)));\n if (((((a.containment == \"JSBNG__document\")) || ((a.containment == \"window\"))))) {\n this.containment = [((((a.containment == \"JSBNG__document\")) ? 0 : (((($(window).scrollLeft() - this.offset.relative.left)) - this.offset.parent.left)))),((((a.containment == \"JSBNG__document\")) ? 0 : (((($(window).scrollTop() - this.offset.relative.JSBNG__top)) - this.offset.parent.JSBNG__top)))),((((((((((a.containment == \"JSBNG__document\")) ? 0 : $(window).scrollLeft())) + $(((((a.containment == \"JSBNG__document\")) ? JSBNG__document : window))).width())) - this.helperProportions.width)) - this.margins.left)),((((((((((a.containment == \"JSBNG__document\")) ? 0 : $(window).scrollTop())) + (($(((((a.containment == \"JSBNG__document\")) ? JSBNG__document : window))).height() || JSBNG__document.body.parentNode.scrollHeight)))) - this.helperProportions.height)) - this.margins.JSBNG__top)),];\n }\n ;\n ;\n if (((!/^(document|window|parent)$/.test(a.containment) && ((a.containment.constructor != Array))))) {\n var b = $(a.containment), c = b[0];\n if (!c) {\n return;\n }\n ;\n ;\n var d = b.offset(), e = (($(c).css(\"overflow\") != \"hidden\"));\n this.containment = [((((parseInt($(c).css(\"borderLeftWidth\"), 10) || 0)) + ((parseInt($(c).css(\"paddingLeft\"), 10) || 0)))),((((parseInt($(c).css(\"borderTopWidth\"), 10) || 0)) + ((parseInt($(c).css(\"paddingTop\"), 10) || 0)))),((((((((((((e ? Math.max(c.scrollWidth, c.offsetWidth) : c.offsetWidth)) - ((parseInt($(c).css(\"borderLeftWidth\"), 10) || 0)))) - ((parseInt($(c).css(\"paddingRight\"), 10) || 0)))) - this.helperProportions.width)) - this.margins.left)) - this.margins.right)),((((((((((((e ? Math.max(c.scrollHeight, c.offsetHeight) : c.offsetHeight)) - ((parseInt($(c).css(\"borderTopWidth\"), 10) || 0)))) - ((parseInt($(c).css(\"paddingBottom\"), 10) || 0)))) - this.helperProportions.height)) - this.margins.JSBNG__top)) - this.margins.bottom)),], this.relative_container = b;\n }\n else ((((a.containment.constructor == Array)) && (this.containment = a.containment)));\n ;\n ;\n },\n _convertPositionTo: function(a, b) {\n ((b || (b = this.position)));\n var c = ((((a == \"absolute\")) ? 1 : -1)), d = this.options, e = ((((((this.cssPosition != \"absolute\")) || ((((this.scrollParent[0] != JSBNG__document)) && !!$.ui.contains(this.scrollParent[0], this.offsetParent[0]))))) ? this.scrollParent : this.offsetParent)), f = /(html|body)/i.test(e[0].tagName);\n return {\n JSBNG__top: ((((((b.JSBNG__top + ((this.offset.relative.JSBNG__top * c)))) + ((this.offset.parent.JSBNG__top * c)))) - (((((($.browser.safari && (($.browser.version < 526)))) && ((this.cssPosition == \"fixed\")))) ? 0 : ((((((this.cssPosition == \"fixed\")) ? -this.scrollParent.scrollTop() : ((f ? 0 : e.scrollTop())))) * c)))))),\n left: ((((((b.left + ((this.offset.relative.left * c)))) + ((this.offset.parent.left * c)))) - (((((($.browser.safari && (($.browser.version < 526)))) && ((this.cssPosition == \"fixed\")))) ? 0 : ((((((this.cssPosition == \"fixed\")) ? -this.scrollParent.scrollLeft() : ((f ? 0 : e.scrollLeft())))) * c))))))\n };\n },\n _generatePosition: function(a) {\n var b = this.options, c = ((((((this.cssPosition != \"absolute\")) || ((((this.scrollParent[0] != JSBNG__document)) && !!$.ui.contains(this.scrollParent[0], this.offsetParent[0]))))) ? this.scrollParent : this.offsetParent)), d = /(html|body)/i.test(c[0].tagName), e = a.pageX, f = a.pageY;\n if (this.originalPosition) {\n var g;\n if (this.containment) {\n if (this.relative_container) {\n var h = this.relative_container.offset();\n g = [((this.containment[0] + h.left)),((this.containment[1] + h.JSBNG__top)),((this.containment[2] + h.left)),((this.containment[3] + h.JSBNG__top)),];\n }\n else g = this.containment;\n ;\n ;\n ((((((a.pageX - this.offset.click.left)) < g[0])) && (e = ((g[0] + this.offset.click.left))))), ((((((a.pageY - this.offset.click.JSBNG__top)) < g[1])) && (f = ((g[1] + this.offset.click.JSBNG__top))))), ((((((a.pageX - this.offset.click.left)) > g[2])) && (e = ((g[2] + this.offset.click.left))))), ((((((a.pageY - this.offset.click.JSBNG__top)) > g[3])) && (f = ((g[3] + this.offset.click.JSBNG__top)))));\n }\n ;\n ;\n if (b.grid) {\n var i = ((b.grid[1] ? ((this.originalPageY + ((Math.round(((((f - this.originalPageY)) / b.grid[1]))) * b.grid[1])))) : this.originalPageY));\n f = ((g ? ((((((((i - this.offset.click.JSBNG__top)) < g[1])) || ((((i - this.offset.click.JSBNG__top)) > g[3])))) ? ((((((i - this.offset.click.JSBNG__top)) < g[1])) ? ((i + b.grid[1])) : ((i - b.grid[1])))) : i)) : i));\n var j = ((b.grid[0] ? ((this.originalPageX + ((Math.round(((((e - this.originalPageX)) / b.grid[0]))) * b.grid[0])))) : this.originalPageX));\n e = ((g ? ((((((((j - this.offset.click.left)) < g[0])) || ((((j - this.offset.click.left)) > g[2])))) ? ((((((j - this.offset.click.left)) < g[0])) ? ((j + b.grid[0])) : ((j - b.grid[0])))) : j)) : j));\n }\n ;\n ;\n }\n ;\n ;\n return {\n JSBNG__top: ((((((((f - this.offset.click.JSBNG__top)) - this.offset.relative.JSBNG__top)) - this.offset.parent.JSBNG__top)) + (((((($.browser.safari && (($.browser.version < 526)))) && ((this.cssPosition == \"fixed\")))) ? 0 : ((((this.cssPosition == \"fixed\")) ? -this.scrollParent.scrollTop() : ((d ? 0 : c.scrollTop())))))))),\n left: ((((((((e - this.offset.click.left)) - this.offset.relative.left)) - this.offset.parent.left)) + (((((($.browser.safari && (($.browser.version < 526)))) && ((this.cssPosition == \"fixed\")))) ? 0 : ((((this.cssPosition == \"fixed\")) ? -this.scrollParent.scrollLeft() : ((d ? 0 : c.scrollLeft()))))))))\n };\n },\n _clear: function() {\n this.helper.removeClass(\"ui-draggable-dragging\"), ((((((this.helper[0] != this.element[0])) && !this.cancelHelperRemoval)) && this.helper.remove())), this.helper = null, this.cancelHelperRemoval = !1;\n },\n _trigger: function(a, b, c) {\n return c = ((c || this._uiHash())), $.ui.plugin.call(this, a, [b,c,]), ((((a == \"drag\")) && (this.positionAbs = this._convertPositionTo(\"absolute\")))), $.Widget.prototype._trigger.call(this, a, b, c);\n },\n plugins: {\n },\n _uiHash: function(a) {\n return {\n helper: this.helper,\n position: this.position,\n originalPosition: this.originalPosition,\n offset: this.positionAbs\n };\n }\n }), $.extend($.ui.draggable, {\n version: \"1.8.22\"\n }), $.ui.plugin.add(\"draggable\", \"connectToSortable\", {\n start: function(a, b) {\n var c = $(this).data(\"draggable\"), d = c.options, e = $.extend({\n }, b, {\n item: c.element\n });\n c.sortables = [], $(d.connectToSortable).each(function() {\n var b = $.data(this, \"sortable\");\n ((((b && !b.options.disabled)) && (c.sortables.push({\n instance: b,\n shouldRevert: b.options.revert\n }), b.refreshPositions(), b._trigger(\"activate\", a, e))));\n });\n },\n JSBNG__stop: function(a, b) {\n var c = $(this).data(\"draggable\"), d = $.extend({\n }, b, {\n item: c.element\n });\n $.each(c.sortables, function() {\n ((this.instance.isOver ? (this.instance.isOver = 0, c.cancelHelperRemoval = !0, this.instance.cancelHelperRemoval = !1, ((this.shouldRevert && (this.instance.options.revert = !0))), this.instance._mouseStop(a), this.instance.options.helper = this.instance.options._helper, ((((c.options.helper == \"original\")) && this.instance.currentItem.css({\n JSBNG__top: \"auto\",\n left: \"auto\"\n })))) : (this.instance.cancelHelperRemoval = !1, this.instance._trigger(\"deactivate\", a, d))));\n });\n },\n drag: function(a, b) {\n var c = $(this).data(\"draggable\"), d = this, e = function(a) {\n var b = this.offset.click.JSBNG__top, c = this.offset.click.left, d = this.positionAbs.JSBNG__top, e = this.positionAbs.left, f = a.height, g = a.width, h = a.JSBNG__top, i = a.left;\n return $.ui.isOver(((d + b)), ((e + c)), h, i, f, g);\n };\n $.each(c.sortables, function(e) {\n this.instance.positionAbs = c.positionAbs, this.instance.helperProportions = c.helperProportions, this.instance.offset.click = c.offset.click, ((this.instance._intersectsWith(this.instance.containerCache) ? (((this.instance.isOver || (this.instance.isOver = 1, this.instance.currentItem = $(d).clone().removeAttr(\"id\").appendTo(this.instance.element).data(\"sortable-item\", !0), this.instance.options._helper = this.instance.options.helper, this.instance.options.helper = function() {\n return b.helper[0];\n }, a.target = this.instance.currentItem[0], this.instance._mouseCapture(a, !0), this.instance._mouseStart(a, !0, !0), this.instance.offset.click.JSBNG__top = c.offset.click.JSBNG__top, this.instance.offset.click.left = c.offset.click.left, this.instance.offset.parent.left -= ((c.offset.parent.left - this.instance.offset.parent.left)), this.instance.offset.parent.JSBNG__top -= ((c.offset.parent.JSBNG__top - this.instance.offset.parent.JSBNG__top)), c._trigger(\"toSortable\", a), c.dropped = this.instance.element, c.currentItem = c.element, this.instance.fromOutside = c))), ((this.instance.currentItem && this.instance._mouseDrag(a)))) : ((this.instance.isOver && (this.instance.isOver = 0, this.instance.cancelHelperRemoval = !0, this.instance.options.revert = !1, this.instance._trigger(\"out\", a, this.instance._uiHash(this.instance)), this.instance._mouseStop(a, !0), this.instance.options.helper = this.instance.options._helper, this.instance.currentItem.remove(), ((this.instance.placeholder && this.instance.placeholder.remove())), c._trigger(\"fromSortable\", a), c.dropped = !1)))));\n });\n }\n }), $.ui.plugin.add(\"draggable\", \"cursor\", {\n start: function(a, b) {\n var c = $(\"body\"), d = $(this).data(\"draggable\").options;\n ((c.css(\"cursor\") && (d._cursor = c.css(\"cursor\")))), c.css(\"cursor\", d.cursor);\n },\n JSBNG__stop: function(a, b) {\n var c = $(this).data(\"draggable\").options;\n ((c._cursor && $(\"body\").css(\"cursor\", c._cursor)));\n }\n }), $.ui.plugin.add(\"draggable\", \"opacity\", {\n start: function(a, b) {\n var c = $(b.helper), d = $(this).data(\"draggable\").options;\n ((c.css(\"opacity\") && (d._opacity = c.css(\"opacity\")))), c.css(\"opacity\", d.opacity);\n },\n JSBNG__stop: function(a, b) {\n var c = $(this).data(\"draggable\").options;\n ((c._opacity && $(b.helper).css(\"opacity\", c._opacity)));\n }\n }), $.ui.plugin.add(\"draggable\", \"JSBNG__scroll\", {\n start: function(a, b) {\n var c = $(this).data(\"draggable\");\n ((((((c.scrollParent[0] != JSBNG__document)) && ((c.scrollParent[0].tagName != \"HTML\")))) && (c.overflowOffset = c.scrollParent.offset())));\n },\n drag: function(a, b) {\n var c = $(this).data(\"draggable\"), d = c.options, e = !1;\n if (((((c.scrollParent[0] != JSBNG__document)) && ((c.scrollParent[0].tagName != \"HTML\"))))) {\n if (((!d.axis || ((d.axis != \"x\"))))) {\n ((((((((c.overflowOffset.JSBNG__top + c.scrollParent[0].offsetHeight)) - a.pageY)) < d.scrollSensitivity)) ? c.scrollParent[0].scrollTop = e = ((c.scrollParent[0].scrollTop + d.scrollSpeed)) : ((((((a.pageY - c.overflowOffset.JSBNG__top)) < d.scrollSensitivity)) && (c.scrollParent[0].scrollTop = e = ((c.scrollParent[0].scrollTop - d.scrollSpeed)))))));\n }\n ;\n ;\n if (((!d.axis || ((d.axis != \"y\"))))) {\n ((((((((c.overflowOffset.left + c.scrollParent[0].offsetWidth)) - a.pageX)) < d.scrollSensitivity)) ? c.scrollParent[0].scrollLeft = e = ((c.scrollParent[0].scrollLeft + d.scrollSpeed)) : ((((((a.pageX - c.overflowOffset.left)) < d.scrollSensitivity)) && (c.scrollParent[0].scrollLeft = e = ((c.scrollParent[0].scrollLeft - d.scrollSpeed)))))));\n }\n ;\n ;\n }\n else {\n if (((!d.axis || ((d.axis != \"x\"))))) {\n ((((((a.pageY - $(JSBNG__document).scrollTop())) < d.scrollSensitivity)) ? e = $(JSBNG__document).scrollTop((($(JSBNG__document).scrollTop() - d.scrollSpeed))) : (((((($(window).height() - ((a.pageY - $(JSBNG__document).scrollTop())))) < d.scrollSensitivity)) && (e = $(JSBNG__document).scrollTop((($(JSBNG__document).scrollTop() + d.scrollSpeed))))))));\n }\n ;\n ;\n if (((!d.axis || ((d.axis != \"y\"))))) {\n ((((((a.pageX - $(JSBNG__document).scrollLeft())) < d.scrollSensitivity)) ? e = $(JSBNG__document).scrollLeft((($(JSBNG__document).scrollLeft() - d.scrollSpeed))) : (((((($(window).width() - ((a.pageX - $(JSBNG__document).scrollLeft())))) < d.scrollSensitivity)) && (e = $(JSBNG__document).scrollLeft((($(JSBNG__document).scrollLeft() + d.scrollSpeed))))))));\n }\n ;\n ;\n }\n ;\n ;\n ((((((((e !== !1)) && $.ui.ddmanager)) && !d.dropBehaviour)) && $.ui.ddmanager.prepareOffsets(c, a)));\n }\n }), $.ui.plugin.add(\"draggable\", \"snap\", {\n start: function(a, b) {\n var c = $(this).data(\"draggable\"), d = c.options;\n c.snapElements = [], $(((((d.snap.constructor != String)) ? ((d.snap.items || \":data(draggable)\")) : d.snap))).each(function() {\n var a = $(this), b = a.offset();\n ((((this != c.element[0])) && c.snapElements.push({\n item: this,\n width: a.JSBNG__outerWidth(),\n height: a.JSBNG__outerHeight(),\n JSBNG__top: b.JSBNG__top,\n left: b.left\n })));\n });\n },\n drag: function(a, b) {\n var c = $(this).data(\"draggable\"), d = c.options, e = d.snapTolerance, f = b.offset.left, g = ((f + c.helperProportions.width)), h = b.offset.JSBNG__top, i = ((h + c.helperProportions.height));\n for (var j = ((c.snapElements.length - 1)); ((j >= 0)); j--) {\n var k = c.snapElements[j].left, l = ((k + c.snapElements[j].width)), m = c.snapElements[j].JSBNG__top, n = ((m + c.snapElements[j].height));\n if (!((((((((((((((((k - e)) < f)) && ((f < ((l + e)))))) && ((((m - e)) < h)))) && ((h < ((n + e)))))) || ((((((((((k - e)) < f)) && ((f < ((l + e)))))) && ((((m - e)) < i)))) && ((i < ((n + e)))))))) || ((((((((((k - e)) < g)) && ((g < ((l + e)))))) && ((((m - e)) < h)))) && ((h < ((n + e)))))))) || ((((((((((k - e)) < g)) && ((g < ((l + e)))))) && ((((m - e)) < i)))) && ((i < ((n + e))))))))) {\n ((((c.snapElements[j].snapping && c.options.snap.release)) && c.options.snap.release.call(c.element, a, $.extend(c._uiHash(), {\n snapItem: c.snapElements[j].item\n })))), c.snapElements[j].snapping = !1;\n continue;\n }\n ;\n ;\n if (((d.snapMode != \"JSBNG__inner\"))) {\n var o = ((Math.abs(((m - i))) <= e)), p = ((Math.abs(((n - h))) <= e)), q = ((Math.abs(((k - g))) <= e)), r = ((Math.abs(((l - f))) <= e));\n ((o && (b.position.JSBNG__top = ((c._convertPositionTo(\"relative\", {\n JSBNG__top: ((m - c.helperProportions.height)),\n left: 0\n }).JSBNG__top - c.margins.JSBNG__top))))), ((p && (b.position.JSBNG__top = ((c._convertPositionTo(\"relative\", {\n JSBNG__top: n,\n left: 0\n }).JSBNG__top - c.margins.JSBNG__top))))), ((q && (b.position.left = ((c._convertPositionTo(\"relative\", {\n JSBNG__top: 0,\n left: ((k - c.helperProportions.width))\n }).left - c.margins.left))))), ((r && (b.position.left = ((c._convertPositionTo(\"relative\", {\n JSBNG__top: 0,\n left: l\n }).left - c.margins.left)))));\n }\n ;\n ;\n var s = ((((((o || p)) || q)) || r));\n if (((d.snapMode != \"JSBNG__outer\"))) {\n var o = ((Math.abs(((m - h))) <= e)), p = ((Math.abs(((n - i))) <= e)), q = ((Math.abs(((k - f))) <= e)), r = ((Math.abs(((l - g))) <= e));\n ((o && (b.position.JSBNG__top = ((c._convertPositionTo(\"relative\", {\n JSBNG__top: m,\n left: 0\n }).JSBNG__top - c.margins.JSBNG__top))))), ((p && (b.position.JSBNG__top = ((c._convertPositionTo(\"relative\", {\n JSBNG__top: ((n - c.helperProportions.height)),\n left: 0\n }).JSBNG__top - c.margins.JSBNG__top))))), ((q && (b.position.left = ((c._convertPositionTo(\"relative\", {\n JSBNG__top: 0,\n left: k\n }).left - c.margins.left))))), ((r && (b.position.left = ((c._convertPositionTo(\"relative\", {\n JSBNG__top: 0,\n left: ((l - c.helperProportions.width))\n }).left - c.margins.left)))));\n }\n ;\n ;\n ((((((!c.snapElements[j].snapping && ((((((((o || p)) || q)) || r)) || s)))) && c.options.snap.snap)) && c.options.snap.snap.call(c.element, a, $.extend(c._uiHash(), {\n snapItem: c.snapElements[j].item\n })))), c.snapElements[j].snapping = ((((((((o || p)) || q)) || r)) || s));\n };\n ;\n }\n }), $.ui.plugin.add(\"draggable\", \"stack\", {\n start: function(a, b) {\n var c = $(this).data(\"draggable\").options, d = $.makeArray($(c.stack)).sort(function(a, b) {\n return ((((parseInt($(a).css(\"zIndex\"), 10) || 0)) - ((parseInt($(b).css(\"zIndex\"), 10) || 0))));\n });\n if (!d.length) {\n return;\n }\n ;\n ;\n var e = ((parseInt(d[0].style.zIndex) || 0));\n $(d).each(function(a) {\n this.style.zIndex = ((e + a));\n }), this[0].style.zIndex = ((e + d.length));\n }\n }), $.ui.plugin.add(\"draggable\", \"zIndex\", {\n start: function(a, b) {\n var c = $(b.helper), d = $(this).data(\"draggable\").options;\n ((c.css(\"zIndex\") && (d._zIndex = c.css(\"zIndex\")))), c.css(\"zIndex\", d.zIndex);\n },\n JSBNG__stop: function(a, b) {\n var c = $(this).data(\"draggable\").options;\n ((c._zIndex && $(b.helper).css(\"zIndex\", c._zIndex)));\n }\n });\n }(jQuery), function($, a) {\n var b = 5;\n $.widget(\"ui.slider\", $.ui.mouse, {\n widgetEventPrefix: \"slide\",\n options: {\n animate: !1,\n distance: 0,\n max: 100,\n min: 0,\n JSBNG__orientation: \"horizontal\",\n range: !1,\n step: 1,\n value: 0,\n values: null\n },\n _create: function() {\n var a = this, c = this.options, d = this.element.JSBNG__find(\".ui-slider-handle\").addClass(\"ui-state-default ui-corner-all\"), e = \"\\u003Ca class='ui-slider-handle ui-state-default ui-corner-all' href='#'\\u003E\\u003C/a\\u003E\", f = ((((c.values && c.values.length)) || 1)), g = [];\n this._keySliding = !1, this._mouseSliding = !1, this._animateOff = !0, this._handleIndex = null, this._detectOrientation(), this._mouseInit(), this.element.addClass(((((((((((\"ui-slider ui-slider-\" + this.JSBNG__orientation)) + \" ui-widget\")) + \" ui-widget-content\")) + \" ui-corner-all\")) + ((c.disabled ? \" ui-slider-disabled ui-disabled\" : \"\"))))), this.range = $([]), ((c.range && (((((c.range === !0)) && (((c.values || (c.values = [this._valueMin(),this._valueMin(),]))), ((((c.values.length && ((c.values.length !== 2)))) && (c.values = [c.values[0],c.values[0],])))))), this.range = $(\"\\u003Cdiv\\u003E\\u003C/div\\u003E\").appendTo(this.element).addClass(((\"ui-slider-range ui-widget-header\" + ((((((c.range === \"min\")) || ((c.range === \"max\")))) ? ((\" ui-slider-range-\" + c.range)) : \"\"))))))));\n for (var h = d.length; ((h < f)); h += 1) {\n g.push(e);\n ;\n };\n ;\n this.handles = d.add($(g.join(\"\")).appendTo(a.element)), this.handle = this.handles.eq(0), this.handles.add(this.range).filter(\"a\").click(function(a) {\n a.preventDefault();\n }).hover(function() {\n ((c.disabled || $(this).addClass(\"ui-state-hover\")));\n }, function() {\n $(this).removeClass(\"ui-state-hover\");\n }).JSBNG__focus(function() {\n ((c.disabled ? $(this).JSBNG__blur() : ($(\".ui-slider .ui-state-focus\").removeClass(\"ui-state-focus\"), $(this).addClass(\"ui-state-focus\"))));\n }).JSBNG__blur(function() {\n $(this).removeClass(\"ui-state-focus\");\n }), this.handles.each(function(a) {\n $(this).data(\"index.ui-slider-handle\", a);\n }), this.handles.keydown(function(c) {\n var d = $(this).data(\"index.ui-slider-handle\"), e, f, g, h;\n if (a.options.disabled) {\n return;\n }\n ;\n ;\n switch (c.keyCode) {\n case $.ui.keyCode.HOME:\n \n case $.ui.keyCode.END:\n \n case $.ui.keyCode.PAGE_UP:\n \n case $.ui.keyCode.PAGE_DOWN:\n \n case $.ui.keyCode.UP:\n \n case $.ui.keyCode.RIGHT:\n \n case $.ui.keyCode.DOWN:\n \n case $.ui.keyCode.LEFT:\n c.preventDefault();\n if (!a._keySliding) {\n a._keySliding = !0, $(this).addClass(\"ui-state-active\"), e = a._start(c, d);\n if (((e === !1))) {\n return;\n }\n ;\n ;\n }\n ;\n ;\n };\n ;\n h = a.options.step, ((((a.options.values && a.options.values.length)) ? f = g = a.values(d) : f = g = a.value()));\n switch (c.keyCode) {\n case $.ui.keyCode.HOME:\n g = a._valueMin();\n break;\n case $.ui.keyCode.END:\n g = a._valueMax();\n break;\n case $.ui.keyCode.PAGE_UP:\n g = a._trimAlignValue(((f + ((((a._valueMax() - a._valueMin())) / b)))));\n break;\n case $.ui.keyCode.PAGE_DOWN:\n g = a._trimAlignValue(((f - ((((a._valueMax() - a._valueMin())) / b)))));\n break;\n case $.ui.keyCode.UP:\n \n case $.ui.keyCode.RIGHT:\n if (((f === a._valueMax()))) {\n return;\n }\n ;\n ;\n g = a._trimAlignValue(((f + h)));\n break;\n case $.ui.keyCode.DOWN:\n \n case $.ui.keyCode.LEFT:\n if (((f === a._valueMin()))) {\n return;\n }\n ;\n ;\n g = a._trimAlignValue(((f - h)));\n };\n ;\n a._slide(c, d, g);\n }).keyup(function(b) {\n var c = $(this).data(\"index.ui-slider-handle\");\n ((a._keySliding && (a._keySliding = !1, a._stop(b, c), a._change(b, c), $(this).removeClass(\"ui-state-active\"))));\n }), this._refreshValue(), this._animateOff = !1;\n },\n destroy: function() {\n return this.handles.remove(), this.range.remove(), this.element.removeClass(\"ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all\").removeData(\"slider\").unbind(\".slider\"), this._mouseDestroy(), this;\n },\n _mouseCapture: function(a) {\n var b = this.options, c, d, e, f, g, h, i, j, k;\n return ((b.disabled ? !1 : (this.elementSize = {\n width: this.element.JSBNG__outerWidth(),\n height: this.element.JSBNG__outerHeight()\n }, this.elementOffset = this.element.offset(), c = {\n x: a.pageX,\n y: a.pageY\n }, d = this._normValueFromMouse(c), e = ((((this._valueMax() - this._valueMin())) + 1)), g = this, this.handles.each(function(a) {\n var b = Math.abs(((d - g.values(a))));\n ((((e > b)) && (e = b, f = $(this), h = a)));\n }), ((((((b.range === !0)) && ((this.values(1) === b.min)))) && (h += 1, f = $(this.handles[h])))), i = this._start(a, h), ((((i === !1)) ? !1 : (this._mouseSliding = !0, g._handleIndex = h, f.addClass(\"ui-state-active\").JSBNG__focus(), j = f.offset(), k = !$(a.target).parents().andSelf().is(\".ui-slider-handle\"), this._clickOffset = ((k ? {\n left: 0,\n JSBNG__top: 0\n } : {\n left: ((((a.pageX - j.left)) - ((f.width() / 2)))),\n JSBNG__top: ((((((((((a.pageY - j.JSBNG__top)) - ((f.height() / 2)))) - ((parseInt(f.css(\"borderTopWidth\"), 10) || 0)))) - ((parseInt(f.css(\"borderBottomWidth\"), 10) || 0)))) + ((parseInt(f.css(\"marginTop\"), 10) || 0))))\n })), ((this.handles.hasClass(\"ui-state-hover\") || this._slide(a, h, d))), this._animateOff = !0, !0))))));\n },\n _mouseStart: function(a) {\n return !0;\n },\n _mouseDrag: function(a) {\n var b = {\n x: a.pageX,\n y: a.pageY\n }, c = this._normValueFromMouse(b);\n return this._slide(a, this._handleIndex, c), !1;\n },\n _mouseStop: function(a) {\n return this.handles.removeClass(\"ui-state-active\"), this._mouseSliding = !1, this._stop(a, this._handleIndex), this._change(a, this._handleIndex), this._handleIndex = null, this._clickOffset = null, this._animateOff = !1, !1;\n },\n _detectOrientation: function() {\n this.JSBNG__orientation = ((((this.options.JSBNG__orientation === \"vertical\")) ? \"vertical\" : \"horizontal\"));\n },\n _normValueFromMouse: function(a) {\n var b, c, d, e, f;\n return ((((this.JSBNG__orientation === \"horizontal\")) ? (b = this.elementSize.width, c = ((((a.x - this.elementOffset.left)) - ((this._clickOffset ? this._clickOffset.left : 0))))) : (b = this.elementSize.height, c = ((((a.y - this.elementOffset.JSBNG__top)) - ((this._clickOffset ? this._clickOffset.JSBNG__top : 0))))))), d = ((c / b)), ((((d > 1)) && (d = 1))), ((((d < 0)) && (d = 0))), ((((this.JSBNG__orientation === \"vertical\")) && (d = ((1 - d))))), e = ((this._valueMax() - this._valueMin())), f = ((this._valueMin() + ((d * e)))), this._trimAlignValue(f);\n },\n _start: function(a, b) {\n var c = {\n handle: this.handles[b],\n value: this.value()\n };\n return ((((this.options.values && this.options.values.length)) && (c.value = this.values(b), c.values = this.values()))), this._trigger(\"start\", a, c);\n },\n _slide: function(a, b, c) {\n var d, e, f;\n ((((this.options.values && this.options.values.length)) ? (d = this.values(((b ? 0 : 1))), ((((((((this.options.values.length === 2)) && ((this.options.range === !0)))) && ((((((b === 0)) && ((c > d)))) || ((((b === 1)) && ((c < d)))))))) && (c = d))), ((((c !== this.values(b))) && (e = this.values(), e[b] = c, f = this._trigger(\"slide\", a, {\n handle: this.handles[b],\n value: c,\n values: e\n }), d = this.values(((b ? 0 : 1))), ((((f !== !1)) && this.values(b, c, !0))))))) : ((((c !== this.value())) && (f = this._trigger(\"slide\", a, {\n handle: this.handles[b],\n value: c\n }), ((((f !== !1)) && this.value(c))))))));\n },\n _stop: function(a, b) {\n var c = {\n handle: this.handles[b],\n value: this.value()\n };\n ((((this.options.values && this.options.values.length)) && (c.value = this.values(b), c.values = this.values()))), this._trigger(\"JSBNG__stop\", a, c);\n },\n _change: function(a, b) {\n if (((!this._keySliding && !this._mouseSliding))) {\n var c = {\n handle: this.handles[b],\n value: this.value()\n };\n ((((this.options.values && this.options.values.length)) && (c.value = this.values(b), c.values = this.values()))), this._trigger(\"change\", a, c);\n }\n ;\n ;\n },\n value: function(a) {\n if (arguments.length) {\n this.options.value = this._trimAlignValue(a), this._refreshValue(), this._change(null, 0);\n return;\n }\n ;\n ;\n return this._value();\n },\n values: function(a, b) {\n var c, d, e;\n if (((arguments.length > 1))) {\n this.options.values[a] = this._trimAlignValue(b), this._refreshValue(), this._change(null, a);\n return;\n }\n ;\n ;\n if (!arguments.length) {\n return this._values();\n }\n ;\n ;\n if (!$.isArray(arguments[0])) {\n return ((((this.options.values && this.options.values.length)) ? this._values(a) : this.value()));\n }\n ;\n ;\n c = this.options.values, d = arguments[0];\n for (e = 0; ((e < c.length)); e += 1) {\n c[e] = this._trimAlignValue(d[e]), this._change(null, e);\n ;\n };\n ;\n this._refreshValue();\n },\n _setOption: function(a, b) {\n var c, d = 0;\n (($.isArray(this.options.values) && (d = this.options.values.length))), $.Widget.prototype._setOption.apply(this, arguments);\n switch (a) {\n case \"disabled\":\n ((b ? (this.handles.filter(\".ui-state-focus\").JSBNG__blur(), this.handles.removeClass(\"ui-state-hover\"), this.handles.propAttr(\"disabled\", !0), this.element.addClass(\"ui-disabled\")) : (this.handles.propAttr(\"disabled\", !1), this.element.removeClass(\"ui-disabled\"))));\n break;\n case \"JSBNG__orientation\":\n this._detectOrientation(), this.element.removeClass(\"ui-slider-horizontal ui-slider-vertical\").addClass(((\"ui-slider-\" + this.JSBNG__orientation))), this._refreshValue();\n break;\n case \"value\":\n this._animateOff = !0, this._refreshValue(), this._change(null, 0), this._animateOff = !1;\n break;\n case \"values\":\n this._animateOff = !0, this._refreshValue();\n for (c = 0; ((c < d)); c += 1) {\n this._change(null, c);\n ;\n };\n ;\n this._animateOff = !1;\n };\n ;\n },\n _value: function() {\n var a = this.options.value;\n return a = this._trimAlignValue(a), a;\n },\n _values: function(a) {\n var b, c, d;\n if (arguments.length) {\n return b = this.options.values[a], b = this._trimAlignValue(b), b;\n }\n ;\n ;\n c = this.options.values.slice();\n for (d = 0; ((d < c.length)); d += 1) {\n c[d] = this._trimAlignValue(c[d]);\n ;\n };\n ;\n return c;\n },\n _trimAlignValue: function(a) {\n if (((a <= this._valueMin()))) {\n return this._valueMin();\n }\n ;\n ;\n if (((a >= this._valueMax()))) {\n return this._valueMax();\n }\n ;\n ;\n var b = ((((this.options.step > 0)) ? this.options.step : 1)), c = ((((a - this._valueMin())) % b)), d = ((a - c));\n return ((((((Math.abs(c) * 2)) >= b)) && (d += ((((c > 0)) ? b : -b))))), parseFloat(d.toFixed(5));\n },\n _valueMin: function() {\n return this.options.min;\n },\n _valueMax: function() {\n return this.options.max;\n },\n _refreshValue: function() {\n var a = this.options.range, b = this.options, c = this, d = ((this._animateOff ? !1 : b.animate)), e, f = {\n }, g, h, i, j;\n ((((this.options.values && this.options.values.length)) ? this.handles.each(function(a, h) {\n e = ((((((c.values(a) - c._valueMin())) / ((c._valueMax() - c._valueMin())))) * 100)), f[((((c.JSBNG__orientation === \"horizontal\")) ? \"left\" : \"bottom\"))] = ((e + \"%\")), $(this).JSBNG__stop(1, 1)[((d ? \"animate\" : \"css\"))](f, b.animate), ((((c.options.range === !0)) && ((((c.JSBNG__orientation === \"horizontal\")) ? (((((a === 0)) && c.range.JSBNG__stop(1, 1)[((d ? \"animate\" : \"css\"))]({\n left: ((e + \"%\"))\n }, b.animate))), ((((a === 1)) && c.range[((d ? \"animate\" : \"css\"))]({\n width: ((((e - g)) + \"%\"))\n }, {\n queue: !1,\n duration: b.animate\n })))) : (((((a === 0)) && c.range.JSBNG__stop(1, 1)[((d ? \"animate\" : \"css\"))]({\n bottom: ((e + \"%\"))\n }, b.animate))), ((((a === 1)) && c.range[((d ? \"animate\" : \"css\"))]({\n height: ((((e - g)) + \"%\"))\n }, {\n queue: !1,\n duration: b.animate\n })))))))), g = e;\n }) : (h = this.value(), i = this._valueMin(), j = this._valueMax(), e = ((((j !== i)) ? ((((((h - i)) / ((j - i)))) * 100)) : 0)), f[((((c.JSBNG__orientation === \"horizontal\")) ? \"left\" : \"bottom\"))] = ((e + \"%\")), this.handle.JSBNG__stop(1, 1)[((d ? \"animate\" : \"css\"))](f, b.animate), ((((((a === \"min\")) && ((this.JSBNG__orientation === \"horizontal\")))) && this.range.JSBNG__stop(1, 1)[((d ? \"animate\" : \"css\"))]({\n width: ((e + \"%\"))\n }, b.animate))), ((((((a === \"max\")) && ((this.JSBNG__orientation === \"horizontal\")))) && this.range[((d ? \"animate\" : \"css\"))]({\n width: ((((100 - e)) + \"%\"))\n }, {\n queue: !1,\n duration: b.animate\n }))), ((((((a === \"min\")) && ((this.JSBNG__orientation === \"vertical\")))) && this.range.JSBNG__stop(1, 1)[((d ? \"animate\" : \"css\"))]({\n height: ((e + \"%\"))\n }, b.animate))), ((((((a === \"max\")) && ((this.JSBNG__orientation === \"vertical\")))) && this.range[((d ? \"animate\" : \"css\"))]({\n height: ((((100 - e)) + \"%\"))\n }, {\n queue: !1,\n duration: b.animate\n }))))));\n }\n }), $.extend($.ui.slider, {\n version: \"1.8.22\"\n });\n }(jQuery);\n});\ndeferred(\"$lib/jquery_webcam.js\", function() {\n (function($) {\n var a = {\n extern: null,\n append: !0,\n width: 320,\n height: 240,\n mode: \"callback\",\n swffile: \"jscam.swf\",\n quality: 85,\n debug: function() {\n \n },\n onCapture: function() {\n \n },\n onTick: function() {\n \n },\n onSave: function() {\n \n },\n onCameraStart: function() {\n \n },\n onCameraStop: function() {\n \n },\n onLoad: function() {\n \n },\n onDetect: function() {\n \n }\n };\n window.webcam = a, $.fn.webcam = function(b) {\n if (((typeof b == \"object\"))) {\n {\n var fin57keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin57i = (0);\n var c;\n for (; (fin57i < fin57keys.length); (fin57i++)) {\n ((c) = (fin57keys[fin57i]));\n {\n ((((b[c] !== undefined)) && (a[c] = b[c])));\n ;\n };\n };\n };\n }\n ;\n ;\n var d = ((((((((((((((((((((((((\"\\u003Cobject id=\\\"XwebcamXobjectX\\\" type=\\\"application/x-shockwave-flash\\\" data=\\\"\" + a.swffile)) + \"\\\" width=\\\"\")) + a.width)) + \"\\\" height=\\\"\")) + a.height)) + \"\\\"\\u003E\\u003Cparam name=\\\"movie\\\" value=\\\"\")) + a.swffile)) + \"\\\" /\\u003E\\u003Cparam name=\\\"FlashVars\\\" value=\\\"mode=\")) + a.mode)) + \"&amp;quality=\")) + a.quality)) + \"\\\" /\\u003E\\u003Cparam name=\\\"allowScriptAccess\\\" value=\\\"always\\\" /\\u003E\\u003C/object\\u003E\"));\n ((((null !== a.extern)) ? $(a.extern)[((a.append ? \"append\" : \"html\"))](d) : this[((a.append ? \"append\" : \"html\"))](d))), (_register = function(b) {\n var c = JSBNG__document.getElementById(\"XwebcamXobjectX\");\n ((((c.capture !== undefined)) ? (a.capture = function(a) {\n try {\n return c.capture(a);\n } catch (b) {\n \n };\n ;\n }, a.save = function(a) {\n try {\n return c.save(a);\n } catch (b) {\n \n };\n ;\n }, a.onLoad()) : ((((0 == b)) ? a.debug(\"error\", \"Flash movie not yet registered!\") : window.JSBNG__setTimeout(_register, ((1000 * ((4 - b)))), ((b - 1)))))));\n })(3);\n };\n })(jQuery);\n});\ndefine(\"app/ui/settings/with_cropper\", [\"module\",\"require\",\"exports\",\"$lib/jquery_ui.profile.js\",\"$lib/jquery_webcam.js\",], function(module, require, exports) {\n function odd(a) {\n return ((((a % 2)) != 0));\n };\n;\n function Cropper() {\n this.dataFromBase64URL = function(a) {\n return a.slice(((a.indexOf(\",\") + 1)));\n }, this.determineCrop = function() {\n var a = this.select(\"cropImageSelector\"), b = this.select(\"cropMaskSelector\"), c = a.offset(), d = b.offset(), e = ((this.attr.originalWidth / a.width())), f = ((((d.JSBNG__top - c.JSBNG__top)) + this.attr.maskPadding)), g = ((((d.left - c.left)) + this.attr.maskPadding)), h = ((((((d.left + this.attr.maskPadding)) > c.left)) ? ((d.left + this.attr.maskPadding)) : c.left)), i = ((((((d.JSBNG__top + this.attr.maskPadding)) > c.JSBNG__top)) ? ((d.JSBNG__top + this.attr.maskPadding)) : c.JSBNG__top)), j = ((((((((d.left + b.width())) - this.attr.maskPadding)) < ((c.left + a.width())))) ? ((((d.left + b.width())) - this.attr.maskPadding)) : ((c.left + a.width())))), k = ((((((((d.JSBNG__top + b.height())) - this.attr.maskPadding)) < ((c.JSBNG__top + a.height())))) ? ((((d.JSBNG__top + b.height())) - this.attr.maskPadding)) : ((c.JSBNG__top + a.height()))));\n return {\n maskWidth: ((b.width() - ((2 * this.attr.maskPadding)))),\n maskHeight: ((b.height() - ((2 * this.attr.maskPadding)))),\n imageLeft: Math.round(((e * ((((g >= 0)) ? g : 0))))),\n imageTop: Math.round(((e * ((((f >= 0)) ? f : 0))))),\n imageWidth: Math.round(((e * ((j - h))))),\n imageHeight: Math.round(((e * ((k - i))))),\n maskY: ((((f < 0)) ? -f : 0)),\n maskX: ((((g < 0)) ? -g : 0))\n };\n }, this.determineImageType = function(a) {\n return ((((a.substr(a.indexOf(\",\"), 4).indexOf(\",/9j\") == 0)) ? \"image/jpeg\" : \"image/png\"));\n }, this.canvasToDataURL = function(a, b) {\n return ((((b == \"image/jpeg\")) ? a.toDataURL(\"image/jpeg\", 235327) : a.toDataURL(\"image/png\")));\n }, this.prepareCropImage = function() {\n var a = this.select(\"cropImageSelector\");\n this.$cropImage = $(\"\\u003Cimg\\u003E\"), this.$cropImage.attr(\"src\", a.attr(\"src\")), this.JSBNG__on(this.$cropImage, \"load\", this.cropImageReady);\n }, this.cropImageReady = function() {\n this.trigger(\"uiCropImageReady\");\n }, this.clientsideCrop = function(a) {\n var b = this.select(\"drawSurfaceSelector\"), c = this.select(\"cropImageSelector\"), d = this.determineImageType(c.attr(\"src\")), e = b[0].getContext(\"2d\"), f = a.maskHeight, g = a.maskWidth, h = a.maskX, i = a.maskY;\n this.$cropImage.height(this.attr.originalHeight), this.$cropImage.width(this.attr.originalWidth);\n if (((((a.imageWidth >= this.attr.maximumWidth)) || ((a.imageHeight >= this.attr.maximumHeight))))) {\n f = this.attr.maximumHeight, g = this.attr.maximumWidth, h = Math.round(((a.maskX * ((this.attr.maximumWidth / a.imageWidth))))), i = Math.round(((a.maskY * ((this.attr.maximumHeight / a.imageHeight)))));\n }\n ;\n ;\n return e.canvas.width = g, e.canvas.height = f, e.fillStyle = \"white\", e.fillRect(0, 0, g, f), e.drawImage(this.$cropImage[0], a.imageLeft, a.imageTop, a.imageWidth, a.imageHeight, h, i, g, f), {\n fileData: this.dataFromBase64URL(this.canvasToDataURL(b[0], d)),\n offsetTop: 0,\n offsetLeft: 0,\n width: e.canvas.width,\n height: e.canvas.height\n };\n }, this.cropDimensions = function() {\n var a = this.select(\"cropMaskSelector\"), b = a.offset();\n return {\n JSBNG__top: b.JSBNG__top,\n left: b.left,\n maskWidth: a.width(),\n maskHeight: a.height(),\n cropWidth: ((a.width() - ((2 * this.attr.maskPadding)))),\n cropHeight: ((a.height() - ((2 * this.attr.maskPadding))))\n };\n }, this.centerImage = function() {\n var a = this.cropDimensions(), b = this.select(\"cropImageSelector\"), c = b.width(), d = b.height(), e = ((c / d));\n ((((((((c >= d)) && ((a.cropWidth >= a.cropHeight)))) && ((e >= ((a.cropWidth / a.cropHeight)))))) ? (d = a.cropHeight, c = Math.round(((c * ((d / this.attr.originalHeight)))))) : (c = a.cropWidth, d = Math.round(((d * ((c / this.attr.originalWidth)))))))), b.width(c), b.height(d), b.offset({\n JSBNG__top: ((((((a.maskHeight / 2)) - ((d / 2)))) + a.JSBNG__top)),\n left: ((((((a.maskWidth / 2)) - ((c / 2)))) + a.left))\n });\n }, this.onDragStart = function(a, b) {\n this.attr.imageStartOffset = this.select(\"cropImageSelector\").offset();\n }, this.onDragHandler = function(a, b) {\n this.select(\"cropImageSelector\").offset({\n JSBNG__top: ((((this.attr.imageStartOffset.JSBNG__top + b.position.JSBNG__top)) - b.originalPosition.JSBNG__top)),\n left: ((((this.attr.imageStartOffset.left + b.position.left)) - b.originalPosition.left))\n });\n }, this.onDragStop = function(a, b) {\n this.select(\"cropOverlaySelector\").offset(this.select(\"cropMaskSelector\").offset());\n }, this.imageLoaded = function(a, b) {\n function h(a) {\n var b = c.offset(), d = Math.round(((b.left + ((c.width() / 2))))), e = Math.round(((b.JSBNG__top + ((c.height() / 2))))), h = Math.round(((f * ((1 + ((a.value / 100))))))), i = Math.round(((g * ((1 + ((a.value / 100)))))));\n h = ((odd(h) ? h += 1 : h)), i = ((odd(i) ? i += 1 : i)), c.height(h), c.width(i), c.offset({\n JSBNG__top: Math.round(((e - ((h / 2))))),\n left: Math.round(((d - ((i / 2)))))\n });\n };\n ;\n var c = this.select(\"cropImageSelector\"), d = this.select(\"cropOverlaySelector\"), e = this.select(\"cropperSliderSelector\");\n this.attr.originalHeight = c.height(), this.attr.originalWidth = c.width(), this.centerImage();\n var f = c.height(), g = c.width();\n e.slider({\n value: 0,\n max: 100,\n min: 0,\n slide: function(a, b) {\n h(b);\n }\n }), e.slider(\"option\", \"value\", 0), d.draggable({\n drag: this.onDragHandler.bind(this),\n JSBNG__stop: this.onDragStop.bind(this),\n start: this.onDragStart.bind(this),\n containment: this.attr.cropContainerSelector\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(this.attr.cropImageSelector, \"load\", this.imageLoaded);\n });\n };\n;\n require(\"$lib/jquery_ui.profile.js\"), require(\"$lib/jquery_webcam.js\"), module.exports = Cropper;\n});\ndefine(\"app/ui/settings/with_webcam\", [\"module\",\"require\",\"exports\",\"$lib/jquery_ui.profile.js\",\"$lib/jquery_webcam.js\",], function(module, require, exports) {\n function Webcam() {\n this.doJsCam = function() {\n $(this.attr.webcamContainerSelector).webcam({\n width: 320,\n height: 240,\n mode: \"callback\",\n swffile: \"/flash/jscam.swf\",\n onLoad: this.jsCamLoad.bind(this),\n onCameraStart: this.jsCamCameraStart.bind(this),\n onCameraStop: this.jsCamCameraStop.bind(this),\n onCapture: this.jsCamCapture.bind(this),\n onSave: this.jsCamSave.bind(this),\n debug: this.jsCamDebug\n });\n }, this.jsCamLoad = function() {\n var a = this.select(\"webcamCanvasSelector\")[0].getContext(\"2d\");\n this.image = a.getImageData(0, 0, 320, 240), this.pos = 0;\n }, this.jsCamCameraStart = function() {\n this.select(\"captureWebcamSelector\").attr(\"disabled\", !1);\n }, this.jsCamCameraStop = function() {\n this.select(\"captureWebcamSelector\").attr(\"disabled\", !0);\n }, this.jsCamCapture = function() {\n window.webcam.save();\n }, this.jsCamSave = function(a) {\n var b = this.select(\"webcamCanvasSelector\")[0].getContext(\"2d\"), c = a.split(\";\"), d = this.image;\n for (var e = 0; ((e < 320)); e++) {\n var f = parseInt(c[e]);\n d.data[((this.pos + 0))] = ((((f >> 16)) & 255)), d.data[((this.pos + 1))] = ((((f >> 8)) & 255)), d.data[((this.pos + 2))] = ((f & 255)), d.data[((this.pos + 3))] = 255, this.pos += 4;\n };\n ;\n if (((this.pos >= 307200))) {\n var g = this.select(\"webcamCanvasSelector\")[0], h = this.select(\"cropImageSelector\")[0];\n b.putImageData(d, 0, 0), h.src = g.toDataURL(\"image/png\"), this.pos = 0, this.trigger(\"jsCamCapture\");\n }\n ;\n ;\n }, this.jsCamDebug = function(a, b) {\n \n };\n };\n;\n require(\"$lib/jquery_ui.profile.js\"), require(\"$lib/jquery_webcam.js\"), module.exports = Webcam;\n});\ndefine(\"app/utils/is_showing_avatar_options\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = function() {\n return $(\"body\").hasClass(\"show-avatar-options\");\n };\n});\ndefine(\"app/ui/dialogs/profile_image_upload_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/settings/with_cropper\",\"app/ui/with_dialog\",\"app/ui/with_position\",\"app/ui/settings/with_webcam\",\"app/utils/is_showing_avatar_options\",\"core/i18n\",\"$lib/jquery_ui.profile.js\",\"$lib/jquery_webcam.js\",], function(module, require, exports) {\n function profileImageUpload() {\n this.defaultAttrs({\n webcamTitle: _(\"Smile!\"),\n titleSelector: \".modal-title\",\n profileImageCropDivSelector: \".image-upload-crop\",\n profileImageWebcamDivSelector: \".image-upload-webcam\",\n cancelSelector: \".profile-image-cancel\",\n saveSelector: \".profile-image-save\",\n cropperSliderSelector: \".cropper-slider\",\n cropImageSelector: \".crop-image\",\n cropMaskSelector: \".cropper-mask\",\n cropOverlaySelector: \".cropper-overlay\",\n captureWebcamSelector: \".profile-image-capture-webcam\",\n webcamContainerSelector: \".webcam-container\",\n webcamCanvasSelector: \".webcam-canvas\",\n imageNameSelector: \"#choose-photo div.photo-selector input.file-name\",\n imageDataSelector: \"#choose-photo div.photo-selector input.file-data\",\n imageUploadSpinnerSelector: \".image-upload-spinner\",\n maskPadding: 40,\n JSBNG__top: 50,\n uploadType: \"\",\n drawSurfaceSelector: \".drawsurface\",\n saveEvent: \"uiProfileImageSave\",\n successEvent: \"dataProfileImageSuccess\",\n errorEvent: \"dataProfileImageFailure\",\n showSuccessMessage: !0,\n maximumWidth: 256,\n maximumHeight: 256,\n fileName: \"\"\n }), this.showCropper = function(a) {\n this.setTitle(this.attr.originalTitle), this.select(\"captureWebcamSelector\").hide(), this.select(\"saveSelector\").show(), this.attr.fileName = a, this.clearForm(), JSBNG__document.body.JSBNG__focus(), this.trigger(\"uiShowingCropper\", {\n scribeElement: this.getScribeElement()\n });\n }, this.setScribeElement = function(a) {\n this.scribeElement = a;\n }, this.getScribeElement = function() {\n return ((this.scribeElement || \"upload\"));\n }, this.reset = function() {\n this.select(\"cropImageSelector\").attr(\"src\", \"\"), this.select(\"cropImageSelector\").attr(\"style\", \"\"), this.select(\"webcamContainerSelector\").empty(), this.select(\"cancelSelector\").show(), this.select(\"saveSelector\").attr(\"disabled\", !1).hide(), this.$node.removeClass(\"saving\"), this.select(\"profileImageWebcamDivSelector\").hide(), this.select(\"profileImageCropDivSelector\").hide(), this.select(\"captureWebcamSelector\").hide();\n }, this.swapVisibility = function(a, b) {\n this.$node.JSBNG__find(a).hide(), this.$node.JSBNG__find(b).show();\n }, this.haveImageSelected = function(a, b) {\n var c = $(this.attr.imageNameSelector).attr(\"value\"), d = ((\"data:image/jpeg;base64,\" + $(this.attr.imageDataSelector).attr(\"value\")));\n this.gotImageData(b.uploadType, c, d), this.trigger(\"uiCloseDropdowns\");\n }, this.gotImageData = function(a, b, c, d) {\n ((((((a !== \"background\")) && ((this.attr.uploadType == a)))) && (this.JSBNG__openDialog(), this.trigger(\"uiUploadReceived\"), this.select(\"cropImageSelector\").attr(\"src\", c), this.select(\"profileImageCropDivSelector\").show(), this.setScribeElement(\"upload\"), this.showCropper(b), ((d && this.trigger(\"uiDropped\"))))));\n }, this.JSBNG__openDialog = function() {\n this.open(), this.reset();\n }, this.setTitle = function(a) {\n this.select(\"titleSelector\").text(a);\n }, this.showWebcam = function(a, b) {\n if (((this.attr.uploadType != b.uploadType))) {\n return;\n }\n ;\n ;\n this.setTitle(this.attr.webcamTitle), this.JSBNG__openDialog(), this.select(\"profileImageWebcamDivSelector\").show(), this.select(\"captureWebcamSelector\").show(), this.doJsCam(), this.trigger(\"uiShowingWebcam\");\n }, this.takePhoto = function() {\n webcam.capture();\n }, this.webcamCaptured = function() {\n this.swapVisibility(this.attr.profileImageWebcamDivSelector, this.attr.profileImageCropDivSelector), this.setScribeElement(\"webcam\"), $(this.attr.imageDataSelector).attr(\"value\", this.dataFromBase64URL(this.select(\"cropImageSelector\").attr(\"src\"))), $(this.attr.imageNameSelector).attr(\"value\", \"webcam-cap.png\"), this.showCropper();\n }, this.save = function(a, b) {\n if (this.$node.hasClass(\"saving\")) {\n return;\n }\n ;\n ;\n return this.prepareCropImage(), a.preventDefault(), !1;\n }, this.readyToCrop = function() {\n var a = this.determineCrop(), b = this.clientsideCrop(a);\n b.fileName = this.attr.fileName, b.uploadType = this.attr.uploadType, b.scribeElement = this.getScribeElement(), this.trigger(\"uiImageSave\", b), this.enterSavingState();\n }, this.enterSavingState = function() {\n this.select(\"imageUploadSpinnerSelector\").css(\"height\", this.select(\"profileImageCropDivSelector\").height()), this.$node.addClass(\"saving\"), this.select(\"saveSelector\").attr(\"disabled\", !0), this.select(\"cancelSelector\").hide();\n }, this.uploadSuccess = function(a, b) {\n if (((((b && b.sourceEventData)) && ((b.sourceEventData.uploadType != this.attr.uploadType))))) {\n return;\n }\n ;\n ;\n if (this.attr.showSuccessMessage) {\n var c = {\n avatar: _(\"avatar\"),\n header: _(\"header\"),\n background: _(\"background\")\n }, d = ((c[this.attr.uploadType] || this.attr.uploadType));\n this.trigger(\"uiAlertBanner\", {\n message: _(\"Your {{uploadType}} was published successfully.\", {\n uploadType: d\n })\n });\n }\n ;\n ;\n this.trigger(\"uiProfileImagePublished\", {\n scribeElement: this.getScribeElement()\n }), this.close();\n }, this.uploadFailed = function(a, b) {\n if (((((b && b.sourceEventData)) && ((b.sourceEventData.uploadType != this.attr.uploadType))))) {\n return;\n }\n ;\n ;\n this.trigger(\"uiProfileImageDialogFailure\", {\n scribeElement: this.getScribeElement()\n }), this.trigger(\"uiAlertBanner\", {\n message: b.message\n }), this.close();\n }, this.clearForm = function() {\n $(this.attr.imageDataSelector).removeAttr(\"value\"), $(this.attr.imageNameSelector).removeAttr(\"value\");\n }, this.interceptGotProfileImageData = function(a, b) {\n ((((((b.uploadType == \"header\")) && isShowingAvatarOptions())) && (b.uploadType = \"avatar\"))), this.gotImageData(b.uploadType, b.JSBNG__name, b.contents, b.wasDropped);\n }, this.after(\"initialize\", function() {\n this.attr.originalTitle = this.select(\"titleSelector\").text(), this.JSBNG__on(JSBNG__document, \"uiCropperWebcam\", this.showWebcam), this.JSBNG__on(JSBNG__document, \"uiImagePickerFileReady\", this.haveImageSelected), this.JSBNG__on(\"jsCamCapture\", this.webcamCaptured), this.JSBNG__on(this.select(\"captureWebcamSelector\"), \"click\", this.takePhoto), this.JSBNG__on(this.select(\"saveSelector\"), \"click\", this.save), this.JSBNG__on(\"uiCropImageReady\", this.readyToCrop), this.JSBNG__on(JSBNG__document, \"dataImageEnqueued\", this.close), this.JSBNG__on(JSBNG__document, \"uiImageUploadSuccess\", this.uploadSuccess), this.JSBNG__on(JSBNG__document, \"uiImageUploadFailure dataImageFailedToEnqueue\", this.uploadFailed), this.JSBNG__on(JSBNG__document, \"uiGotProfileImageData\", this.interceptGotProfileImageData), this.JSBNG__on(this.attr.cancelSelector, \"click\", function(a, b) {\n this.close();\n }), this.JSBNG__on(\"uiDialogClosed\", function() {\n this.clearForm(), this.reset(), this.trigger(\"uiProfileImageDialogClose\");\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withCropper = require(\"app/ui/settings/with_cropper\"), withDialog = require(\"app/ui/with_dialog\"), withPosition = require(\"app/ui/with_position\"), withWebcam = require(\"app/ui/settings/with_webcam\"), isShowingAvatarOptions = require(\"app/utils/is_showing_avatar_options\"), _ = require(\"core/i18n\");\n require(\"$lib/jquery_ui.profile.js\"), require(\"$lib/jquery_webcam.js\"), module.exports = defineComponent(profileImageUpload, withCropper, withDialog, withPosition, withWebcam);\n});\ndefine(\"app/ui/dialogs/profile_edit_error_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/i18n\",\"app/ui/with_dialog\",], function(module, require, exports) {\n function profileEditErrorDialog() {\n this.defaultAttrs({\n okaySelector: \".ok-btn\",\n messageSelector: \".profile-message\",\n updateErrorMessage: _(\"There was an error updating your profile.\")\n }), this.closeDialog = function(a, b) {\n this.close();\n }, this.showError = function(a, b) {\n var c = ((b.message || this.attr.updateErrorMessage));\n this.select(\"messageSelector\").html(c), this.open();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiShowProfileEditError\", this.showError), this.JSBNG__on(\"click\", {\n okaySelector: this.closeDialog\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), _ = require(\"core/i18n\"), withDialog = require(\"app/ui/with_dialog\"), ProfileEditErrorDialog = defineComponent(profileEditErrorDialog, withDialog);\n module.exports = ProfileEditErrorDialog;\n});\ndefine(\"app/ui/dialogs/profile_confirm_image_delete_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/i18n\",\"app/ui/with_dialog\",], function(module, require, exports) {\n function profileConfirmImageDeleteDialog() {\n this.defaultAttrs({\n removeSelector: \".ok-btn\",\n cancelSelector: \".cancel-btn\",\n uploadType: \"\"\n }), this.removeImage = function() {\n this.disableButtons(), this.trigger(\"uiDeleteImage\", {\n uploadType: this.attr.uploadType\n });\n }, this.triggerHideDeleteLink = function() {\n this.trigger(\"uiHideDeleteLink\", {\n uploadType: this.attr.uploadType\n });\n }, this.disableButtons = function() {\n this.select(\"removeSelector\").attr(\"disabled\", !0), this.select(\"cancelSelector\").JSBNG__stop(!0, !0).fadeOut();\n }, this.enableButtons = function() {\n this.select(\"removeSelector\").removeAttr(\"disabled\"), this.select(\"cancelSelector\").JSBNG__stop(!0, !0).show();\n }, this.showConfirm = function(a, b) {\n ((((b.uploadType === this.attr.uploadType)) && this.open()));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiConfirmDeleteImage\", this.showConfirm), this.JSBNG__on(JSBNG__document, \"dataDeleteImageSuccess\", this.close), this.JSBNG__on(\"uiDialogClosed\", this.enableButtons), this.JSBNG__on(JSBNG__document, \"dataDeleteImageFailure\", this.enableButtons), this.JSBNG__on(JSBNG__document, \"dataDeleteImageSuccess\", this.triggerHideDeleteLink), this.JSBNG__on(\"click\", {\n cancelSelector: this.close,\n removeSelector: this.removeImage\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), _ = require(\"core/i18n\"), withDialog = require(\"app/ui/with_dialog\");\n module.exports = defineComponent(profileConfirmImageDeleteDialog, withDialog);\n});\ndefine(\"app/ui/droppable_image\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_drop_events\",\"app/utils/image\",], function(module, require, exports) {\n function droppableImage() {\n this.defaultAttrs({\n uploadType: \"\"\n }), this.triggerGotProfileImageData = function(a, b) {\n this.trigger(\"uiGotProfileImageData\", {\n JSBNG__name: a,\n contents: b,\n uploadType: this.attr.uploadType,\n wasDropped: !0\n });\n }, this.getDroppedImageData = function(a, b) {\n if (!this.editing) {\n return;\n }\n ;\n ;\n a.stopImmediatePropagation();\n var c = b.file;\n image.getFileData(c.JSBNG__name, c, this.triggerGotProfileImageData.bind(this));\n }, this.allowDrop = function(a) {\n this.editing = ((a.type === \"uiEditProfileStart\"));\n }, this.after(\"initialize\", function() {\n this.editing = !1, this.JSBNG__on(JSBNG__document, \"uiEditProfileStart uiEditProfileEnd\", this.allowDrop), this.JSBNG__on(\"uiDrop\", this.getDroppedImageData);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withDropEvents = require(\"app/ui/with_drop_events\"), image = require(\"app/utils/image\");\n module.exports = defineComponent(droppableImage, withDropEvents);\n});\ndefine(\"app/ui/profile_image_monitor\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/cookie\",\"core/clock\",], function(module, require, exports) {\n function profileImageMonitor() {\n this.defaultAttrs({\n isProcessingCookie: \"image_processing_complete_key\",\n pollInterval: 2000,\n uploadType: \"avatar\",\n spinnerUrl: undefined,\n spinnerSelector: \".preview-spinner\",\n thumbnailSelector: \"#avatar_preview\",\n miniAvatarThumbnailSelector: \".mini-profile .avatar\",\n deleteButtonSelector: \"#delete-image\",\n deleteFormSelector: \"#profile_image_delete_form\"\n }), this.startPollingUploadStatus = function(a, b) {\n if (this.ignoreEvent(a, b)) {\n return;\n }\n ;\n ;\n this.stopPollingUploadStatus(), this.uploadCheckTimer = clock.setIntervalEvent(\"uiCheckImageUploadStatus\", this.attr.pollInterval, {\n uploadType: this.attr.uploadType,\n key: cookie(this.attr.isProcessingCookie)\n }), this.setThumbsLoading();\n }, this.stopPollingUploadStatus = function() {\n ((this.uploadCheckTimer && clock.JSBNG__clearInterval(this.uploadCheckTimer)));\n }, this.setThumbsLoading = function(a, b) {\n if (this.ignoreUIEvent(a, b)) {\n return;\n }\n ;\n ;\n this.updateThumbs(this.attr.spinnerUrl);\n }, this.updateThumbs = function(a) {\n ((((this.attr.uploadType == \"avatar\")) ? ($(this.attr.thumbnailSelector).attr(\"src\", a), $(this.attr.miniAvatarThumbnailSelector).attr(\"src\", a)) : ((((this.attr.uploadType == \"header\")) && $(this.attr.thumbnailSelector).css(\"background-image\", ((a ? ((((\"url(\" + a)) + \")\")) : \"none\")))))));\n }, this.checkUploadStatus = function(a, b) {\n if ((((($(\"html\").hasClass(\"debug\") || ((b.JSBNG__status == \"processing\")))) || this.ignoreEvent(a, b)))) {\n return;\n }\n ;\n ;\n this.handleUploadComplete(b.JSBNG__status), ((b.JSBNG__status && this.trigger(\"uiImageUploadSuccess\", b)));\n }, this.handleUploadComplete = function(a) {\n this.stopPollingUploadStatus(), cookie(this.attr.isProcessingCookie, null, {\n path: \"/\"\n }), this.updateThumbs(a);\n }, this.handleImageDelete = function(a, b) {\n if (this.ignoreEvent(a, b)) {\n return;\n }\n ;\n ;\n this.handleUploadComplete(b.JSBNG__status);\n }, this.handleFailedUpload = function(a, b) {\n if (this.ignoreEvent(a, b)) {\n return;\n }\n ;\n ;\n this.stopPollingUploadStatus(), this.restoreInitialThumbnail(), this.trigger(\"uiImageUploadFailure\", ((b || {\n })));\n }, this.deleteProfileImage = function(a, b) {\n return a.preventDefault(), $(this.attr.deleteFormSelector).submit(), !1;\n }, this.saveInitialThumbnail = function() {\n ((((this.attr.uploadType == \"avatar\")) ? this.initialThumbnail = $(this.attr.thumbnailSelector).attr(\"src\") : ((((this.attr.uploadType == \"header\")) && (this.initialThumbnail = $(this.attr.thumbnailSelector).css(\"background-image\"))))));\n }, this.restoreInitialThumbnail = function() {\n ((((this.attr.uploadType == \"avatar\")) ? ($(this.attr.thumbnailSelector).attr(\"src\", this.initialThumbnail), $(this.attr.miniAvatarThumbnailSelector).attr(\"src\", this.initialThumbnail)) : ((((this.attr.uploadType == \"header\")) && $(this.attr.thumbnailSelector).css(\"background-image\", this.initialThumbnail)))));\n }, this.ignoreEvent = function(a, b) {\n return ((((b && b.sourceEventData)) && ((b.sourceEventData.uploadType != this.attr.uploadType))));\n }, this.ignoreUIEvent = function(a, b) {\n return ((b && ((b.uploadType != this.attr.uploadType))));\n }, this.after(\"initialize\", function() {\n this.attr.spinnerUrl = this.select(\"spinnerSelector\").attr(\"src\"), ((cookie(this.attr.isProcessingCookie) ? this.startPollingUploadStatus() : this.saveInitialThumbnail())), this.JSBNG__on(JSBNG__document, \"dataImageEnqueued\", this.startPollingUploadStatus), this.JSBNG__on(JSBNG__document, \"dataHasImageUploadStatus\", this.checkUploadStatus), this.JSBNG__on(JSBNG__document, \"dataDeleteImageSuccess\", this.handleImageDelete), this.JSBNG__on(JSBNG__document, \"dataFailedToGetImageUploadStatus\", this.handleFailedUpload), this.JSBNG__on(JSBNG__document, \"uiDeleteImage\", this.setThumbsLoading), this.JSBNG__on(this.attr.deleteButtonSelector, \"click\", this.deleteProfileImage);\n });\n };\n;\n var defineComponent = require(\"core/component\"), cookie = require(\"app/utils/cookie\"), clock = require(\"core/clock\");\n module.exports = defineComponent(profileImageMonitor);\n});\ndefine(\"app/data/inline_edit_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_scribe\",], function(module, require, exports) {\n function inlineEditScribe() {\n this.defaultAttrs({\n scribeContext: {\n component: \"inline_edit\"\n }\n }), this.scribeAction = function(a) {\n var b = utils.merge(this.attr.scribeContext, {\n action: a\n });\n return function(a, c) {\n this.scribe(b, c);\n };\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiEditProfileStart\", this.scribeAction(\"edit\")), this.JSBNG__on(\"uiEditProfileCancel\", this.scribeAction(\"cancel\")), this.JSBNG__on(\"dataInlineEditSaveSuccess\", this.scribeAction(\"success\")), this.JSBNG__on(\"dataInlineEditSaveError\", this.scribeAction(\"error\"));\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withScribe = require(\"app/data/with_scribe\"), InlineEditScribe = defineComponent(inlineEditScribe, withScribe);\n module.exports = InlineEditScribe;\n});\ndefine(\"app/data/settings/profile_image_upload_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_scribe\",], function(module, require, exports) {\n function profileImageUploadScribe() {\n this.scribeEvent = function(a, b) {\n this.scribe(utils.merge(a.scribeContext, b));\n }, this.after(\"initialize\", function() {\n this.scribeOnEvent(\"uiUploadReceived\", {\n element: \"upload\",\n action: \"complete\"\n }), this.scribeOnEvent(\"uiShowingWebcam\", {\n element: \"webcam\",\n action: \"impression\"\n }), this.scribeOnEvent(\"jsCamCapture\", {\n element: \"webcam\",\n action: \"complete\"\n }), this.scribeOnEvent(\"uiProfileImageDialogClose\", {\n action: \"close\"\n }), this.JSBNG__on(\"uiImageSave\", function(a, b) {\n this.scribeEvent(b, {\n element: ((\"crop_\" + b.scribeElement)),\n action: \"complete\"\n });\n }), this.JSBNG__on(\"uiShowingCropper\", function(a, b) {\n this.scribeEvent(b, {\n element: ((\"crop_\" + b.scribeElement)),\n action: \"impression\"\n });\n }), this.JSBNG__on(\"uiProfileImagePublished\", function(a, b) {\n this.scribeEvent(b, {\n element: ((\"save_\" + b.scribeElement)),\n action: \"complete\"\n });\n }), this.JSBNG__on(\"uiProfileImageDialogFailure\", function(a, b) {\n this.scribeEvent(b, {\n element: ((\"save_\" + b.scribeElement)),\n action: \"failure\"\n });\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withScribe = require(\"app/data/with_scribe\"), ProfileImageUploadScribe = defineComponent(profileImageUploadScribe, withScribe);\n module.exports = ProfileImageUploadScribe;\n});\ndefine(\"app/data/drag_and_drop_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_scribe\",], function(module, require, exports) {\n function dragAndDropScribe() {\n this.after(\"initialize\", function() {\n this.scribeOnEvent(\"uiDropped\", {\n action: \"drag_and_drop\"\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(dragAndDropScribe, withScribe);\n});\ndefine(\"app/ui/settings/change_photo\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_dropdown\",\"app/data/with_scribe\",\"app/utils/image\",\"core/utils\",\"core/i18n\",], function(module, require, exports) {\n function changePhoto() {\n this.defaultAttrs({\n uploadType: \"avatar\",\n swfSelector: \"div.webcam-detect.swf-container\",\n toggler: \"button.choose-photo-button\",\n chooseExistingSelector: \"#photo-choose-existing\",\n chooseWebcamSelector: \"#photo-choose-webcam\",\n deleteImageSelector: \"#photo-delete-image\",\n itemSelector: \"li.dropdown-link\",\n firstItemSelector: \"li.dropdown-link:nth-child(2)\",\n caretSelector: \".dropdown-caret\",\n photoSelector: \"div.photo-selector\",\n showDeleteSuccessMessage: !0,\n alwaysOpen: !1,\n confirmDelete: !1\n }), this.webcamDetectorSwfPath = \"/flash/WebcamDetector.swf\", this.isUsingFlashUploader = function() {\n return ((image.hasFlash() && !image.hasFileReader()));\n }, this.isFirefox36 = function() {\n var a = $.browser;\n return ((a.mozilla && ((a.version.slice(0, 3) == \"1.9\"))));\n }, this.needsMenuHeldOpen = function() {\n return ((this.isUsingFlashUploader() || this.isFirefox36()));\n }, this.openWebCamDialog = function(a) {\n a.preventDefault(), ((this.needsMenuHeldOpen() && (this.ignoreCloseEvent = !1))), this.trigger(\"uiCropperWebcam\", {\n uploadType: this.attr.uploadType\n });\n }, this.webcamDetected = function() {\n var a = this.select(\"chooseWebcamSelector\");\n this.updateDropdownItemVisibility(a, !a.hasClass(\"no-webcam\"));\n }, this.dropdownOpened = function(a, b) {\n var c = ((((b && b.scribeContext)) || this.attr.eventData.scribeContext));\n this.scribe(utils.merge(c, {\n action: \"open\"\n })), ((this.needsMenuHeldOpen() && (this.ignoreCloseEvent = !0)));\n }, this.setupWebcamDetection = function() {\n var a = this.select(\"swfSelector\");\n ((image.hasFlash() && (((window.webcam && (window.webcam.onDetect = this.webcamDetected.bind(this)))), a.css(\"width\", \"0\"), a.css(\"height\", \"0\"), a.css(\"overflow\", \"hidden\"), a.flash({\n swf: this.webcamDetectorSwfPath,\n height: 1,\n width: 1,\n wmode: \"transparent\",\n AllowScriptAccess: \"sameDomain\"\n }))));\n }, this.deleteImage = function() {\n if (((this.attr.uploadType !== \"background\"))) {\n ((this.needsMenuHeldOpen() && (this.ignoreCloseEvent = !1)));\n var a = ((this.attr.confirmDelete ? \"uiConfirmDeleteImage\" : \"uiDeleteImage\"));\n this.trigger(a, {\n uploadType: this.attr.uploadType\n });\n }\n else this.hideFileName();\n ;\n ;\n ((this.attr.confirmDelete || this.hideDeleteLink()));\n }, this.handleDeleteImageSuccess = function(a, b) {\n ((((b.message && this.attr.showDeleteSuccessMessage)) && this.trigger(\"uiAlertBanner\", b)));\n }, this.handleDeleteImageFailure = function(a, b) {\n if (((b.sourceEventData.uploadType != this.attr.uploadType))) {\n return;\n }\n ;\n ;\n b.message = ((b.message || _(\"Sorry! Something went wrong deleting your {{uploadType}}. Please try again.\", this.attr))), this.trigger(\"uiAlertBanner\", b), this.showDeleteLink();\n }, this.showDeleteLinkForTargetedButton = function(a, b) {\n ((((((b.uploadType == this.attr.uploadType)) && ((b.uploadType == \"background\")))) && this.showDeleteLink()));\n }, this.showDeleteLink = function() {\n this.updateDropdownItemVisibility(this.select(\"deleteImageSelector\"), !0);\n }, this.hideDeleteLink = function(a, b) {\n if (((((b && b.uploadType)) && ((b.uploadType !== this.attr.uploadType))))) {\n return;\n }\n ;\n ;\n this.updateDropdownItemVisibility(this.select(\"deleteImageSelector\"), !1);\n }, this.showFileName = function(a, b) {\n this.$node.siblings(\".display-file-requirement\").hide(), this.$node.siblings(\".display-file-name\").text(b.fileName).show();\n }, this.hideFileName = function() {\n this.$node.siblings(\".display-file-requirement\").show(), this.$node.siblings(\".display-file-name\").hide();\n }, this.updateDropdownItemVisibility = function(a, b) {\n ((b ? a.show() : a.hide())), this.updateMenuHierarchy();\n }, this.upliftFilePicker = function() {\n var a = this.select(\"photoSelector\");\n this.select(\"toggler\").hide(), a.JSBNG__find(\"button\").attr(\"disabled\", !1), a.appendTo(this.$node);\n }, this.moveFilePickerBackIntoMenu = function() {\n var a = this.select(\"photoSelector\");\n a.appendTo(this.select(\"chooseExistingSelector\")), this.select(\"toggler\").show();\n }, this.updateMenuHierarchy = function() {\n if (this.attr.alwaysOpen) {\n return;\n }\n ;\n ;\n ((((this.availableDropdownItems().length == 1)) ? this.upliftFilePicker() : this.moveFilePickerBackIntoMenu()));\n }, this.availableDropdownItems = function() {\n return this.select(\"itemSelector\").filter(function() {\n return (($(this).css(\"display\") != \"none\"));\n });\n }, this.addCaretHover = function() {\n this.select(\"caretSelector\").addClass(\"hover\");\n }, this.removeCaretHover = function() {\n this.select(\"caretSelector\").removeClass(\"hover\");\n }, this.after(\"initialize\", function() {\n ((((this.attr.uploadType == \"avatar\")) && this.setupWebcamDetection())), this.JSBNG__on(JSBNG__document, \"click\", this.close), this.JSBNG__on(JSBNG__document, \"uiNavigate\", this.close), this.JSBNG__on(JSBNG__document, \"uiImageUploadSuccess\", this.showDeleteLink), this.JSBNG__on(JSBNG__document, \"uiImagePickerFileReady\", this.showDeleteLinkForTargetedButton), this.JSBNG__on(JSBNG__document, \"uiFileNameReady\", this.showFileName), this.JSBNG__on(JSBNG__document, \"uiHideDeleteLink\", this.hideDeleteLink), this.JSBNG__on(JSBNG__document, \"dataImageEnqueued\", this.hideDeleteLink), this.JSBNG__on(JSBNG__document, \"dataDeleteImageSuccess\", this.handleDeleteImageSuccess), this.JSBNG__on(JSBNG__document, \"dataDeleteImageFailure\", this.handleDeleteImageFailure), this.JSBNG__on(\"uiDropdownOpened\", this.dropdownOpened), this.JSBNG__on(\"click\", {\n chooseWebcamSelector: this.openWebCamDialog,\n deleteImageSelector: this.deleteImage\n }), this.JSBNG__on(\"mouseover\", {\n firstItemSelector: this.addCaretHover\n }), this.JSBNG__on(\"mouseout\", {\n firstItemSelector: this.removeCaretHover\n });\n if (this.attr.alwaysOpen) {\n var a = [\"toggleDisplay\",\"closeDropdown\",\"closeAndRestoreFocus\",\"close\",];\n a.forEach(function(a) {\n this.around(a, $.noop);\n }.bind(this));\n }\n ;\n ;\n this.around(\"toggleDisplay\", function(a, b) {\n var c = this.availableDropdownItems();\n ((((((((c.length == 1)) && !this.$node.hasClass(\"open\"))) && !this.isItemClick(b))) ? c.click() : a(b)));\n }), this.updateMenuHierarchy();\n });\n };\n;\n var defineComponent = require(\"core/component\"), withDropdown = require(\"app/ui/with_dropdown\"), withScribe = require(\"app/data/with_scribe\"), image = require(\"app/utils/image\"), utils = require(\"core/utils\"), _ = require(\"core/i18n\");\n module.exports = defineComponent(changePhoto, withDropdown, withScribe);\n});\ndefine(\"app/ui/image_uploader\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/image\",\"app/ui/with_image_selection\",\"app/data/with_scribe\",\"core/i18n\",], function(module, require, exports) {\n function imageUploader() {\n this.defaults = {\n swfHeight: 30,\n swfWidth: 274,\n uploadType: \"\",\n fileNameTextSelector: \".photo-file-name\"\n }, this.updateFileNameText = function(a, b) {\n var c = this.truncate(b.fileName, 18);\n this.select(\"fileNameSelector\").val(b.fileName), this.select(\"fileNameTextSelector\").text(c), this.trigger(\"uiFileNameReady\", {\n fileName: c\n });\n }, this.addFileError = function(a) {\n ((((a == \"tooLarge\")) ? this.trigger(\"uiAlertBanner\", {\n message: this.attr.fileTooBigMessage\n }) : ((((((a == \"notImage\")) || ((a == \"ioError\")))) && this.trigger(\"uiAlertBanner\", {\n message: _(\"You did not select an image.\")\n }))))), this.scribe({\n component: \"profile_image\",\n element: \"upload\",\n action: \"failure\"\n }), ((((typeof this.attr.onError == \"function\")) && this.attr.onError())), this.reset();\n }, this.gotImageData = function(a, b) {\n this.gotResizedImageData(a, b);\n }, this.truncate = function(a, b) {\n if (((a.length <= b))) {\n return a;\n }\n ;\n ;\n var c = Math.ceil(((b / 2))), d = Math.floor(((b / 2))), e = a.substr(0, c), f = a.substr(((a.length - d)), d);\n return ((((e + \"\\u2026\")) + f));\n }, this.loadSwf = function(a, b) {\n image.loadPhotoSelectorSwf(this.select(\"swfSelector\"), a, b, this.attr.swfHeight, this.attr.swfWidth, this.attr.maxSizeInBytes);\n }, this.initializeButton = function() {\n this.select(\"buttonSelector\").attr(\"disabled\", !1);\n }, this.resetUploader = function() {\n this.select(\"fileNameSelector\").val(\"\"), this.select(\"fileNameTextSelector\").text(_(\"No file selected\"));\n }, this.after(\"initialize\", function() {\n this.maxSizeInBytes = this.attr.maxSizeInBytes, this.initializeButton(), this.JSBNG__on(this.$node, \"uiTweetBoxShowPreview\", this.updateFileNameText), this.JSBNG__on(\"uiResetUploader\", this.resetUploader);\n });\n };\n;\n var defineComponent = require(\"core/component\"), image = require(\"app/utils/image\"), withImageSelection = require(\"app/ui/with_image_selection\"), withScribe = require(\"app/data/with_scribe\"), _ = require(\"core/i18n\"), ImageUploader = defineComponent(imageUploader, withImageSelection, withScribe);\n module.exports = ImageUploader;\n});\ndefine(\"app/ui/inline_profile_editing_initializor\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/image\",], function(module, require, exports) {\n function inlineProfileEditingInitializor() {\n this.defaultAttrs({\n profileEditingCSSBundle: \"\"\n }), this.supportsInlineEditing = function() {\n return image.supportsCropper();\n }, this.initializeInlineProfileEditing = function(a, b) {\n ((this.supportsInlineEditing() ? using(((\"css!\" + this.attr.profileEditingCSSBundle)), this.triggerStart.bind(this, b.scribeElement)) : this.trigger(\"uiNavigate\", {\n href: \"/settings/profile\"\n })));\n }, this.triggerStart = function(a) {\n this.trigger(\"uiEditProfileStart\", {\n scribeContext: {\n element: a\n }\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiEditProfileInitialize\", this.initializeInlineProfileEditing);\n });\n };\n;\n var defineComponent = require(\"core/component\"), image = require(\"app/utils/image\");\n module.exports = defineComponent(inlineProfileEditingInitializor);\n});\ndefine(\"app/utils/hide_or_show_divider\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = function(b, c, d, e) {\n var f = b.JSBNG__find(c), g = !!$.trim(b.JSBNG__find(d).text()), h = !!$.trim(b.JSBNG__find(e).text());\n ((((g && h)) ? f.show() : f.hide()));\n };\n});\ndefine(\"app/ui/with_inline_image_options\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/ui/with_upload_photo_affordance\",\"app/utils/is_showing_avatar_options\",], function(module, require, exports) {\n function withInlineImageOptions() {\n compose.mixin(this, [withUploadPhotoAffordance,]), this.defaultAttrs({\n editHeaderSelector: \".edit-header-target\",\n editAvatarSelector: \".profile-picture\",\n profileHeaderMaskSelector: \".profile-header-mask\",\n cancelOptionsSelector: \".cancel-options\",\n changePhotoSelector: \"#choose-photo\",\n changeHeaderSelector: \"#choose-header\"\n }), this.optionsEnabled = function() {\n this.canShowOptions = !0;\n }, this.optionsDisabled = function() {\n this.canShowOptions = !1;\n }, this.toggleAvatarOptions = function(a) {\n a.preventDefault(), ((isShowingAvatarOptions() ? this.hideAvatarOptions() : this.showAvatarOptions()));\n }, this.showAvatarOptions = function() {\n ((((this.canShowOptions && !isShowingAvatarOptions())) && (this.$body.addClass(\"show-avatar-options\"), this.select(\"changePhotoSelector\").trigger(\"uiDropdownOpened\"))));\n }, this.hideAvatarOptions = function() {\n this.$body.removeClass(\"show-avatar-options\");\n }, this.showHeaderOptions = function() {\n ((((this.canShowOptions && !this.$body.hasClass(\"show-header-options\"))) && (this.$body.addClass(\"show-header-options\"), this.select(\"changeHeaderSelector\").trigger(\"uiDropdownOpened\"))));\n }, this.hideHeaderOptions = function() {\n this.$body.removeClass(\"show-header-options\");\n }, this.hideOptions = function() {\n this.hideHeaderOptions(), this.hideAvatarOptions();\n }, this.after(\"initialize\", function() {\n this.$body = $(\"body\"), this.JSBNG__on(\"click\", {\n editAvatarSelector: this.toggleAvatarOptions,\n editHeaderSelector: this.showHeaderOptions,\n profileHeaderMaskSelector: this.hideOptions,\n cancelOptionsSelector: this.hideOptions\n }), this.JSBNG__on(\"uiEditProfileStart\", this.optionsEnabled), this.JSBNG__on(\"uiEditProfileEnd\", this.optionsDisabled), this.JSBNG__on(\"uiProfileHeaderUpdated\", this.hideOptions), this.JSBNG__on(\"uiProfileAvatarUpdated\", this.hideOptions), this.JSBNG__on(JSBNG__document, \"uiShortcutEsc\", this.hideOptions), this.JSBNG__on(JSBNG__document, \"uiShowEditAvatarOptions\", this.showAvatarOptions);\n });\n };\n;\n var compose = require(\"core/compose\"), withUploadPhotoAffordance = require(\"app/ui/with_upload_photo_affordance\"), isShowingAvatarOptions = require(\"app/utils/is_showing_avatar_options\");\n module.exports = withInlineImageOptions;\n});\ndefine(\"app/ui/with_inline_image_editing\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/utils/hide_or_show_divider\",\"app/ui/with_inline_image_options\",], function(module, require, exports) {\n function withInlineImageEditing() {\n compose.mixin(this, [withInlineImageOptions,]), this.defaultAttrs({\n headerImageUploadDialogSelector: \"#header_image_upload_dialog\",\n headerCropperSelector: \"#header_image_upload_dialog .cropper-mask\",\n avatarSelector: \".avatar:first\",\n avatarContainerSelector: \".profile-picture:first\",\n profileHeaderInnerSelector: \".profile-header-inner:first\",\n avatarPlaceholderSelector: \".profile-picture-placeholder\",\n removeFromPreview: \".profile-editing-dialogs, .edit-header-target, input, label, textarea, .controls, .inline-edit-icon\"\n }), this.editHeaderModeOn = function() {\n this.addPreviewToHeaderUpload(), this.$body.addClass(\"profile-header-editing\"), this.hideHeaderOptions();\n }, this.editHeaderModeOff = function() {\n this.$body.removeClass(\"profile-header-editing\"), this.removeHeaderPreview();\n }, this.removeHeaderPreview = function() {\n ((this.$headerPreview && this.$headerPreview.remove()));\n }, this.addPreviewToHeaderUpload = function() {\n this.removeHeaderPreview(), this.trigger(\"uiNeedsTextPreview\");\n var a = this.$headerPreview = this.$node.clone();\n a.JSBNG__find(this.attr.profileHeaderInnerSelector).css(\"background-image\", \"none\"), hideOrShowDivider(a, this.attr.dividerSelector, this.attr.locationSelector, this.attr.urlProfileFieldSelector), a.JSBNG__find(this.attr.removeFromPreview).remove(), this.select(\"headerCropperSelector\").prepend(a);\n }, this.updateImage = function(a, b) {\n var c = ((\"data:image/jpeg;base64,\" + b.fileData));\n ((((b.uploadType === \"header\")) ? this.updateHeader(c) : ((((b.uploadType === \"avatar\")) && (this.select(\"avatarSelector\").attr(\"src\", c), this.showAvatar())))));\n }, this.updateHeader = function(a) {\n this.select(\"profileHeaderInnerSelector\").css({\n \"background-size\": \"100% 100%\",\n \"background-image\": ((((\"url(\" + a)) + \")\"))\n }), this.trigger(\"uiProfileHeaderUpdated\");\n }, this.useDefaultHeader = function() {\n var a = this.select(\"profileHeaderInnerSelector\").attr(\"data-default-background-image\");\n this.updateHeader(a);\n }, this.showAvatar = function() {\n this.select(\"avatarContainerSelector\").removeClass(\"hidden\"), this.select(\"avatarPlaceholderSelector\").addClass(\"hidden\"), this.trigger(\"uiProfileAvatarUpdated\");\n }, this.showAvatarPlaceholder = function() {\n this.select(\"avatarContainerSelector\").addClass(\"hidden\"), this.select(\"avatarPlaceholderSelector\").removeClass(\"hidden\"), this.trigger(\"uiProfileAvatarUpdated\");\n }, this.showDefaultImage = function(a, b) {\n ((this.isOfType(\"avatar\", b) && this.showAvatarPlaceholder())), ((this.isOfType(\"header\", b) && this.useDefaultHeader()));\n }, this.isOfType = function(a, b) {\n return ((((b && b.sourceEventData)) && ((b.sourceEventData.uploadType === a))));\n }, this.after(\"initialize\", function() {\n this.$body = $(\"body\"), this.JSBNG__on(\"uiDialogOpened\", {\n headerImageUploadDialogSelector: this.editHeaderModeOn\n }), this.JSBNG__on(\"uiDialogClosed\", {\n headerImageUploadDialogSelector: this.editHeaderModeOff\n }), this.JSBNG__on(JSBNG__document, \"uiImageSave\", this.updateImage), this.JSBNG__on(JSBNG__document, \"dataDeleteImageSuccess\", this.showDefaultImage);\n });\n };\n;\n var compose = require(\"core/compose\"), hideOrShowDivider = require(\"app/utils/hide_or_show_divider\"), withInlineImageOptions = require(\"app/ui/with_inline_image_options\");\n module.exports = withInlineImageEditing;\n});\ndefine(\"app/ui/inline_profile_editing\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/i18n\",\"core/clock\",\"app/utils/hide_or_show_divider\",\"app/ui/with_scrollbar_width\",\"app/utils/params\",\"app/ui/tooltips\",\"app/ui/with_inline_image_editing\",], function(module, require, exports) {\n function inlineProfileEditing() {\n this.defaultAttrs({\n cancelProfileButtonSelector: \".cancel-profile-btn\",\n saveProfileButtonSelector: \".save-profile-btn\",\n saveProfileFooterSelector: \".save-profile-footer\",\n bioProfileFieldSelector: \".bio.profile-field\",\n locationSelector: \".JSBNG__location\",\n urlProfileFieldSelector: \".url .profile-field\",\n dividerSelector: \".location-and-url .divider\",\n anchorSelector: \"a\",\n ignoreInTabIndex: \".js-tooltip\",\n tooltipSelector: \".js-tooltip\",\n updateSaveMessage: _(\"Your profile has been saved.\"),\n scrollResetDuration: 300\n }), this.saveProfile = function(a, b) {\n a.preventDefault(), this.trigger(\"uiEditProfileSaveFields\"), this.trigger(\"uiEditProfileSave\");\n }, this.cancelProfileEditing = function(a, b) {\n a.preventDefault();\n var c = $(a.target).attr(\"data-scribe-element\");\n this.trigger(\"uiEditProfileCancel\", {\n scribeContext: {\n element: c\n }\n }), this.trigger(\"uiEditProfileEnd\");\n }, this.isEditing = function() {\n return this.$body.hasClass(\"profile-editing\");\n }, this.editModeOn = function() {\n $(\"html, body\").animate({\n scrollTop: 0\n }, this.attr.scrollResetDuration), this.calculateScrollbarWidth(), this.$body.addClass(\"profile-editing\");\n }, this.editModeOff = function() {\n this.$body.removeClass(\"profile-editing\");\n }, this.fieldEditingModeOn = function() {\n this.$body.addClass(\"profile-field-editing\"), this.select(\"dividerSelector\").show();\n }, this.fieldEditingModeOff = function() {\n this.$body.removeClass(\"profile-field-editing\"), hideOrShowDivider(this.$node, this.attr.dividerSelector, this.attr.locationSelector, this.attr.urlProfileFieldSelector);\n }, this.catchAnchorClicks = function(a) {\n ((this.isEditing() && a.preventDefault()));\n }, this.disabledTabbing = function() {\n this.select(\"ignoreInTabIndex\").attr(\"tabindex\", \"-1\");\n }, this.enableTabbing = function() {\n this.select(\"ignoreInTabIndex\").removeAttr(\"tabindex\");\n }, this.saving = function() {\n this.select(\"saveProfileFooterSelector\").addClass(\"saving\");\n }, this.handleError = function(a, b) {\n this.doneSaving(), this.fieldEditingModeOn(), this.trigger(\"uiShowProfileEditError\", b);\n }, this.savingError = function(a, b) {\n clock.setTimeoutEvent(\"uiHandleSaveError\", 1000, {\n message: b.message\n });\n }, this.saveSuccess = function(a, b) {\n this.doneSaving(), this.trigger(\"uiShowMessage\", {\n message: this.attr.updateSaveMessage\n });\n }, this.doneSaving = function() {\n this.select(\"saveProfileFooterSelector\").removeClass(\"saving\");\n }, this.disableTooltips = function() {\n this.select(\"tooltipSelector\").tooltip(\"disable\").tooltip(\"hide\");\n }, this.enableTooltips = function() {\n this.select(\"tooltipSelector\").tooltip(\"enable\");\n }, this.finishedProcessing = function(a, b) {\n ((((b && b.linkified_description)) && this.select(\"bioProfileFieldSelector\").html(b.linkified_description))), ((((b && b.user_url)) && this.select(\"urlProfileFieldSelector\").html(b.user_url))), this.trigger(\"uiEditProfileEnd\");\n }, this.after(\"initialize\", function() {\n this.$body = $(\"body\"), this.JSBNG__on(\"click\", {\n cancelProfileButtonSelector: this.cancelProfileEditing,\n saveProfileButtonSelector: this.saveProfile,\n anchorSelector: this.catchAnchorClicks\n }), this.JSBNG__on(\"uiEditProfileStart\", this.editModeOn), this.JSBNG__on(\"uiEditProfileEnd\", this.editModeOff), this.JSBNG__on(\"uiEditProfileStart\", this.disableTooltips), this.JSBNG__on(\"uiEditProfileEnd\", this.enableTooltips), this.JSBNG__on(\"uiEditProfileStart\", this.fieldEditingModeOn), this.JSBNG__on(\"uiEditProfileSave\", this.fieldEditingModeOff), this.JSBNG__on(\"uiEditProfileEnd\", this.fieldEditingModeOff), this.JSBNG__on(\"uiEditProfileStart\", this.disabledTabbing), this.JSBNG__on(\"uiEditProfileEnd\", this.enableTabbing), this.JSBNG__on(JSBNG__document, \"dataInlineEditSaveStarted\", this.saving), this.JSBNG__on(JSBNG__document, \"dataInlineEditSaveSuccess\", this.saveSuccess), this.JSBNG__on(JSBNG__document, \"dataInlineEditSaveError\", this.savingError), this.JSBNG__on(JSBNG__document, \"uiHandleSaveError\", this.handleError), this.JSBNG__on(JSBNG__document, \"dataInlineEditSaveSuccess\", this.finishedProcessing);\n });\n };\n;\n var defineComponent = require(\"core/component\"), _ = require(\"core/i18n\"), clock = require(\"core/clock\"), hideOrShowDivider = require(\"app/utils/hide_or_show_divider\"), withScrollbarWidth = require(\"app/ui/with_scrollbar_width\"), params = require(\"app/utils/params\"), Tooltips = require(\"app/ui/tooltips\"), withInlineImageEditing = require(\"app/ui/with_inline_image_editing\");\n module.exports = defineComponent(inlineProfileEditing, withScrollbarWidth, withInlineImageEditing);\n});\ndefine(\"app/data/settings\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_auth_token\",\"app/data/with_data\",], function(module, require, exports) {\n var defineComponent = require(\"core/component\"), withAuthToken = require(\"app/data/with_auth_token\"), withData = require(\"app/data/with_data\");\n var SettingsData = defineComponent(settingsData, withData, withAuthToken);\n function settingsData() {\n this.defaultAttrs({\n ajaxTimeout: 6000,\n noShowError: true\n });\n this.verifyUsername = function(JSBNG__event, data) {\n this.get({\n url: \"/users/username_available\",\n eventData: data,\n data: data,\n success: \"dataUsernameResult\",\n error: \"dataUsernameError\"\n });\n };\n this.verifyEmail = function(JSBNG__event, data) {\n this.get({\n url: \"/users/email_available\",\n eventData: data,\n data: data,\n success: \"dataEmailResult\",\n error: \"dataEmailError\"\n });\n };\n this.cancelPendingEmail = function(JSBNG__event, data) {\n var success = function(json) {\n this.trigger(\"dataCancelEmailSuccess\", json);\n };\n var error = function(request) {\n this.trigger(\"dataCancelEmailFailure\", request);\n };\n this.post({\n url: data.url,\n data: this.addAuthToken(),\n success: success.bind(this),\n error: error.bind(this)\n });\n };\n this.resendPendingEmail = function(JSBNG__event, data) {\n var success = function(json) {\n this.trigger(\"dataResendEmailSuccess\", json);\n };\n var error = function(request) {\n this.trigger(\"dataResendEmailFailure\", request);\n };\n this.post({\n url: data.url,\n data: this.addAuthToken(),\n success: success.bind(this),\n error: error.bind(this)\n });\n };\n this.resendPassword = function(JSBNG__event, data) {\n this.post({\n url: data.url,\n data: this.addAuthToken(),\n dataType: \"text\",\n success: function() {\n this.trigger(\"dataForgotPasswordSuccess\", {\n });\n }.bind(this)\n });\n };\n this.deleteGeoData = function(JSBNG__event) {\n var error = function(request) {\n this.trigger(\"dataGeoDeletionError\", {\n });\n };\n this.post({\n url: \"/account/delete_location_data\",\n dataType: \"text\",\n data: this.addAuthToken(),\n error: error.bind(this)\n });\n };\n this.revokeAuthority = function(JSBNG__event, data) {\n this.post({\n url: \"/oauth/revoke\",\n eventData: data,\n data: data,\n success: \"dataOAuthRevokeResultSuccess\",\n error: \"dataOAuthRevokeResultFailure\"\n });\n };\n this.uploadImage = function(JSBNG__event, data) {\n var uploadTypeToUrl = {\n header: \"/settings/profile/upload_profile_header\",\n avatar: \"/settings/profile/profile_image_update\"\n };\n data.page_context = this.attr.pageName;\n data.section_context = this.attr.sectionName;\n this.post({\n url: uploadTypeToUrl[data.uploadType],\n eventData: data,\n data: data,\n success: \"dataImageEnqueued\",\n error: \"dataImageFailedToEnqueue\"\n });\n };\n this.checkImageUploadStatus = function(JSBNG__event, data) {\n var uploadTypeToUrl = {\n header: \"/settings/profile/check_header_processing_complete\",\n avatar: \"/settings/profile/swift_check_processing_complete\"\n };\n this.get({\n url: uploadTypeToUrl[data.uploadType],\n eventData: data,\n data: data,\n headers: {\n \"X-Retry-After\": true\n },\n success: \"dataHasImageUploadStatus\",\n error: \"dataFailedToGetImageUploadStatus\"\n });\n };\n this.deleteImage = function(JSBNG__event, data) {\n var uploadTypeToUrl = {\n header: \"/settings/profile/destroy_profile_header\",\n avatar: \"/settings/profile\"\n };\n data.page_context = this.attr.pageName;\n data.section_context = this.attr.sectionName;\n this.destroy({\n url: uploadTypeToUrl[data.uploadType],\n eventData: data,\n data: data,\n success: \"dataDeleteImageSuccess\",\n error: \"dataDeleteImageFailure\"\n });\n };\n this.resendConfirmationEmail = function(JSBNG__event, data) {\n this.post({\n url: \"/account/resend_confirmation_email\",\n eventData: data,\n data: data,\n success: \"dataResendConfirmationEmailSuccess\",\n error: \"dataResendConfirmationEmailError\"\n });\n };\n this.tweetExport = function(JSBNG__event, data) {\n this.post({\n url: \"/account/request_tweet_export\",\n eventData: data,\n data: data,\n success: \"dataTweetExportSuccess\",\n error: \"dataTweetExportError\"\n });\n };\n this.tweetExportResend = function(JSBNG__event, data) {\n this.post({\n url: \"/account/request_tweet_export_resend\",\n eventData: data,\n data: data,\n success: \"dataTweetExportResendSuccess\",\n error: \"dataTweetExportResendError\"\n });\n };\n this.tweetExportIncrRateLimiter = function(JSBNG__event, data) {\n this.post({\n url: \"/account/request_tweet_export_download\",\n eventData: data,\n data: data,\n success: \"dataTweetExportDownloadSuccess\",\n error: \"dataTweetExportDownloadError\"\n });\n };\n this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiUsernameChange\", this.verifyUsername);\n this.JSBNG__on(\"uiEmailChange\", this.verifyEmail);\n this.JSBNG__on(\"uiCancelPendingEmail\", this.cancelPendingEmail);\n this.JSBNG__on(\"uiResendPendingEmail\", this.resendPendingEmail);\n this.JSBNG__on(\"uiForgotPassword\", this.resendPassword);\n this.JSBNG__on(\"uiDeleteGeoData\", this.deleteGeoData);\n this.JSBNG__on(\"uiRevokeClick\", this.revokeAuthority);\n this.JSBNG__on(\"uiImageSave\", this.uploadImage);\n this.JSBNG__on(\"uiDeleteImage\", this.deleteImage);\n this.JSBNG__on(\"uiCheckImageUploadStatus\", this.checkImageUploadStatus);\n this.JSBNG__on(\"uiTweetExportButtonClicked\", this.tweetExport);\n this.JSBNG__on(\"uiTweetExportResendButtonClicked\", this.tweetExportResend);\n this.JSBNG__on(\"uiTweetExportConfirmEmail\", this.resendConfirmationEmail);\n this.JSBNG__on(\"uiTweetExportIncrRateLimiter\", this.tweetExportIncrRateLimiter);\n this.JSBNG__on(\"dataValidateUsername\", this.verifyUsername);\n this.JSBNG__on(\"dataValidateEmail\", this.verifyEmail);\n });\n };\n;\n module.exports = SettingsData;\n});\ndefine(\"app/ui/profile_edit_param\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/params\",], function(module, require, exports) {\n function profileEditParam() {\n this.hasEditParam = function() {\n return !!params.fromQuery(window.JSBNG__location).edit;\n }, this.checkEditParam = function() {\n ((this.hasEditParam() && this.trigger(\"uiEditProfileInitialize\", {\n scribeElement: \"edit_param\"\n })));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiSwiftLoaded uiPageChanged\", this.checkEditParam);\n });\n };\n;\n var defineComponent = require(\"core/component\"), params = require(\"app/utils/params\");\n module.exports = defineComponent(profileEditParam);\n});\ndefine(\"app/ui/alert_banner_to_message_drawer\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function alertBannerToMessageDrawer() {\n this.showMessage = function(a, b) {\n this.trigger(\"uiShowMessage\", b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiAlertBanner\", this.showMessage);\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(alertBannerToMessageDrawer);\n});\ndefine(\"app/boot/inline_edit\", [\"module\",\"require\",\"exports\",\"app/ui/inline_edit\",\"app/data/async_profile\",\"app/ui/dialogs/profile_image_upload_dialog\",\"app/ui/dialogs/profile_edit_error_dialog\",\"app/ui/dialogs/profile_confirm_image_delete_dialog\",\"app/ui/droppable_image\",\"app/ui/profile_image_monitor\",\"app/data/inline_edit_scribe\",\"app/data/settings/profile_image_upload_scribe\",\"app/data/drag_and_drop_scribe\",\"app/ui/settings/change_photo\",\"app/ui/image_uploader\",\"app/ui/inline_profile_editing_initializor\",\"app/ui/inline_profile_editing\",\"app/data/settings\",\"app/utils/image\",\"app/ui/forms/input_with_placeholder\",\"app/ui/profile_edit_param\",\"app/ui/alert_banner_to_message_drawer\",\"core/i18n\",], function(module, require, exports) {\n var InlineEdit = require(\"app/ui/inline_edit\"), AsyncProfileData = require(\"app/data/async_profile\"), ProfileImageUploadDialog = require(\"app/ui/dialogs/profile_image_upload_dialog\"), ProfileEditErrorDialog = require(\"app/ui/dialogs/profile_edit_error_dialog\"), ProfileConfirmImageDeleteDialog = require(\"app/ui/dialogs/profile_confirm_image_delete_dialog\"), DroppableImage = require(\"app/ui/droppable_image\"), ProfileImageMonitor = require(\"app/ui/profile_image_monitor\"), InlineEditScribe = require(\"app/data/inline_edit_scribe\"), ProfileImageUploadScribe = require(\"app/data/settings/profile_image_upload_scribe\"), DragAndDropScribe = require(\"app/data/drag_and_drop_scribe\"), ChangePhoto = require(\"app/ui/settings/change_photo\"), ImageUploader = require(\"app/ui/image_uploader\"), InlineProfileEditingInitializor = require(\"app/ui/inline_profile_editing_initializor\"), InlineProfileEditing = require(\"app/ui/inline_profile_editing\"), SettingsData = require(\"app/data/settings\"), image = require(\"app/utils/image\"), InputWithPlaceholder = require(\"app/ui/forms/input_with_placeholder\"), ProfileEditParam = require(\"app/ui/profile_edit_param\"), AlertBannerToMessageDrawer = require(\"app/ui/alert_banner_to_message_drawer\"), _ = require(\"core/i18n\");\n module.exports = function(b) {\n InlineProfileEditingInitializor.attachTo(\".profile-page-header\", b);\n if (image.supportsCropper()) {\n AlertBannerToMessageDrawer.attachTo(JSBNG__document), ProfileEditErrorDialog.attachTo(\"#profile_edit_error_dialog\", {\n JSBNG__top: 0,\n left: 0\n }), InlineProfileEditing.attachTo(\".profile-page-header\", b), SettingsData.attachTo(JSBNG__document, b), AsyncProfileData.attachTo(JSBNG__document, b), InlineEdit.attachTo(\".profile-page-header .editable-group\"), InputWithPlaceholder.attachTo(\".profile-page-header .placeholding-input\", {\n placeholder: \".placeholder\",\n elementType: \"input,textarea\"\n }), InlineEditScribe.attachTo(JSBNG__document), ProfileImageUploadScribe.attachTo(\"#profile_image_upload_dialog\"), ProfileImageUploadScribe.attachTo(\"#header_image_upload_dialog\"), DragAndDropScribe.attachTo(JSBNG__document);\n var c = {\n scribeContext: {\n component: \"profile_image_upload\"\n }\n };\n ProfileConfirmImageDeleteDialog.attachTo(\"#avatar_confirm_remove_dialog\", {\n JSBNG__top: 0,\n left: 0,\n uploadType: \"avatar\"\n }), ImageUploader.attachTo(\".avatar-settings .uploader-image .photo-selector\", {\n maxSizeInBytes: 10485760,\n fileTooBigMessage: _(\"Please select a profile image that is less than 10 MB.\"),\n uploadType: \"avatar\",\n eventData: c\n }), ProfileImageUploadDialog.attachTo(\"#profile_image_upload_dialog\", {\n uploadType: \"avatar\",\n eventData: c\n }), ChangePhoto.attachTo(\"#choose-photo\", {\n uploadType: \"avatar\",\n alwaysOpen: !0,\n confirmDelete: !0,\n eventData: c\n }), DroppableImage.attachTo(\".profile-page-header .profile-picture\", {\n uploadType: \"avatar\",\n eventData: c\n }), ProfileImageMonitor.attachTo(\".uploader-avatar\", {\n eventData: {\n scribeContext: {\n component: \"form\"\n }\n }\n });\n var d = {\n scribeContext: {\n component: \"header_image_upload\"\n }\n };\n ProfileConfirmImageDeleteDialog.attachTo(\"#header_confirm_remove_dialog\", {\n JSBNG__top: 0,\n left: 0,\n uploadType: \"header\"\n }), ImageUploader.attachTo(\".header-settings .uploader-image .photo-selector\", {\n fileNameString: \"user[profile_header_image_name]\",\n fileDataString: \"user[profile_header_image]\",\n fileInputString: \"user[profile_header_image]\",\n uploadType: \"header\",\n maxSizeInBytes: 10240000,\n fileTooBigMessage: _(\"Please select an image that is less than 10MB.\"),\n onError: function() {\n window.JSBNG__scrollTo(0, 0);\n },\n eventData: d\n }), ProfileImageUploadDialog.attachTo(\"#header_image_upload_dialog\", {\n uploadType: \"header\",\n maskPadding: 0,\n JSBNG__top: 0,\n left: 0,\n maximumWidth: 1252,\n maximumHeight: 626,\n imageNameSelector: \"#choose-header div.photo-selector input.file-name\",\n imageDataSelector: \"#choose-header div.photo-selector input.file-data\",\n eventData: d\n }), ChangePhoto.attachTo(\"#choose-header\", {\n uploadType: \"header\",\n toggler: \"#profile_header_upload\",\n chooseExistingSelector: \"#header-choose-existing\",\n chooseWebcamSelector: \"#header-choose-webcam\",\n deleteImageSelector: \"#header-delete-image\",\n alwaysOpen: !0,\n confirmDelete: !0,\n eventData: d\n }), DroppableImage.attachTo(\".profile-page-header .profile-header-inner\", {\n uploadType: \"header\",\n eventData: d\n }), ProfileImageMonitor.attachTo(\".uploader-header\", {\n uploadType: \"header\",\n isProcessingCookie: \"header_processing_complete_key\",\n thumbnailSelector: \"#header_image_preview\",\n deleteButtonSelector: \"#remove_header\",\n deleteFormSelector: \"#profile_banner_delete_form\",\n eventData: {\n scribeContext: {\n component: \"form\"\n }\n }\n });\n }\n ;\n ;\n ProfileEditParam.attachTo(\".profile-page-header\");\n };\n});\ndefine(\"app/ui/profile/canopy\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",], function(module, require, exports) {\n function profileCanopy() {\n this.defaultAttrs({\n verticalThreshold: 280,\n retractedCanopyClass: \"retracted\"\n }), this.belowVerticalThreshhold = function() {\n return ((this.$window.scrollTop() >= this.attr.verticalThreshold));\n }, this.determineCanopyPresence = function() {\n var a = this.$node.hasClass(this.attr.retractedCanopyClass);\n ((this.belowVerticalThreshhold() ? ((a && this.trigger(\"uiShowProfileCanopy\"))) : ((a || this.trigger(\"uiHideProfileCanopy\")))));\n }, this.showCanopyAfterModal = function() {\n ((this.belowVerticalThreshhold() && this.showProfileCanopy()));\n }, this.hideCanopyBeforeModal = function() {\n ((this.belowVerticalThreshhold() && this.hideProfileCanopy()));\n }, this.showProfileCanopy = function() {\n this.$node.removeClass(this.attr.retractedCanopyClass);\n }, this.hideProfileCanopy = function() {\n this.$node.addClass(this.attr.retractedCanopyClass);\n }, this.after(\"initialize\", function() {\n this.$window = $(window), this.$node.removeClass(\"hidden\"), this.JSBNG__on(\"uiShowProfileCanopy\", this.showProfileCanopy), this.JSBNG__on(\"uiHideProfileCanopy\", this.hideProfileCanopy), this.JSBNG__on(window, \"JSBNG__scroll\", utils.throttle(this.determineCanopyPresence.bind(this))), this.JSBNG__on(JSBNG__document, \"uiShowProfilePopup\", this.hideCanopyBeforeModal), this.JSBNG__on(JSBNG__document, \"uiCloseProfilePopup\", this.showCanopyAfterModal), this.determineCanopyPresence();\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\");\n module.exports = defineComponent(profileCanopy);\n});\ndefine(\"app/data/profile_canopy_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_scribe\",], function(module, require, exports) {\n function profileCanopyScribe() {\n this.defaultAttrs({\n scribeContext: {\n component: \"profile_canopy\"\n }\n }), this.scribeProfileCanopy = function(a, b) {\n var c = utils.merge(this.attr.scribeContext, {\n action: \"impression\"\n });\n this.scribe(c, b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiShowProfileCanopy\", this.scribeProfileCanopy);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withScribe = require(\"app/data/with_scribe\"), ProfileCanopyScribe = defineComponent(profileCanopyScribe, withScribe);\n module.exports = ProfileCanopyScribe;\n});\ndefine(\"app/ui/profile/head\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/i18n\",\"app/ui/with_user_actions\",\"app/ui/with_profile_stats\",\"app/ui/with_handle_overflow\",\"core/utils\",], function(module, require, exports) {\n function profileHead() {\n this.defaultAttrs({\n profileHead: !0,\n isCanopy: !1,\n editProfileButtonSelector: \".inline-edit-profile-btn\",\n nonEmptyAvatarSelector: \".avatar:not(.empty-avatar)\",\n emptyAvatarSelector: \".empty-avatar\",\n overflowContainer: \".profile-header-inner\",\n itemType: \"user\",\n directMessages: \".dm-button\",\n urlSelector: \".url a\"\n }), this.showAvatarModal = function(a) {\n a.preventDefault(), ((this.isEditing() || (this.trigger(\"uiAvatarClicked\"), this.trigger(a.target, \"uiOpenGallery\", {\n title: _(\"@{{screenName}}'s profile photo\", {\n screenName: this.attr.profile_user.screen_name\n })\n }))));\n }, this.emptyAvatarClicked = function(a) {\n if (!this.isEditing()) {\n a.preventDefault(), a.stopImmediatePropagation();\n var b = $(a.target).attr(\"data-scribe-element\");\n $(JSBNG__document).one(\"uiEditProfileStart\", this.showAvatarOptions.bind(this)), this.trigger(\"uiEditProfileInitialize\", {\n scribeElement: b\n });\n }\n ;\n ;\n }, this.showAvatarOptions = function() {\n this.trigger(\"uiShowEditAvatarOptions\");\n }, this.editProfile = function(a) {\n a.preventDefault();\n var b = $(a.target).attr(\"data-scribe-element\");\n this.trigger(JSBNG__document, \"uiEditProfileInitialize\", {\n scribeElement: b\n });\n }, this.isEditing = function() {\n return $(\"body\").hasClass(\"profile-editing\");\n }, this.addGlowToEnvelope = function(a, b) {\n this.select(\"directMessages\").addClass(\"new\");\n }, this.removeGlowFromEnvelope = function(a, b) {\n this.select(\"directMessages\").removeClass(\"new\");\n }, this.addCountToEnvelope = function(a, b) {\n var c = parseInt(b.msgCount, 10);\n if (isNaN(c)) {\n return;\n }\n ;\n ;\n var d = \"with-count\";\n ((((c > 9)) ? d += \" with-count-2\" : ((((c > 99)) && (d += \" with-count-3\"))))), this.removeCountFromEnvelope(a, c), this.select(\"directMessages\").addClass(d), this.select(\"directMessages\").JSBNG__find(\".dm-new\").text(c);\n }, this.removeCountFromEnvelope = function(a, b) {\n this.select(\"directMessages\").removeClass(\"with-count with-count-2 with-count-3\");\n }, this.urlClicked = function() {\n this.trigger(\"uiUrlClicked\");\n }, this.after(\"initialize\", function() {\n this.checkForOverflow(this.select(\"overflowContainer\")), this.JSBNG__on(\"click\", {\n nonEmptyAvatarSelector: this.showAvatarModal,\n emptyAvatarSelector: this.emptyAvatarClicked,\n editProfileButtonSelector: this.editProfile,\n urlSelector: this.urlClicked\n }), this.JSBNG__on(JSBNG__document, \"dataUserHasUnreadDMs dataUserHasUnreadDMsWithCount\", this.addGlowToEnvelope), this.JSBNG__on(JSBNG__document, \"dataUserHasNoUnreadDMs dataUserHasNoUnreadDMsWithCount\", this.removeGlowFromEnvelope), this.JSBNG__on(JSBNG__document, \"dataUserHasUnreadDMsWithCount\", this.addCountToEnvelope), this.JSBNG__on(JSBNG__document, \"dataUserHasNoUnreadDMsWithCount\", this.removeCountFromEnvelope), ((this.attr.isCanopy && this.JSBNG__on(\"uiHideProfileCanopy\", this.hideDropdown))), this.attr.eventData = utils.merge(((this.attr.eventData || {\n })), {\n scribeContext: this.attr.scribeContext,\n profileHead: this.attr.profileHead\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), _ = require(\"core/i18n\"), withUserActions = require(\"app/ui/with_user_actions\"), withProfileStats = require(\"app/ui/with_profile_stats\"), withHandleOverflow = require(\"app/ui/with_handle_overflow\"), utils = require(\"core/utils\");\n module.exports = defineComponent(profileHead, withUserActions, withProfileStats, withHandleOverflow);\n});\ndefine(\"app/data/profile_head_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_scribe\",], function(module, require, exports) {\n function profileHeadScribe() {\n this.after(\"initialize\", function() {\n this.scribeOnEvent(\"uiAvatarClicked\", {\n element: \"avatar\",\n action: \"click\"\n }), this.scribeOnEvent(\"uiUrlClicked\", {\n element: \"url\",\n action: \"click\"\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(profileHeadScribe, withScribe);\n});\ndefine(\"app/ui/profile/social_proof\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_item_actions\",], function(module, require, exports) {\n function profileSocialProof() {\n this.defaultAttrs({\n itemType: \"user\"\n }), this.after(\"initialize\", function() {\n this.trigger(\"uiHasProfileSocialProof\");\n });\n };\n;\n var defineComponent = require(\"core/component\"), withItemActions = require(\"app/ui/with_item_actions\"), ProfileSocialProof = defineComponent(profileSocialProof, withItemActions);\n module.exports = ProfileSocialProof;\n});\ndefine(\"app/data/profile_social_proof_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_scribe\",], function(module, require, exports) {\n function profileSocialProofScribe() {\n this.defaultAttrs({\n scribeContext: {\n component: \"profile_follow_card\"\n }\n }), this.scribeProfileSocialProof = function(a, b) {\n var c = utils.merge(this.attr.scribeContext, {\n element: \"social_proof\",\n action: \"impression\"\n });\n this.scribe(c, b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiHasProfileSocialProof\", this.scribeProfileSocialProof);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withScribe = require(\"app/data/with_scribe\"), ProfileSocialProofScribe = defineComponent(profileSocialProofScribe, withScribe);\n module.exports = ProfileSocialProofScribe;\n});\ndefine(\"app/ui/media/card_thumbnails\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/utils/image_thumbnail\",\"app/utils/image/image_loader\",\"core/i18n\",], function(module, require, exports) {\n function cardThumbnails() {\n var a = 800, b = {\n NOT_LOADED: \"not-loaded\",\n LOADING: \"loading\",\n LOADED: \"loaded\"\n };\n this.hasMoreItems = !0, this.defaultAttrs({\n profileUser: !1,\n mediaGrid: !1,\n mediaGridOpen: !1,\n gridPushState: !1,\n pushStateUrl: \"/\",\n defaultGalleryTitle: _(\"Media Gallery\"),\n viewAllSelector: \".list-link\",\n thumbnailSelector: \".media-thumbnail\",\n thumbnailContainerSelector: \".photo-list\",\n thumbnailPlaceholderSelector: \".thumbnail-placeholder.first\",\n thumbnailNotLoadedSelector: ((((\".media-thumbnail[data-load-status=\\\"\" + b.NOT_LOADED)) + \"\\\"]\")),\n thumbnailType: \"thumb\",\n thumbnailSize: 90,\n thumbnailsVisible: 6,\n showAllInlineMedia: !1,\n loadOnEventName: \"uiLoadThumbnails\",\n dataEvents: {\n requestItems: \"uiWantsMoreMediaTimelineItems\",\n gotItems: \"dataGotMoreMediaTimelineItems\"\n },\n defaultRequestData: {\n }\n }), this.thumbs = function() {\n return this.select(\"thumbnailSelector\");\n }, this.getMaxId = function() {\n var a = this.thumbs();\n if (a.length) {\n return a.last().attr(\"data-status-id\");\n }\n ;\n ;\n }, this.shouldGetMoreItems = function(a) {\n var b = $(a.target);\n if (b.attr(\"data-paged\")) {\n return;\n }\n ;\n ;\n this.getMoreItems();\n }, this.getMoreItems = function() {\n if (!this.hasMoreItems) {\n return;\n }\n ;\n ;\n var a = this.thumbs();\n a.attr(\"data-paged\", !0), this.trigger(JSBNG__document, this.attr.dataEvents.requestItems, utils.merge(this.attr.defaultRequestData, {\n max_id: this.getMaxId()\n }));\n }, this.gotMoreItems = function(a, b) {\n if (((b.thumbs_html && $.trim(b.thumbs_html).length))) {\n var c = (($.isArray(b.thumbs_html) ? $(b.thumbs_html.join(\"\")) : $(b.thumbs_html)));\n this.appendItems(c);\n }\n else this.hasMoreItems = !1;\n ;\n ;\n this.trigger(JSBNG__document, \"dataGotMoreMediaItems\", b), ((((((this.select(\"thumbnailSelector\").length < this.attr.thumbnailsVisible)) && this.hasMoreItems)) && this.getMoreItems()));\n }, this.appendItems = function(a) {\n ((this.attr.gridPushState && (a.addClass(\"js-nav\"), a.attr(\"href\", this.attr.pushStateUrl)))), this.select(\"thumbnailPlaceholderSelector\").before(a), this.renderVisible();\n }, this.renderVisible = function() {\n var a = this.select(\"thumbnailSelector\").slice(0, this.attr.thumbnailsVisible), b = a.filter(this.attr.thumbnailNotLoadedSelector);\n if (b.length) {\n this.loadThumbs(b);\n var c = {\n thumbnails: []\n };\n b.each(function(a, b) {\n c.thumbnails.push($(b).attr(\"data-url\"));\n }), this.trigger(\"uiMediaThumbnailsVisible\", c);\n }\n else ((((a.length > 0)) && this.showThumbs()));\n ;\n ;\n var c = {\n thumbnails: []\n };\n b.each(function(a, b) {\n c.thumbnails.push($(b).attr(\"data-url\"));\n }), this.trigger(\"uiMediaThumbnailsVisible\", c);\n }, this.loadThumbs = function(a) {\n a.attr(\"data-load-status\", b.LOADING), a.each(this.loadThumb.bind(this));\n }, this.loadThumb = function(a, b) {\n var c = $(b), d = function(a) {\n this.loadThumbSuccess(c, a);\n }.bind(this), e = function() {\n this.loadThumbFail(c);\n }.bind(this);\n imageLoader.load(c.attr(((\"data-resolved-url-\" + this.attr.thumbnailType))), d, e);\n }, this.loadThumbSuccess = function(a, c) {\n a.attr(\"data-load-status\", b.LOADED), c.css(imageThumbnail.getThumbnailOffset(c.get(0).height, c.get(0).width, this.attr.thumbnailSize)), a.append(c), this.showThumbs();\n }, this.loadThumbFail = function(a) {\n a.remove(), this.renderVisible();\n }, this.showThumbs = function() {\n this.$node.show(), this.$node.attr(\"data-loaded\", !0), this.gridAutoOpen();\n }, this.thumbnailClick = function(a) {\n a.stopPropagation(), a.preventDefault(), this.openGallery(a.target);\n var b = $(a.target), c = ((b.hasClass(\"video\") ? \"video\" : \"photo\"));\n this.trigger(\"uiMediaThumbnailClick\", {\n url: b.attr(\"data-url\"),\n mediaType: c\n });\n }, this.gridAutoOpen = function() {\n ((((((this.attr.mediaGrid && this.attr.mediaGridOpen)) && this.thumbs().length)) && this.viewGrid()));\n }, this.viewAllClick = function(a) {\n ((this.attr.mediaGrid ? this.trigger(\"uiMediaViewAllClick\") : (this.openGallery(this.thumbs()[0]), a.preventDefault())));\n }, this.showThumbs = function() {\n this.$node.show(), this.$node.attr(\"data-loaded\", !0), ((this.attr.mediaGridOpen && (this.attr.mediaGridOpen = !1, this.viewGrid())));\n }, this.viewGrid = function() {\n this.openGrid(this.thumbs()[0]);\n }, this.openGrid = function(a) {\n this.trigger(a, \"uiOpenGrid\", {\n gridTitle: this.attr.defaultGalleryTitle,\n profileUser: this.attr.profileUser\n });\n }, this.openGallery = function(a) {\n this.trigger(a, \"uiOpenGallery\", {\n gridTitle: this.attr.defaultGalleryTitle,\n showGrid: this.attr.mediaGrid,\n profileUser: this.attr.profileUser\n });\n }, this.removeThumbs = function() {\n this.thumbs().remove();\n }, this.before(\"teardown\", this.removeThumbs), this.after(\"initialize\", function() {\n ((this.$node.attr(\"data-loaded\") || (this.$node.hide(), this.trigger(\"uiMediaThumbnailsVisible\", {\n thumbnails: []\n })))), this.JSBNG__on(\"click\", {\n thumbnailSelector: this.thumbnailClick,\n viewAllSelector: this.viewAllClick\n }), this.gridAutoOpen(), this.JSBNG__on(JSBNG__document, this.attr.dataEvents.gotItems, this.gotMoreItems), this.JSBNG__on(\"uiGalleryMediaLoad\", this.shouldGetMoreItems), ((this.attr.showAllInlineMedia ? this.getMoreItems() : this.JSBNG__on(JSBNG__document, \"uiReloadThumbs\", this.getMoreItems)));\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), imageThumbnail = require(\"app/utils/image_thumbnail\"), imageLoader = require(\"app/utils/image/image_loader\"), _ = require(\"core/i18n\"), CardThumbnails = defineComponent(cardThumbnails);\n module.exports = CardThumbnails;\n});\ndefine(\"app/data/media_timeline\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function mediaTimeline() {\n this.requestItems = function(a, b) {\n var c = {\n }, d = {\n since_id: b.since_id,\n max_id: b.max_id\n };\n this.get({\n url: this.attr.endpoint,\n headers: c,\n data: d,\n eventData: b,\n success: \"dataGotMoreMediaTimelineItems\",\n error: \"dataGotMoreMediaTimelineItemsError\"\n });\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(JSBNG__document, \"uiWantsMoreMediaTimelineItems\", this.requestItems);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(mediaTimeline, withData);\n});\ndefine(\"app/data/media_thumbnails_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function mediaThumbnailsScribe() {\n var a = /\\:[A-Z0-9_-]+$/i;\n this.scribeMediaThumbnailResults = function(b, c) {\n var d = c.thumbnails.length, e = ((d ? \"results\" : \"no_results\")), f = {\n item_count: d\n };\n ((d && (f.item_names = c.thumbnails.map(function(b) {\n return b.replace(a, \"\");\n })))), this.scribe({\n action: e\n }, c, f);\n }, this.scribeMediaThumbnailClick = function(b, c) {\n var d = {\n url: ((c.url && c.url.replace(a, \"\")))\n }, e = {\n element: c.mediaType,\n action: \"click\"\n };\n this.scribe(e, c, d);\n }, this.scribeMediaViewAllClick = function(a, b) {\n this.scribe({\n action: \"view_all\"\n }, b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiMediaGalleryResults\", this.scribeMediaThumbnailResults), this.JSBNG__on(JSBNG__document, \"uiMediaThumbnailsVisible\", this.scribeMediaThumbnailResults), this.JSBNG__on(JSBNG__document, \"uiMediaThumbnailClick\", this.scribeMediaThumbnailClick), this.JSBNG__on(JSBNG__document, \"uiMediaViewAllClick\", this.scribeMediaViewAllClick);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(mediaThumbnailsScribe, withScribe);\n});\ndefine(\"app/ui/suggested_users\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_user_actions\",\"app/ui/with_item_actions\",\"app/ui/with_interaction_data\",], function(module, require, exports) {\n function suggestedUsers() {\n this.defaultAttrs({\n closeSelector: \".js-close\",\n itemType: \"user\",\n userSelector: \".js-actionable-user\",\n eventMode: \"profileHead\",\n targetSelector: \"#suggested-users\",\n childSelector: \"\"\n }), this.getTimelineNodeSelector = function(a) {\n return ((((((this.attr.targetSelector + ((a ? ((((\"[data-item-id=\\\"\" + a)) + \"\\\"]\")) : \"\")))) + \" \")) + this.attr.childSelector));\n }, this.getTargetChildNode = function(a) {\n var b;\n return ((a[this.attr.eventMode] && ((((this.attr.eventMode === \"timeline_recommendations\")) ? b = this.$node.JSBNG__find(this.getTimelineNodeSelector(a.userId)) : b = this.$node)))), b;\n }, this.getTargetParentNode = function(a) {\n return ((((this.attr.eventMode === \"timeline_recommendations\")) ? $(a.target).closest(this.attr.childSelector) : this.$node));\n }, this.slideInContent = function(a, b) {\n var c = this.getTargetChildNode(b.sourceEventData);\n if (((((!c || ((c.length !== 1)))) || c.hasClass(\"has-content\")))) {\n return;\n }\n ;\n ;\n c.addClass(\"has-content\"), c.html(b.html), c.hide().slideDown();\n var d = [];\n c.JSBNG__find(this.attr.userSelector).map(function(a, b) {\n d.push(this.interactionData($(b), {\n position: a\n }));\n }.bind(this)), this.trigger(\"uiSuggestedUsersRendered\", {\n items: d,\n user_id: b.sourceEventData.userId\n });\n }, this.slideOutContent = function(a, b) {\n var c = this.getTargetParentNode(a);\n if (((c.length === 0))) {\n return;\n }\n ;\n ;\n c.slideUp(function() {\n c.empty(), c.removeClass(\"has-content\");\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataSuggestedUsersSuccess\", this.slideInContent), this.JSBNG__on(\"click\", {\n closeSelector: this.slideOutContent\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withUserActions = require(\"app/ui/with_user_actions\"), withItemActions = require(\"app/ui/with_item_actions\"), withInteractionData = require(\"app/ui/with_interaction_data\");\n module.exports = defineComponent(suggestedUsers, withUserActions, withItemActions, withInteractionData);\n});\ndefine(\"app/data/suggested_users\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",\"app/data/with_interaction_data_scribe\",], function(module, require, exports) {\n function suggestedUsersData() {\n var a = function(a) {\n return ((a && ((a.profileHead || a.timeline_recommendations))));\n };\n this.getHTML = function(b, c) {\n function d(a) {\n ((a.html && this.trigger(\"dataSuggestedUsersSuccess\", a)));\n };\n ;\n if (!a(c)) {\n return;\n }\n ;\n ;\n this.get({\n url: \"/i/users/suggested_users\",\n data: {\n user_id: c.userId,\n limit: 2,\n timeline_recommendations: !!c.timeline_recommendations\n },\n eventData: c,\n success: d.bind(this),\n error: \"dataSuggestedUsersFailure\"\n });\n }, this.scribeSuggestedUserResults = function(a, b) {\n this.scribeInteractiveResults({\n element: \"initial\",\n action: \"results\"\n }, b.items, b, {\n referring_event: \"initial\",\n profile_id: b.user_id\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiSuggestedUsersRendered\", this.scribeSuggestedUserResults), this.JSBNG__on(\"uiFollowAction\", this.getHTML);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), withInteractionDataScribe = require(\"app/data/with_interaction_data_scribe\");\n module.exports = defineComponent(suggestedUsersData, withData, withInteractionDataScribe);\n});\ndefine(\"app/ui/gallery/grid\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"core/i18n\",\"app/utils/image/image_loader\",\"app/ui/with_scrollbar_width\",], function(module, require, exports) {\n function grid() {\n this.defaultAttrs({\n thumbnailSize: 196,\n gridTitle: _(\"Media Gallery\"),\n gridPushState: !0,\n pushStateCloseUrl: \"/\",\n profileUser: !1,\n mediaSelector: \".media-thumbnail\",\n mediasSelector: \".photo-list\",\n gridHeaderSelector: \".grid-header\",\n gridTitleSelector: \".header-title\",\n gridSubTitleSelector: \".header-subtitle\",\n gridPicSelector: \".header-pic .avatar\",\n gridSelector: \".grid-media\",\n gridContainerSelector: \".grid-container\",\n closeSelector: \".action-close\",\n gridFooterSelector: \".grid-footer\",\n gridLoadingSelector: \".grid-loading\"\n }), this.atBottom = !1, this.isOpen = function() {\n return this.select(\"gridContainerSelector\").is(\":visible\");\n }, this.open = function(a, b) {\n this.calculateScrollbarWidth();\n if (b.fromGallery) {\n this.show();\n return;\n }\n ;\n ;\n ((((b && b.gridTitle)) && (this.attr.gridTitle = b.gridTitle))), this.$mediaContainer = $(a.target).closest(this.attr.mediasSelector);\n var c = this.$mediaContainer.JSBNG__find(this.attr.mediaSelector);\n this.select(\"mediaSelector\").remove(), this.populate(c), this.initHeader(), this.select(\"gridContainerSelector\").JSBNG__on(\"JSBNG__scroll\", utils.throttle(this.onScroll.bind(this), 200)), this.$node.removeClass(\"hidden\"), $(\"body\").addClass(\"grid-enabled\"), this.trigger(\"uiGridOpened\");\n }, this.loadMore = function(a, b) {\n if (((((this.isOpen() && b.thumbs_html)) && b.thumbs_html.length))) {\n var c = (($.isArray(b.thumbs_html) ? $(b.thumbs_html.join(\"\")) : $(b.thumbs_html)));\n this.populate(c), this.trigger(\"uiGridPaged\");\n }\n else if (((!b.thumbs_html || !b.thumbs_html.length))) {\n this.atBottom = !0, this.loadComplete(), this.processGrid(!0);\n }\n \n ;\n ;\n }, this.initHeader = function() {\n ((this.attr.profileUser ? (this.$node.addClass(\"tall\"), this.select(\"gridSubTitleSelector\").text(((\"@\" + this.attr.profileUser.screen_name))), this.select(\"gridPicSelector\").attr(\"src\", this.attr.profileUser.profile_image_url_https), this.select(\"gridPicSelector\").attr(\"alt\", this.attr.profileUser.JSBNG__name)) : (this.$node.removeClass(\"tall\"), this.select(\"gridSubTitleSelector\").text(\"\"), this.select(\"gridPicSelector\").attr(\"src\", \"\"), this.select(\"gridPicSelector\").attr(\"alt\", \"\")))), this.select(\"gridTitleSelector\").text(this.attr.gridTitle), ((this.attr.gridPushState ? (this.select(\"gridSubTitleSelector\").attr(\"href\", this.attr.pushStateCloseUrl), this.select(\"gridTitleSelector\").attr(\"href\", this.attr.pushStateCloseUrl)) : (this.select(\"gridSubTitleSelector\").removeClass(\"js-nav\"), this.select(\"gridTitleSelector\").removeClass(\"js-nav\"))));\n }, this.show = function() {\n $(\"body\").addClass(\"grid-enabled\"), JSBNG__setTimeout(function() {\n this.ignoreEsc = !1;\n }.bind(this), 400);\n }, this.hide = function() {\n $(\"body\").removeClass(\"grid-enabled\"), this.ignoreEsc = !0;\n }, this.onEsc = function(a) {\n ((this.ignoreEsc || this.close(a)));\n }, this.close = function(a) {\n a.stopPropagation(), a.preventDefault(), this.select(\"gridContainerSelector\").scrollTop(0), $(\"body\").removeClass(\"grid-enabled\"), this.select(\"gridContainerSelector\").off(\"JSBNG__scroll\"), this.trigger(\"uiGridClosed\"), this.ignoreEsc = !1;\n }, this.populate = function(a) {\n var b = a.clone();\n b.JSBNG__find(\"img\").remove(), b.removeClass(\"js-nav\"), b.removeAttr(\"href\"), b.JSBNG__find(\".play\").removeClass(\"play\").addClass(\"play-large\"), b.insertBefore(this.select(\"gridFooterSelector\")), this.processGrid(), b.each(function(a, b) {\n this.renderMedia(b);\n }.bind(this)), this.$mediaContainer.attr(\"data-grid-processed\", \"true\"), this.onScroll();\n }, this.onScroll = function(a) {\n if (this.atBottom) {\n return;\n }\n ;\n ;\n var b = this.select(\"gridContainerSelector\").scrollTop();\n if (((this.select(\"gridContainerSelector\").get(0).scrollHeight < ((((b + $(window).height())) + SCROLLTHRESHOLD))))) {\n var c = this.getLast();\n ((c.attr(\"data-grid-paged\") ? this.loadComplete() : (c.attr(\"data-grid-paged\", \"true\"), this.trigger(this.getLast(), \"uiGalleryMediaLoad\"))));\n }\n ;\n ;\n }, this.loadComplete = function() {\n this.$node.addClass(\"load-complete\");\n }, this.getLast = function() {\n var a = this.select(\"mediaSelector\").last(), b = a.attr(\"data-status-id\");\n return this.$mediaContainer.JSBNG__find(((((\".media-thumbnail[data-status-id='\" + b)) + \"']\"))).last();\n }, this.medias = function() {\n return this.select(\"mediaSelector\");\n }, this.unprocessedMedias = function() {\n return this.medias().filter(\":not([data-grid-processed='true'])\");\n }, this.processGrid = function(a) {\n var b = this.unprocessedMedias();\n if (!b.length) {\n return;\n }\n ;\n ;\n var c = 0, d = 0, e = [];\n for (var f = 0; ((f < b.length)); f++) {\n var g = $(b[f]);\n ((!c && (c = parseInt(g.attr(\"data-height\"))))), ((a && (c = GRIDHEIGHT))), d += this.scaleGridMedia(g, c), e.push(g);\n if (((((((d / c)) >= GRIDRATIO)) || a))) {\n ((a && (d = GRIDWIDTH))), this.setGridRow(e, d, c, a), d = 0, c = 0, e = [], this.processGrid();\n }\n ;\n ;\n };\n ;\n }, this.scaleGridMedia = function(a, b) {\n var c = parseInt(a.attr(\"data-height\")), d = parseInt(a.attr(\"data-width\")), e = ((((b / c)) * d));\n return ((((((d / c)) > PANORATIO)) && (e = ((b * PANORATIO)), a.attr(\"data-pano\", \"true\")))), a.attr({\n \"scaled-height\": b,\n \"scaled-width\": e\n }), e;\n }, this.setGridRow = function(a, b, c, d) {\n var e = ((GRIDWIDTH - ((a.length * GRIDMARGIN)))), f = ((e / b)), g = ((c * f));\n $.each(a, function(a, b) {\n var c = ((parseInt(b.attr(\"scaled-width\")) * f));\n b.height(g), b.width(c), b.attr(\"scaled-height\", g), b.attr(\"Scaled-width\", c), b.attr(\"data-grid-processed\", \"true\"), b.addClass(\"enabled\"), ((((((a == 0)) && !d)) && b.addClass(\"clear\")));\n });\n }, this.renderMedia = function(a) {\n var b = $(a), c = function(a) {\n this.loadThumbSuccess(b, a);\n }.bind(this), d = function() {\n this.loadThumbFail(b);\n }.bind(this);\n imageLoader.load(b.attr(\"data-resolved-url-small\"), c, d);\n }, this.loadThumbSuccess = function(a, b) {\n if (a.attr(\"data-pano\")) {\n var c = ((((a.height() / parseInt(a.attr(\"data-height\")))) * parseInt(a.attr(\"data-width\"))));\n b.width(c), b.css(\"margin-left\", ((((-((c - a.width())) / 2)) + \"px\")));\n }\n ;\n ;\n a.prepend(b);\n }, this.loadThumbFail = function(a) {\n a.remove();\n }, this.openGallery = function(a) {\n var b = $(a.target).closest(this.attr.mediaSelector), c = b.attr(\"data-status-id\"), d = this.$mediaContainer.JSBNG__find(((((\".media-thumbnail[data-status-id='\" + c)) + \"']\")));\n this.trigger(d, \"uiOpenGallery\", {\n title: this.title,\n fromGrid: !0\n }), this.hide();\n }, this.after(\"initialize\", function() {\n this.ignoreEsc = !0, this.JSBNG__on(JSBNG__document, \"uiOpenGrid\", this.open), this.JSBNG__on(JSBNG__document, \"uiCloseGrid\", this.close), this.JSBNG__on(JSBNG__document, \"dataGotMoreMediaItems\", this.loadMore), this.JSBNG__on(\"click\", {\n mediaSelector: this.openGallery,\n closeSelector: this.close\n }), ((this.attr.gridPushState || (this.JSBNG__on(JSBNG__document, \"uiShortcutEsc\", this.onEsc), this.JSBNG__on(\"click\", {\n gridTitleSelector: this.close,\n gridSubTitleSelector: this.close,\n gridPicSelector: this.close\n }))));\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), _ = require(\"core/i18n\"), imageLoader = require(\"app/utils/image/image_loader\"), withScrollbarWidth = require(\"app/ui/with_scrollbar_width\"), Grid = defineComponent(grid, withScrollbarWidth), GRIDWIDTH = 824, GRIDMARGIN = 12, GRIDHEIGHT = 210, GRIDRATIO = 3.5, PANORATIO = 3, SCROLLTHRESHOLD = 1000;\n module.exports = Grid;\n});\ndefine(\"app/boot/profile\", [\"module\",\"require\",\"exports\",\"app/boot/app\",\"core/i18n\",\"app/boot/trends\",\"app/boot/logged_out\",\"app/boot/inline_edit\",\"app/ui/profile/canopy\",\"app/data/profile_canopy_scribe\",\"app/ui/profile/head\",\"app/data/profile_head_scribe\",\"app/ui/profile/social_proof\",\"app/data/profile_social_proof_scribe\",\"app/ui/dashboard_tweetbox\",\"app/ui/who_to_follow/who_to_follow_dashboard\",\"app/data/who_to_follow\",\"app/data/who_to_follow_scribe\",\"app/ui/profile/recent_connections_module\",\"app/ui/media/card_thumbnails\",\"app/data/media_timeline\",\"app/data/media_thumbnails_scribe\",\"core/utils\",\"app/ui/suggested_users\",\"app/data/suggested_users\",\"app/data/client_event\",\"app/ui/navigation_links\",\"app/data/profile_edit_btn_scribe\",\"app/boot/wtf_module\",\"app/ui/gallery/grid\",], function(module, require, exports) {\n function initialize(a) {\n bootApp(a), trends(a), whoToFollowModule(a);\n var b = \".profile-canopy\", c = {\n scribeContext: {\n component: \"profile_canopy\"\n }\n };\n ProfileHead.attachTo(b, a, c, {\n profileHead: !1,\n isCanopy: !0\n }), ProfileHeadScribe.attachTo(b, c), ProfileCanopy.attachTo(b), ProfileCanopyScribe.attachTo(b);\n var d = \".profile-page-header\", e = {\n scribeContext: {\n component: \"profile_follow_card\"\n }\n };\n ProfileHead.attachTo(d, a, e), ProfileHeadScribe.attachTo(d);\n var f = \".profile-social-proof\";\n ProfileSocialProofScribe.attachTo(f), ProfileSocialProof.attachTo(f), ((a.inlineProfileEditing && inlineEditBoot(a))), ProfileEditBtnScribe.attachTo(d, e), clientEvent.scribeData.profile_id = a.profile_id, loggedOutBoot(a), MediaThumbnailsScribe.attachTo(JSBNG__document, a);\n var g = {\n showAllInlineMedia: !0,\n defaultGalleryTitle: a.profile_user.JSBNG__name,\n profileUser: a.profile_user,\n mediaGrid: a.mediaGrid,\n mediaGridOpen: a.mediaGridOpen,\n gridPushState: a.mediaGrid,\n pushStateUrl: ((((\"/\" + a.profile_user.screen_name)) + \"/media/grid\")),\n eventData: {\n scribeContext: {\n component: \"dashboard_media\"\n }\n }\n }, h;\n h = \".enhanced-media-thumbnails\", g.thumbnailSize = 90, g.thumbnailsVisible = 6, MediaTimeline.attachTo(JSBNG__document, {\n endpoint: ((((\"/i/profiles/show/\" + a.profile_user.screen_name)) + \"/media_timeline\"))\n }), CardThumbnails.attachTo(h, utils.merge(a, g)), Grid.attachTo(\".grid\", {\n sandboxes: a.sandboxes,\n loggedIn: a.loggedIn,\n eventData: {\n scribeContext: {\n component: \"grid\"\n }\n },\n mediaGridOpen: a.mediaGridOpen,\n pushStateCloseUrl: ((\"/\" + a.profile_user.screen_name)),\n gridTitle: _(\"{{name}}'s photos and videos\", {\n JSBNG__name: a.profile_user.JSBNG__name\n }),\n profileUser: a.profile_user\n }), NavigationLinks.attachTo(\".profile-page-header\", {\n eventData: {\n scribeContext: {\n component: \"profile_follow_card\"\n }\n }\n }), DashboardTweetbox.attachTo(\".profile-tweet-box\", {\n draftTweetId: ((\"profile_\" + a.profile_id)),\n eventData: {\n scribeContext: {\n component: \"tweet_box\"\n }\n }\n });\n var i = utils.merge(a, {\n eventData: {\n scribeContext: {\n component: \"similar_user_recommendations\"\n }\n }\n }), j = \".dashboard .js-similar-to-module\";\n WhoToFollowDashboard.attachTo(j, i), WhoToFollowData.attachTo(j, i), WhoToFollowScribe.attachTo(j, i), RecentConnectionsModule.attachTo(\".dashboard .recent-followers-module\", a, {\n eventData: {\n scribeContext: {\n component: \"recent_followers\"\n }\n }\n }), RecentConnectionsModule.attachTo(\".dashboard .recently-followed-module\", a, {\n eventData: {\n scribeContext: {\n component: \"recently_followed\"\n }\n }\n }), SuggestedUsersData.attachTo(JSBNG__document), SuggestedUsers.attachTo(\"#suggested-users\", utils.merge({\n eventData: {\n scribeContext: {\n component: \"user_similarities_list\"\n }\n }\n }, a));\n };\n;\n var bootApp = require(\"app/boot/app\"), _ = require(\"core/i18n\"), trends = require(\"app/boot/trends\"), loggedOutBoot = require(\"app/boot/logged_out\"), inlineEditBoot = require(\"app/boot/inline_edit\"), ProfileCanopy = require(\"app/ui/profile/canopy\"), ProfileCanopyScribe = require(\"app/data/profile_canopy_scribe\"), ProfileHead = require(\"app/ui/profile/head\"), ProfileHeadScribe = require(\"app/data/profile_head_scribe\"), ProfileSocialProof = require(\"app/ui/profile/social_proof\"), ProfileSocialProofScribe = require(\"app/data/profile_social_proof_scribe\"), DashboardTweetbox = require(\"app/ui/dashboard_tweetbox\"), WhoToFollowDashboard = require(\"app/ui/who_to_follow/who_to_follow_dashboard\"), WhoToFollowData = require(\"app/data/who_to_follow\"), WhoToFollowScribe = require(\"app/data/who_to_follow_scribe\"), RecentConnectionsModule = require(\"app/ui/profile/recent_connections_module\"), CardThumbnails = require(\"app/ui/media/card_thumbnails\"), MediaTimeline = require(\"app/data/media_timeline\"), MediaThumbnailsScribe = require(\"app/data/media_thumbnails_scribe\"), utils = require(\"core/utils\"), SuggestedUsers = require(\"app/ui/suggested_users\"), SuggestedUsersData = require(\"app/data/suggested_users\"), clientEvent = require(\"app/data/client_event\"), NavigationLinks = require(\"app/ui/navigation_links\"), ProfileEditBtnScribe = require(\"app/data/profile_edit_btn_scribe\"), whoToFollowModule = require(\"app/boot/wtf_module\"), Grid = require(\"app/ui/gallery/grid\");\n module.exports = initialize;\n});\ndefine(\"app/pages/profile/tweets\", [\"module\",\"require\",\"exports\",\"app/boot/profile\",\"app/boot/tweet_timeline\",\"app/boot/user_completion_module\",], function(module, require, exports) {\n var profileBoot = require(\"app/boot/profile\"), tweetTimelineBoot = require(\"app/boot/tweet_timeline\"), userCompletionModuleBoot = require(\"app/boot/user_completion_module\");\n module.exports = function(b) {\n profileBoot(b), tweetTimelineBoot(b, b.timeline_url, \"tweet\"), userCompletionModuleBoot(b), ((b.profile_user && $(JSBNG__document).trigger(\"profileVisit\", b.profile_user)));\n };\n});\ndefine(\"app/ui/timelines/with_cursor_pagination\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withCursorPagination() {\n function a() {\n return !0;\n };\n ;\n function b() {\n return !1;\n };\n ;\n this.isOldItem = a, this.isNewItem = b, this.wasRangeRequest = b, this.wasNewItemsRequest = b, this.wasOldItemsRequest = a, this.shouldGetOldItems = function() {\n return !!this.cursor;\n }, this.getOldItemsData = function() {\n return {\n cursor: this.cursor,\n is_forward: !this.attr.isBackward,\n query: this.query\n };\n }, this.resetStateVariables = function(a) {\n ((((a && ((a.cursor !== undefined)))) ? (this.cursor = a.cursor, this.select(\"containerSelector\").attr(\"data-cursor\", this.cursor)) : this.cursor = ((this.select(\"containerSelector\").attr(\"data-cursor\") || \"\"))));\n }, this.after(\"initialize\", function(a) {\n this.query = ((a.query || \"\")), this.resetStateVariables(), this.JSBNG__on(\"uiTimelineReset\", this.resetStateVariables);\n });\n };\n;\n module.exports = withCursorPagination;\n});\ndefine(\"app/ui/with_stream_users\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withStreamUsers() {\n this.defaultAttrs({\n streamUserSelector: \".stream-items .js-actionable-user\"\n }), this.usersDisplayed = function() {\n var a = this.select(\"streamUserSelector\"), b = [];\n a.each(function(a, c) {\n var d = $(c);\n b.push({\n id: d.attr(\"data-user-id\"),\n impressionId: d.attr(\"data-impression-id\")\n });\n }), this.trigger(\"uiUsersDisplayed\", {\n users: b\n });\n }, this.after(\"initialize\", function() {\n this.usersDisplayed();\n });\n };\n;\n module.exports = withStreamUsers;\n});\ndefine(\"app/ui/timelines/user_timeline\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/timelines/with_base_timeline\",\"app/ui/timelines/with_old_items\",\"app/ui/timelines/with_cursor_pagination\",\"app/ui/with_item_actions\",\"app/ui/with_user_actions\",\"app/ui/with_stream_users\",], function(module, require, exports) {\n function userTimeline() {\n this.defaultAttrs({\n itemType: \"user\"\n });\n };\n;\n var defineComponent = require(\"core/component\"), withBaseTimeline = require(\"app/ui/timelines/with_base_timeline\"), withOldItems = require(\"app/ui/timelines/with_old_items\"), withCursorPagination = require(\"app/ui/timelines/with_cursor_pagination\"), withItemActions = require(\"app/ui/with_item_actions\"), withUserActions = require(\"app/ui/with_user_actions\"), withStreamUsers = require(\"app/ui/with_stream_users\");\n module.exports = defineComponent(userTimeline, withBaseTimeline, withOldItems, withCursorPagination, withItemActions, withUserActions, withStreamUsers);\n});\ndefine(\"app/boot/user_timeline\", [\"module\",\"require\",\"exports\",\"app/boot/timeline\",\"app/ui/timelines/user_timeline\",\"core/utils\",], function(module, require, exports) {\n function initialize(a, b, c, d) {\n var e = utils.merge(a, {\n endpoint: b,\n itemType: c,\n eventData: {\n scribeContext: {\n component: d\n },\n timeline_recommendations: a.timeline_recommendations\n }\n });\n timelineBoot(e), UserTimeline.attachTo(\"#timeline\", e);\n };\n;\n var timelineBoot = require(\"app/boot/timeline\"), UserTimeline = require(\"app/ui/timelines/user_timeline\"), utils = require(\"core/utils\");\n module.exports = initialize;\n});\ndefine(\"app/ui/timelines/follower_request_timeline\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_interaction_data\",], function(module, require, exports) {\n function followerRequestTimeline() {\n this.defaultAttrs({\n userItemSelector: \"div.js-follower-request\",\n streamUserItemSelector: \"li.js-stream-item\",\n followerActionsSelector: \".friend-actions\",\n profileActionsSelector: \".js-profile-actions\",\n acceptFollowerSelector: \".js-action-accept\",\n declineFollowerSelector: \".js-action-deny\",\n itemType: \"user\"\n }), this.findUser = function(a) {\n return this.$node.JSBNG__find(((((((this.attr.userItemSelector + \"[data-user-id=\")) + a)) + \"]\")));\n }, this.findFollowerActions = function(a) {\n return this.findUser(a).JSBNG__find(this.attr.followerActionsSelector);\n }, this.findProfileActions = function(a) {\n return this.findUser(a).JSBNG__find(this.attr.profileActionsSelector);\n }, this.handleAcceptSuccess = function(a, b) {\n this.findFollowerActions(b.userId).hide(), this.findProfileActions(b.userId).show();\n }, this.handleDeclineSuccess = function(a, b) {\n var c = this.findUser(b.userId);\n c.closest(this.attr.streamUserItemSelector).remove();\n }, this.handleDecisionFailure = function(a, b) {\n var c = this.findFollowerActions(b.userId);\n c.JSBNG__find(\".btn\").attr(\"disabled\", !1).removeClass(\"pending\");\n }, this.handleFollowerDecision = function(a) {\n return function(b, c) {\n b.preventDefault(), b.stopPropagation();\n var d = this.interactionData(b), e = this.findFollowerActions(d.userId);\n e.JSBNG__find(\".btn\").attr(\"disabled\", !0);\n var f = e.JSBNG__find(((((a == \"Accept\")) ? this.attr.acceptFollowerSelector : this.attr.declineFollowerSelector)));\n f.addClass(\"pending\"), this.trigger(((\"uiDidFollower\" + a)), d);\n };\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n acceptFollowerSelector: this.handleFollowerDecision(\"Accept\"),\n declineFollowerSelector: this.handleFollowerDecision(\"Decline\")\n }), this.JSBNG__on(JSBNG__document, \"dataFollowerAcceptSuccess\", this.handleAcceptSuccess), this.JSBNG__on(JSBNG__document, \"dataFollowerDeclineSuccess\", this.handleDeclineSuccess), this.JSBNG__on(JSBNG__document, \"dataFollowerAcceptFailure dataFollowerDeclineFailure\", this.handleDecisionFailure);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withInteractionData = require(\"app/ui/with_interaction_data\");\n module.exports = defineComponent(followerRequestTimeline, withInteractionData);\n});\ndefine(\"app/data/follower_request\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function followerRequestData() {\n this.followerRequestAction = function(a, b) {\n return function(c, d) {\n var e = function() {\n this.trigger(((((\"dataFollower\" + b)) + \"Success\")), {\n userId: d.userId\n });\n }.bind(this), f = function() {\n this.trigger(((((\"dataFollower\" + b)) + \"Failure\")), {\n userId: d.userId\n });\n }.bind(this);\n this.post({\n url: a,\n data: {\n user_id: d.userId\n },\n eventData: d,\n success: e,\n error: f\n });\n };\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(JSBNG__document, \"uiDidFollowerAccept\", this.followerRequestAction(\"/i/user/accept\", \"Accept\")), this.JSBNG__on(JSBNG__document, \"uiDidFollowerDecline\", this.followerRequestAction(\"/i/user/deny\", \"Decline\"));\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(followerRequestData, withData);\n});\ndefine(\"app/pages/profile/follower_requests\", [\"module\",\"require\",\"exports\",\"app/boot/profile\",\"app/boot/user_timeline\",\"app/ui/timelines/follower_request_timeline\",\"app/data/follower_request\",], function(module, require, exports) {\n var profileBoot = require(\"app/boot/profile\"), userTimelineBoot = require(\"app/boot/user_timeline\"), FollowerRequestTimeline = require(\"app/ui/timelines/follower_request_timeline\"), FollowerRequestData = require(\"app/data/follower_request\");\n module.exports = function(b) {\n profileBoot(b), userTimelineBoot(b, b.timeline_url, \"user\"), FollowerRequestTimeline.attachTo(\"#timeline\", b), FollowerRequestData.attachTo(JSBNG__document, b);\n };\n});\ndefine(\"app/pages/profile/followers\", [\"module\",\"require\",\"exports\",\"app/boot/profile\",\"app/boot/user_timeline\",\"app/data/contact_import\",\"app/data/contact_import_scribe\",\"app/ui/who_to_follow/import_loading_dialog\",\"app/ui/who_to_follow/import_services\",\"app/ui/suggested_users\",], function(module, require, exports) {\n var profileBoot = require(\"app/boot/profile\"), userTimelineBoot = require(\"app/boot/user_timeline\"), ContactImportData = require(\"app/data/contact_import\"), ContactImportScribe = require(\"app/data/contact_import_scribe\"), ImportLoadingDialog = require(\"app/ui/who_to_follow/import_loading_dialog\"), ImportServices = require(\"app/ui/who_to_follow/import_services\"), SuggestedUsers = require(\"app/ui/suggested_users\");\n module.exports = function(b) {\n profileBoot(b), b.allowInfiniteScroll = b.loggedIn, userTimelineBoot(b, b.timeline_url, \"user\", \"user\"), ContactImportData.attachTo(JSBNG__document, b), ContactImportScribe.attachTo(JSBNG__document, b), ImportLoadingDialog.attachTo(\"#import-loading-dialog\", b), ImportServices.attachTo(\".followers-import-prompt\", {\n launchServiceSelector: \".js-launch-service\"\n }), ((b.timeline_recommendations && SuggestedUsers.attachTo(\"#timeline\", {\n eventData: {\n scribeContext: {\n component: \"user_similarities_list\"\n }\n },\n eventMode: \"timeline_recommendations\",\n targetSelector: \".js-stream-item\",\n childSelector: \".js-recommendations-container\"\n })));\n };\n});\ndefine(\"app/pages/profile/following\", [\"module\",\"require\",\"exports\",\"app/boot/profile\",\"app/boot/user_timeline\",], function(module, require, exports) {\n var profileBoot = require(\"app/boot/profile\"), userTimelineBoot = require(\"app/boot/user_timeline\");\n module.exports = function(b) {\n profileBoot(b), b.allowInfiniteScroll = b.loggedIn, userTimelineBoot(b, b.timeline_url, \"user\", \"user\");\n };\n});\ndefine(\"app/pages/profile/favorites\", [\"module\",\"require\",\"exports\",\"app/boot/profile\",\"app/boot/tweet_timeline\",], function(module, require, exports) {\n var profileBoot = require(\"app/boot/profile\"), tweetTimelineBoot = require(\"app/boot/tweet_timeline\");\n module.exports = function(b) {\n profileBoot(b), b.allowInfiniteScroll = b.loggedIn, tweetTimelineBoot(b, b.timeline_url, \"tweet\");\n };\n});\ndefine(\"app/ui/timelines/list_timeline\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/timelines/with_base_timeline\",\"app/ui/timelines/with_old_items\",\"app/ui/timelines/with_cursor_pagination\",\"app/ui/with_item_actions\",\"app/ui/with_user_actions\",], function(module, require, exports) {\n function listTimeline() {\n this.defaultAttrs({\n createListSelector: \".js-create-list-button\",\n itemType: \"list\"\n }), this.after(\"initialize\", function(a) {\n this.JSBNG__on(\"click\", {\n createListSelector: this.openListCreateDialog\n });\n }), this.openListCreateDialog = function() {\n this.trigger(\"uiOpenCreateListDialog\", {\n userId: this.userId\n });\n };\n };\n;\n var defineComponent = require(\"core/component\"), withBaseTimeline = require(\"app/ui/timelines/with_base_timeline\"), withOldItems = require(\"app/ui/timelines/with_old_items\"), withCursorPagination = require(\"app/ui/timelines/with_cursor_pagination\"), withItemActions = require(\"app/ui/with_item_actions\"), withUserActions = require(\"app/ui/with_user_actions\");\n module.exports = defineComponent(listTimeline, withBaseTimeline, withOldItems, withCursorPagination, withItemActions, withUserActions);\n});\ndefine(\"app/boot/list_timeline\", [\"module\",\"require\",\"exports\",\"app/boot/timeline\",\"app/ui/timelines/list_timeline\",\"core/utils\",], function(module, require, exports) {\n function initialize(a, b, c, d) {\n var e = utils.merge(a, {\n endpoint: b,\n itemType: c,\n eventData: {\n scribeContext: {\n component: d\n }\n }\n });\n timelineBoot(e), ListTimeline.attachTo(\"#timeline\", e);\n };\n;\n var timelineBoot = require(\"app/boot/timeline\"), ListTimeline = require(\"app/ui/timelines/list_timeline\"), utils = require(\"core/utils\");\n module.exports = initialize;\n});\ndefine(\"app/pages/profile/lists\", [\"module\",\"require\",\"exports\",\"app/boot/profile\",\"app/boot/list_timeline\",], function(module, require, exports) {\n var profileBoot = require(\"app/boot/profile\"), listTimelineBoot = require(\"app/boot/list_timeline\");\n module.exports = function(b) {\n profileBoot(b), listTimelineBoot(b, b.timeline_url, \"list\");\n };\n});\ndefine(\"app/ui/with_removable_stream_items\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withRemovableStreamItems() {\n this.defaultAttrs({\n streamItemSelector: \".js-stream-item\"\n }), this.removeStreamItem = function(a) {\n var b = ((((((this.attr.streamItemSelector + \"[data-item-id=\")) + a)) + \"]\"));\n this.$node.JSBNG__find(b).remove();\n };\n };\n;\n module.exports = withRemovableStreamItems;\n});\ndefine(\"app/ui/similar_to\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_removable_stream_items\",], function(module, require, exports) {\n function similarTo() {\n this.handleUserActionSuccess = function(a, b) {\n ((((b.requestUrl == \"/i/user/hide\")) && this.removeStreamItem(b.userId)));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataUserActionSuccess\", this.handleUserActionSuccess);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withRemovableStreamItems = require(\"app/ui/with_removable_stream_items\");\n module.exports = defineComponent(similarTo, withRemovableStreamItems);\n});\ndefine(\"app/pages/profile/similar_to\", [\"module\",\"require\",\"exports\",\"app/boot/profile\",\"app/boot/user_timeline\",\"app/ui/similar_to\",], function(module, require, exports) {\n var profileBoot = require(\"app/boot/profile\"), userTimelineBoot = require(\"app/boot/user_timeline\"), similarTo = require(\"app/ui/similar_to\");\n module.exports = function(b) {\n profileBoot(b), userTimelineBoot(b, b.timeline_url, \"user\", \"user\"), similarTo.attachTo(\"#timeline\");\n };\n});\ndefine(\"app/ui/facets\", [\"module\",\"require\",\"exports\",\"app/utils/cookie\",\"core/component\",], function(module, require, exports) {\n function uiFacets() {\n this.defaultAttrs({\n topImagesSelector: \".top-images\",\n topVideosSelector: \".top-videos\",\n notDisplayedSelector: \".facets-media-not-displayed\",\n displayMediaSelector: \".display-this-media\",\n showAllInlineMedia: !1\n }), this.addFacets = function(a, b) {\n this.select(\"topImagesSelector\").html(b.photos), this.select(\"topVideosSelector\").html(b.videos), ((this.attr.showAllInlineMedia && this.reloadFacets()));\n }, this.showFacet = function(a, b) {\n ((((b.thumbnails.length > 0)) && $(a.target).show()));\n var c = this.$node.JSBNG__find(\".js-nav-links\\u003Eli:visible\"), d = c.last();\n c.removeClass(\"last-item\"), d.addClass(\"last-item\");\n }, this.dismissDisplayMedia = function() {\n this.attr.showAllInlineMedia = !0, this.setMediaCookie(), this.select(\"notDisplayedSelector\").hide(), this.reloadFacets();\n }, this.setMediaCookie = function() {\n cookie(\"show_all_inline_media\", !0);\n }, this.reloadFacets = function() {\n this.trigger(this.select(\"topImagesSelector\"), \"uiReloadThumbs\"), this.trigger(this.select(\"topVideosSelector\"), \"uiReloadThumbs\");\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(JSBNG__document, \"dataHasFacets\", this.addFacets), this.JSBNG__on(\"uiMediaThumbnailsVisible\", this.showFacet), this.JSBNG__on(\"click\", {\n displayMediaSelector: this.dismissDisplayMedia\n }), this.trigger(\"uiNeedsFacets\", {\n q: a.query,\n onebox_type: a.oneboxType\n });\n });\n };\n;\n var cookie = require(\"app/utils/cookie\"), defineComponent = require(\"core/component\");\n module.exports = defineComponent(uiFacets);\n});\ndefine(\"app/data/facets_timeline\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function facetsTimeline() {\n this.defaultAttrs({\n query: \"\"\n }), this.requestItems = function(a, b) {\n var c = {\n }, d = {\n since_id: b.since_id,\n max_id: b.max_id,\n facet_type: b.facet_type,\n onebox_type: b.onebox_type,\n q: this.attr.query\n };\n this.get({\n url: this.attr.endpoint,\n headers: c,\n data: d,\n eventData: b,\n success: ((((\"dataGotMoreFacet\" + b.facet_type)) + \"TimelineItems\")),\n error: ((((\"dataGotMoreFacet\" + b.facet_type)) + \"TimelineItemsError\"))\n });\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(JSBNG__document, \"uiWantsMoreFacetTimelineItems\", this.requestItems);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(facetsTimeline, withData);\n});\ndefine(\"app/ui/dialogs/iph_search_result_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_dialog\",\"app/ui/with_position\",\"app/data/with_scribe\",\"app/data/ddg\",], function(module, require, exports) {\n function inProductHelpDialog() {\n this.defaultAttrs({\n helpfulSelector: \"#helpful_button\",\n notHelpfulSelector: \"#not_helpful_button\",\n inProductHelpSelector: \"#search_result_help\",\n feedbackQuestionSelector: \"#satisfaction_question\",\n feedbackButtonsSelector: \"#satisfaction_buttons\",\n feedbackMessageSelector: \"#satisfaction_feedback\"\n }), this.JSBNG__openDialog = function(a) {\n ddg.impression(\"in_product_help_search_result_page_392\"), this.scribe({\n component: \"search_result\",\n element: \"learn_more_dialog\",\n action: \"impression\"\n }), this.open();\n }, this.voteHelpful = function(a) {\n this.scribe({\n component: \"search_result\",\n element: \"learn_more_dialog\",\n action: ((a ? \"helpful\" : \"unhelpful\"))\n }), this.select(\"feedbackQuestionSelector\").hide(), this.select(\"feedbackButtonsSelector\").hide(), this.select(\"feedbackMessageSelector\").fadeIn();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n helpfulSelector: function() {\n this.voteHelpful(!0);\n },\n notHelpfulSelector: function() {\n this.voteHelpful(!1);\n }\n }), this.JSBNG__on(this.attr.inProductHelpSelector, \"click\", this.JSBNG__openDialog), this.select(\"feedbackMessageSelector\").hide();\n });\n };\n;\n var defineComponent = require(\"core/component\"), withDialog = require(\"app/ui/with_dialog\"), withPosition = require(\"app/ui/with_position\"), withScribe = require(\"app/data/with_scribe\"), ddg = require(\"app/data/ddg\");\n module.exports = defineComponent(inProductHelpDialog, withDialog, withPosition, withScribe);\n});\ndefine(\"app/ui/search/archive_navigator\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/storage/custom\",\"core/i18n\",], function(module, require, exports) {\n function archiveNavigator() {\n this.monthLabels = [_(\"Jan\"),_(\"Feb\"),_(\"Mar\"),_(\"Apr\"),_(\"May\"),_(\"Jun\"),_(\"Jul\"),_(\"Aug\"),_(\"Sep\"),_(\"Oct\"),_(\"Nov\"),_(\"Dec\"),], this.defaultAttrs({\n timeRanges: [],\n highlights: [],\n query: \"\",\n sinceTime: null,\n untilTime: null,\n ttl_ms: 21600000,\n canvasSelector: \"canvas\",\n canvasContainerSelector: \"#archive-drilldown-container\",\n timeRangeSelector: \".time-ranges\",\n timeRangeLinkSelector: \".time-ranges a\",\n highlightContainerSelector: \".highlights\",\n highlightLinkSelector: \".highlights a\",\n pastNavSelector: \".past-nav\",\n futureNavSelector: \".future-nav\",\n timeNavQuerySource: \"tnav\",\n highlightNavQuerySource: \"hnav\",\n activeItemClass: \"active\"\n }), this.sortedCoordinates = function() {\n var a = this.attr.timeRanges.concat(this.attr.highlights);\n return a.sort(function(a, b) {\n return ((a.timestamp - b.timestamp));\n }).map(function(a) {\n return {\n x: a.timestamp,\n y: a.activityScore\n };\n });\n }, this.compileCoordinates = function(a) {\n var b = a[0].x, c = a[((a.length - 1))].x, d = a[0].y, e = a[0].y, f, g;\n for (f = 1, g = a.length; ((f < g)); f++) {\n var h = a[f];\n ((((h.y < d)) ? d = h.y : ((((h.y > e)) && (e = h.y)))));\n };\n ;\n var i = new JSBNG__Date(((b * 1000)));\n return b = (((new JSBNG__Date(i.getUTCFullYear(), i.getUTCMonth(), 1)).getTime() / 1000)), i = new JSBNG__Date(((c * 1000))), c = (((new JSBNG__Date(i.getUTCFullYear(), ((i.getUTCMonth() + 1)), 0)).getTime() / 1000)), this.renderedTimeRange = {\n since: b,\n until: c\n }, d = 0, e *= 1.1, {\n coordinates: a,\n minX: b,\n minY: d,\n maxX: c,\n maxY: e\n };\n }, this.setupViewFrame = function() {\n var a = this.select(\"canvasSelector\"), b = this.select(\"canvasContainerSelector\").width(), c = ((this.compiledCoordinates.maxX - this.compiledCoordinates.minX));\n ((((((this.renderedTimeRange.until - this.renderedTimeRange.since)) < ((((SECONDS_IN_YEAR * 7)) / 6)))) ? (a.width(b), this.select(\"timeRangeSelector\").width(b), this.select(\"highlightContainerSelector\").width(b), this.graphResolution = ((c / b))) : (this.graphResolution = Math.round(((SECONDS_IN_YEAR / b))), this.select(\"timeRangeSelector\").width(Math.round(((c / this.graphResolution)))), this.select(\"highlightContainerSelector\").width(Math.round(((c / this.graphResolution)))), a.width(Math.round(((c / this.graphResolution))))))), this.canvas.width = a.width(), this.canvas.height = a.height(), this.canvasTransform = {\n translateX: ((-this.compiledCoordinates.minX / this.graphResolution)),\n translateY: ((((this.canvas.height - ((STROKE_WIDTH / 2)))) - BOTTOM_INSET)),\n scaleX: ((1 / this.graphResolution)),\n scaleY: ((-((((((this.canvas.height - STROKE_WIDTH)) - BOTTOM_INSET)) - TOP_INSET)) / ((this.compiledCoordinates.maxY - this.compiledCoordinates.minY))))\n };\n }, this.setupCoordinates = function() {\n if (((this.attr.timeRanges.length == 0))) {\n return;\n }\n ;\n ;\n var a = this.sortedCoordinates();\n this.compiledCoordinates = this.compileCoordinates(a), this.setupViewFrame();\n }, this.getElementOffsetForCoordinate = function(a) {\n var b = ((this.canvasTransform.translateX + ((this.canvasTransform.scaleX * a.x)))), c = ((this.canvasTransform.translateY + ((this.canvasTransform.scaleY * a.y))));\n return {\n left: b,\n JSBNG__top: c\n };\n }, this.drawGraph = function() {\n this.drawAxes(), this.plotActivity(), this.plotHighlights();\n }, this.plotHighlights = function() {\n var a = this.select(\"highlightContainerSelector\");\n a.empty(), this.attr.highlights.forEach(function(b) {\n var c = this.getElementOffsetForCoordinate({\n x: b.timestamp,\n y: b.activityScore\n }), d = this.highlightItemTemplate.clone();\n d.attr(\"href\", ((\"/search?\" + $.param({\n mode: \"archive\",\n q: this.attr.query,\n src: this.attr.highlightNavQuerySource,\n since_time: b.drilldownSince,\n until_time: b.drilldownUntil\n })))), d.data(\"monthsInPast\", this.offsetToMonthsPast(c.left, !0)), d.addClass(\"js-nav\"), ((((((this.attr.sinceTime == b.drilldownSince)) && ((this.attr.untilTime == b.drilldownUntil)))) && d.addClass(this.attr.activeItemClass))), d.css(\"left\", ((Math.round(c.left) + \"px\"))), d.css(\"JSBNG__top\", ((Math.round(c.JSBNG__top) + \"px\"))), a.append(d);\n }, this);\n }, this.plotActivity = function() {\n var a = this.compiledCoordinates.coordinates, b = this.compiledCoordinates.minX, c = this.compiledCoordinates.minY, d = this.compiledCoordinates.maxX, e = this.compiledCoordinates.maxY;\n if (a.length) {\n var f = this.canvas.getContext(\"2d\");\n ((((a[0].x !== b)) && (a = [{\n x: b,\n y: 0\n },].concat(a)))), f.save(), f.translate(this.canvasTransform.translateX, this.canvasTransform.translateY), f.scale(this.canvasTransform.scaleX, this.canvasTransform.scaleY);\n var g = ((STROKE_WIDTH * this.graphResolution)), h = ((((BOTTOM_INSET / ((((this.canvas.height - STROKE_WIDTH)) - BOTTOM_INSET)))) / ((e - c))));\n f.beginPath(), f.JSBNG__moveTo(((a[0].x - ((g / 2)))), ((((c - ((g / 2)))) - h))), f.lineTo(((a[0].x - ((g / 2)))), a[0].y), a.slice(1).forEach(function(a) {\n f.lineTo(a.x, a.y);\n }), f.lineTo(((a[((a.length - 1))].x + ((g / 2)))), a[((a.length - 1))].y), f.lineTo(((a[((a.length - 1))].x + ((g / 2)))), ((c - h))), f.closePath();\n var i = f.createLinearGradient(0, e, 0, ((c - h)));\n i.addColorStop(0, GRADIENT_FILL_TOP_COLOR), i.addColorStop(1, GRADIENT_FILL_BOTTOM_COLOR), f.fillStyle = i, f.fill(), f.beginPath(), f.JSBNG__moveTo(a[0].x, a[0].y), a.slice(1).forEach(function(a) {\n f.lineTo(a.x, a.y);\n }, this), f.restore();\n var j = f.createLinearGradient(0, TOP_INSET, 0, ((this.canvas.height - BOTTOM_INSET)));\n j.addColorStop(1, STROKE_GRADIENT_TOP_COLOR), j.addColorStop(337485, STROKE_GRADIENT_MIDDLE_COLOR), j.addColorStop(0, STROKE_GRADIENT_BOTTOM_COLOR), f.lineWidth = STROKE_WIDTH, f.lineCap = \"round\", f.lineJoin = \"round\", f.strokeStyle = j, f.stroke();\n }\n ;\n ;\n }, this.drawAxes = function() {\n var a = this.compiledCoordinates.minX, b = this.compiledCoordinates.minY, c = this.compiledCoordinates.maxX, d = this.compiledCoordinates.maxY, e = this.canvas.width, f = this.canvas.height;\n this.select(\"timeRangeSelector\").empty();\n var g = this.canvas.getContext(\"2d\");\n g.lineWidth = 1, g.strokeStyle = GRAPH_GRID_COLOR;\n var h = new JSBNG__Date(((a * 1000))), i = this.getElementOffsetForCoordinate({\n x: 0,\n y: d\n }).JSBNG__top, j = this.getElementOffsetForCoordinate({\n x: 0,\n y: b\n }).JSBNG__top, k, l, m = a, n = Math.round(this.getElementOffsetForCoordinate({\n x: m,\n y: 0\n }).left);\n g.beginPath(), g.JSBNG__moveTo(((n + 338199)), i), g.lineTo(((n + 338216)), j);\n while (((m < c))) {\n var o = this.monthLinkTemplate.clone(), p = this.monthLabels[h.getUTCMonth()], q = h.getUTCFullYear();\n o.attr(\"title\", ((((p + \" \")) + q))), o.JSBNG__find(\".month\").text(p), o.JSBNG__find(\".year\").text(q), k = m, h.setUTCMonth(((h.getUTCMonth() + 1))), m = ((h.getTime() / 1000)), o.attr(\"href\", ((\"/search?\" + $.param({\n mode: \"archive\",\n q: this.attr.query,\n src: this.attr.timeNavQuerySource,\n since_time: k,\n until_time: m\n })))), o.addClass(\"js-nav\"), ((((((this.attr.sinceTime == k)) && ((this.attr.untilTime == m)))) && o.addClass(this.attr.activeItemClass))), l = n;\n var r = this.getElementOffsetForCoordinate({\n x: m,\n y: 0\n });\n n = Math.round(r.left), o.data(\"monthsInPast\", this.offsetToMonthsPast(r.left, !0)), o.css(\"width\", ((((n - l)) + \"px\"))), this.select(\"timeRangeSelector\").append(o), g.JSBNG__moveTo(((n - 338904)), i), g.lineTo(((n - 338921)), j);\n };\n ;\n g.stroke();\n }, this.rangeClick = function(a) {\n var b = $(a.target).closest(\"a\");\n if (b.is(\".active\")) {\n a.preventDefault();\n return;\n }\n ;\n ;\n this.trigger(\"uiArchiveRangeClick\", {\n monthsInPast: b.data(\"monthsInPast\")\n });\n }, this.highlightClick = function(a) {\n var b = $(a.target).closest(\"a\");\n if (b.is(\".active\")) {\n a.preventDefault();\n return;\n }\n ;\n ;\n this.trigger(\"uiArchiveHighlightClick\", {\n monthsInPast: b.data(\"monthsInPast\")\n });\n }, this.navFuture = function() {\n var a = Math.round(((((((((-1 * SECONDS_IN_YEAR)) * 3)) / 4)) / this.graphResolution)));\n this.navTime(a);\n var b = this.offsetToMonthsPast(this.containerOffset);\n this.trigger(\"uiArchiveNavFuture\", {\n monthsInPast: b\n });\n }, this.navPast = function() {\n var a = Math.round(((((((SECONDS_IN_YEAR * 3)) / 4)) / this.graphResolution)));\n this.navTime(a);\n var b = this.offsetToMonthsPast(this.containerOffset);\n this.trigger(\"uiArchiveNavPast\", {\n monthsInPast: b\n });\n }, this.offsetToMonthsPast = function(a, b) {\n return ((b && (a = ((this.canvas.width - a))))), Math.round(((((((a * this.graphResolution)) / SECONDS_IN_YEAR)) * 12)));\n }, this.navActive = function() {\n var a = this.$node.JSBNG__find(((\".\" + this.attr.activeItemClass))), b = 0;\n if (((a.length > 0))) {\n var c = $(a).position(), d = this.select(\"canvasContainerSelector\").width(), e = this.canvas.width;\n b = ((((e - c.left)) - ((d / 2))));\n }\n ;\n ;\n this.navTime(b);\n }, this.navTime = function(a) {\n this.containerOffset += a;\n var b = this.select(\"canvasContainerSelector\").width(), c = this.canvas.width, d = ((c - b));\n if (((b == c))) {\n return;\n }\n ;\n ;\n this.containerOffset = Math.min(Math.max(this.containerOffset, 0), d), this.select(\"pastNavSelector\").css(\"visibility\", ((((this.containerOffset < d)) ? \"visible\" : \"hidden\"))), this.select(\"futureNavSelector\").css(\"visibility\", ((((this.containerOffset > 0)) ? \"visible\" : \"hidden\"))), $(\"#archive-drilldown-content\").css(\"transform\", ((((\"translateX(\" + this.containerOffset)) + \"px)\")));\n }, this.updateFromCache = function() {\n var a = this.storage.getItem(\"query\");\n ((((((a == this.attr.query)) && ((this.attr.timeRanges.length == 0)))) ? (this.attr.timeRanges = ((this.storage.getItem(\"timeRanges\") || [])), this.attr.highlights = ((this.storage.getItem(\"highlights\") || [])), this.canvasTransform = this.storage.getItem(\"canvasTransform\")) : ((((this.attr.timeRanges.length > 0)) && (this.storage.setItem(\"query\", this.attr.query, this.attr.ttl_ms), this.storage.setItem(\"timeRanges\", this.attr.timeRanges, this.attr.ttl_ms), this.storage.setItem(\"highlights\", this.attr.highlights, this.attr.ttl_ms))))));\n }, this.after(\"initialize\", function() {\n var a = JSBNG__document.createElement(\"canvas\");\n if (((!a.getContext || !a.getContext(\"2d\")))) {\n this.$node.hide();\n return;\n }\n ;\n ;\n this.JSBNG__on(\"click\", {\n pastNavSelector: this.navPast,\n futureNavSelector: this.navFuture,\n timeRangeLinkSelector: this.rangeClick,\n highlightLinkSelector: this.highlightClick\n });\n var b = customStorage({\n withExpiry: !0\n });\n this.storage = new b(\"archiveSearch\"), this.updateFromCache();\n if (((this.attr.timeRanges.length == 0))) {\n this.$node.hide();\n return;\n }\n ;\n ;\n this.$node.show(), this.canvas = this.select(\"canvasSelector\")[0], this.monthLinkTemplate = this.select(\"timeRangeLinkSelector\").clone(!1), this.select(\"timeRangeLinkSelector\").remove(), this.highlightItemTemplate = this.select(\"highlightLinkSelector\").clone(!1), this.select(\"highlightLinkSelector\").remove(), this.setupCoordinates(), this.drawGraph(), this.containerOffset = 0, this.navActive();\n var c = this.select(\"timeRangeLinkSelector\").length;\n this.trigger(\"uiArchiveShown\", {\n monthsDisplayed: c\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), customStorage = require(\"app/utils/storage/custom\"), _ = require(\"core/i18n\");\n module.exports = defineComponent(archiveNavigator);\n var SECONDS_IN_YEAR = 31536000, STROKE_WIDTH = 2, TOP_INSET = 0, BOTTOM_INSET = 0, MINIMUM_TIME_PERIOD = 5184000, TWEET_EPOCH = 1142899200, GRAPH_GRID_COLOR = \"#e8e8e8\", GRADIENT_FILL_TOP_COLOR = \"rgba(44, 138, 205, 0.75)\", GRADIENT_FILL_BOTTOM_COLOR = \"rgba(44, 138, 205, 0.00)\", STROKE_GRADIENT_TOP_COLOR = \"#203c87\", STROKE_GRADIENT_MIDDLE_COLOR = \"#0075be\", STROKE_GRADIENT_BOTTOM_COLOR = \"#29abe2\";\n});\ndefine(\"app/data/archive_navigator_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_scribe\",], function(module, require, exports) {\n function ArchiveNavigatorScribe() {\n this.generateNavData = function(a) {\n return {\n event_info: a.monthsInPast\n };\n }, this.generateImpressionData = function(a) {\n return {\n event_info: a.monthsDisplayed\n };\n }, this.after(\"initialize\", function() {\n this.scribeOnEvent(\"uiArchiveRangeClick\", {\n element: \"section\",\n action: \"search\"\n }, this.generateNavData), this.scribeOnEvent(\"uiArchiveHighlightClick\", {\n element: \"peak\",\n action: \"search\"\n }, this.generateNavData), this.scribeOnEvent(\"uiArchiveNavFuture\", {\n element: \"future_nav\",\n action: \"JSBNG__navigate\"\n }, this.generateNavData), this.scribeOnEvent(\"uiArchiveNavPast\", {\n element: \"past_nav\",\n action: \"JSBNG__navigate\"\n }, this.generateNavData), this.scribeOnEvent(\"uiArchiveShown\", \"impression\", this.generateImpressionData);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(ArchiveNavigatorScribe, withScribe);\n});\ndefine(\"app/boot/search\", [\"module\",\"require\",\"exports\",\"app/boot/app\",\"app/boot/logged_out\",\"core/utils\",\"app/boot/wtf_module\",\"app/boot/trends\",\"core/i18n\",\"app/ui/facets\",\"app/data/media_thumbnails_scribe\",\"app/ui/media/card_thumbnails\",\"app/data/facets_timeline\",\"app/ui/navigation_links\",\"app/ui/dialogs/iph_search_result_dialog\",\"app/ui/search/archive_navigator\",\"app/data/archive_navigator_scribe\",\"app/data/client_event\",], function(module, require, exports) {\n var bootApp = require(\"app/boot/app\"), loggedOutBoot = require(\"app/boot/logged_out\"), utils = require(\"core/utils\"), whoToFollowModule = require(\"app/boot/wtf_module\"), trends = require(\"app/boot/trends\"), _ = require(\"core/i18n\"), uiFacets = require(\"app/ui/facets\"), MediaThumbnailsScribe = require(\"app/data/media_thumbnails_scribe\"), CardThumbnails = require(\"app/ui/media/card_thumbnails\"), FacetsTimeline = require(\"app/data/facets_timeline\"), NavigationLinks = require(\"app/ui/navigation_links\"), InProductHelpDialog = require(\"app/ui/dialogs/iph_search_result_dialog\"), ArchiveNavigator = require(\"app/ui/search/archive_navigator\"), ArchiveNavigatorScribe = require(\"app/data/archive_navigator_scribe\"), clientEvent = require(\"app/data/client_event\");\n module.exports = function(b) {\n bootApp(b), loggedOutBoot(b), clientEvent.scribeData.query = b.query, whoToFollowModule(b), trends(b), MediaThumbnailsScribe.attachTo(JSBNG__document, b), FacetsTimeline.attachTo(JSBNG__document, {\n endpoint: \"/i/search/facets\",\n query: b.query\n }), CardThumbnails.attachTo(\".top-images\", utils.merge(b, {\n thumbnailSize: 66,\n thumbnailsVisible: 4,\n loadOnEventName: \"uiLoadThumbnails\",\n defaultGalleryTitle: _(\"Top photos for \\\"{{query}}\\\"\", {\n query: b.query\n }),\n profileUser: !1,\n mediaGrid: !1,\n dataEvents: {\n requestItems: \"uiWantsMoreFacetTimelineItems\",\n gotItems: \"dataGotMoreFacetimagesTimelineItems\"\n },\n defaultRequestData: {\n facet_type: \"images\",\n onebox_type: b.oneboxType\n },\n eventData: {\n scribeContext: {\n component: \"dashboard_photos\"\n }\n }\n })), CardThumbnails.attachTo(\".top-videos\", utils.merge(b, {\n thumbnailSize: 66,\n thumbnailsVisible: 4,\n loadOnEventName: \"uiLoadThumbnails\",\n defaultGalleryTitle: _(\"Top videos for \\\"{{query}}\\\"\", {\n query: b.query\n }),\n profileUser: !1,\n mediaGrid: !1,\n dataEvents: {\n requestItems: \"uiWantsMoreFacetTimelineItems\",\n gotItems: \"dataGotMoreFacetvideosTimelineItems\"\n },\n defaultRequestData: {\n facet_type: \"videos\",\n onebox_type: b.oneboxType\n },\n eventData: {\n scribeContext: {\n component: \"dashboard_videos\"\n }\n }\n })), uiFacets.attachTo(\".dashboard\", utils.merge(b, {\n thumbnailLoadEvent: \"uiLoadThumbnails\"\n })), ArchiveNavigatorScribe.attachTo(\".module.archive-search\"), ArchiveNavigator.attachTo(\".module.archive-search\", utils.merge(b.timeNavData, {\n eventData: {\n scribeContext: {\n component: \"archive_navigator\"\n }\n }\n })), InProductHelpDialog.attachTo(\"#in_product_help_dialog\"), NavigationLinks.attachTo(\".search-nav\", {\n eventData: {\n scribeContext: {\n component: \"stream_nav\"\n }\n }\n }), NavigationLinks.attachTo(\".js-search-pivot\", {\n eventData: {\n scribeContext: {\n component: \"stream_nav\"\n }\n }\n }), NavigationLinks.attachTo(\".js-related-queries\", {\n eventData: {\n scribeContext: {\n component: \"related_queries\"\n }\n }\n }), NavigationLinks.attachTo(\".js-spelling-corrections\", {\n eventData: {\n scribeContext: {\n component: \"spelling_corrections\"\n }\n }\n });\n };\n});\ndefine(\"app/ui/timelines/with_story_pagination\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withStoryPagination() {\n this.isOldItem = function(a) {\n return a.is_scrolling_request;\n }, this.isNewItem = function(a) {\n return a.is_refresh_request;\n }, this.wasNewItemsRequest = function(a) {\n return !!a.refresh_cursor;\n }, this.wasOldItemsRequest = function(a) {\n return !!a.scroll_cursor;\n }, this.wasRangeRequest = function() {\n return !1;\n }, this.shouldGetOldItems = function() {\n return this.has_more_items;\n }, this.getOldItemsData = function() {\n return {\n scroll_cursor: this.scroll_cursor\n };\n }, this.getNewItemsData = function() {\n return {\n refresh_cursor: this.refresh_cursor\n };\n }, this.resetStateVariables = function(a) {\n a = ((a || {\n })), this.resetScrollCursor(a), this.resetRefreshCursor(a), this.trigger(\"uiStoryPaginationReset\");\n }, this.resetScrollCursor = function(a) {\n if (a.scroll_cursor) {\n this.scroll_cursor = a.scroll_cursor, this.$container.attr(\"data-scroll-cursor\", this.scroll_cursor);\n }\n else {\n if (a.is_scrolling_request) this.has_more_items = !1, this.scroll_cursor = null, this.$container.removeAttr(\"data-scroll-cursor\");\n else {\n var b = this.$container.attr(\"data-scroll-cursor\");\n this.scroll_cursor = ((b ? b : null));\n }\n ;\n }\n ;\n ;\n }, this.resetRefreshCursor = function(a) {\n if (a.refresh_cursor) this.refresh_cursor = a.refresh_cursor, this.$container.attr(\"data-refresh-cursor\", this.refresh_cursor);\n else {\n var b = this.$container.attr(\"data-refresh-cursor\");\n this.refresh_cursor = ((b ? b : null));\n }\n ;\n ;\n }, this.onTimelineReset = function(a, b) {\n this.resetStateVariables(b);\n }, this.after(\"initialize\", function(a) {\n this.$container = this.select(\"containerSelector\"), this.has_more_items = !0, this.resetStateVariables(), this.JSBNG__on(\"uiTimelineReset\", this.onTimelineReset);\n });\n };\n;\n module.exports = withStoryPagination;\n});\ndefine(\"app/ui/gallery/with_grid\", [\"module\",\"require\",\"exports\",\"app/utils/image/image_loader\",], function(module, require, exports) {\n function withGrid() {\n this.defaultAttrs({\n scribeRows: !1,\n gridWidth: 512,\n gridHeight: 120,\n gridMargin: 8,\n gridRatio: 3,\n gridPanoRatio: 2.5,\n mediaSelector: \".media-thumbnail:not(.twitter-timeline-link)\",\n mediaRowFirstSelector: \".media-thumbnail.clear:not(.twitter-timeline-link)\"\n }), this.render = function(a) {\n this.currentRow = this.getCurrentRow();\n var b = this.getUnprocessedMedia();\n if (!b.length) {\n this.scribeResults();\n return;\n }\n ;\n ;\n var c = 0, d = 0, e = [];\n for (var f = 0; ((f < b.length)); f++) {\n if (((this.attr.gridRowLimit && ((this.currentRow > this.attr.gridRowLimit))))) {\n return;\n }\n ;\n ;\n var g = $(b.get(f));\n ((!c && (c = parseInt(g.attr(\"data-height\"))))), ((a && (c = this.attr.gridHeight))), d += this.scaleGridMedia(g, c), e.push(g);\n if (((((((d / c)) >= this.attr.gridRatio)) || a))) {\n ((a && (d = this.attr.gridWidth))), this.setGridRow(e, d, c, a), this.setCurrentRow(), this.currentRow++, d = 0, c = 0, e = [];\n }\n ;\n ;\n };\n ;\n this.scribeResults();\n }, this.renderAll = function() {\n JSBNG__clearTimeout(this.renderDelay), this.renderDelay = JSBNG__setTimeout(this.render.bind(this), 20);\n }, this.setCurrentRow = function() {\n $(this.node).attr(\"data-processed-rows\", this.currentRow);\n }, this.getCurrentRow = function() {\n var a = parseInt($(this.node).attr(\"data-processed-rows\"));\n return ((a ? this.currentRow = a : this.currentRow = 1)), this.currentRow;\n }, this.scaleGridMedia = function(a, b) {\n var c = parseInt(a.attr(\"data-height\")), d = parseInt(a.attr(\"data-width\")), e = ((((b / c)) * d));\n return ((((((d / c)) > this.attr.gridPanoRatio)) && (e = ((b * this.attr.gridPanoRatio)), a.attr(\"data-pano\", \"true\")))), a.attr({\n \"scaled-height\": b,\n \"scaled-width\": e\n }), e;\n }, this.setGridRow = function(a, b, c, d) {\n var e = ((this.attr.gridWidth - ((a.length * this.attr.gridMargin)))), f = ((e / b)), g = ((c * f));\n $.each(a, function(a, b) {\n var c = $(b), e = ((parseInt(c.attr(\"scaled-width\")) * f));\n c.height(g), c.width(e), c.attr(\"scaled-height\", g), c.attr(\"Scaled-width\", e), c.attr(\"data-grid-processed\", \"true\"), c.addClass(\"enabled\"), ((((((a == 0)) && !d)) && c.addClass(\"clear\"))), this.renderMedia(c);\n }.bind(this));\n }, this.scribeResults = function() {\n if (this.attr.scribeRows) {\n var a = this.getUnscribedMedia(), b = {\n thumbnails: [],\n scribeContext: {\n section: \"media_gallery\"\n }\n };\n $.each(a, function(a, c) {\n b.thumbnails.push($(c).attr(\"data-url\")), $(c).attr(\"data-scribed\", !0);\n }), this.trigger(\"uiMediaGalleryResults\", b);\n }\n ;\n ;\n }, this.getMedia = function() {\n return this.select(\"mediaSelector\");\n }, this.getUnprocessedMedia = function() {\n return this.getMedia().filter(\":not([data-grid-processed='true'])\");\n }, this.getUnscribedMedia = function() {\n return this.getMedia().filter(\":not([data-scribed='true'])\");\n }, this.markFailedMedia = function(a) {\n var b;\n if (a.hasClass(\"clear\")) {\n b = a.next(this.attr.mediaSelector);\n if (!b.length) {\n return;\n }\n ;\n ;\n }\n else {\n b = a.prev(this.attr.mediaSelector);\n while (((b && !b.hasClass(\"clear\")))) {\n b = b.prev(this.attr.mediaSelector);\n ;\n };\n ;\n }\n ;\n ;\n b.attr(\"data-grid-processed\", \"false\"), b.nextAll(this.attr.mediaSelector).attr(\"data-grid-processed\", \"false\"), b.nextAll(this.attr.mediaSelector).removeClass(\"clear\"), JSBNG__clearTimeout(this.resetTimer), this.resetTimer = JSBNG__setTimeout(this.render.bind(this), 200);\n }, this.renderMedia = function(a) {\n var b = $(a);\n if (b.attr(\"data-loaded\")) {\n return;\n }\n ;\n ;\n var c = function(a) {\n this.loadThumbSuccess(b, a);\n }.bind(this), d = function() {\n this.loadThumbFail(b);\n }.bind(this);\n imageLoader.load(b.attr(\"data-resolved-url-small\"), c, d);\n }, this.loadThumbSuccess = function(a, b) {\n if (a.attr(\"data-pano\")) {\n var c = ((((a.height() / parseInt(a.attr(\"data-height\")))) * parseInt(a.attr(\"data-width\"))));\n b.width(c), b.css(\"margin-left\", ((((-((c - a.width())) / 2)) + \"px\")));\n }\n ;\n ;\n a.prepend(b), a.attr(\"data-loaded\", !0);\n }, this.loadThumbFail = function(a) {\n this.markFailedMedia(a), a.remove();\n }, this.openGallery = function(a) {\n a.preventDefault(), a.stopPropagation(), this.trigger(a.target, \"uiOpenGallery\", {\n title: \"Photo\"\n });\n var b = $(a.target);\n this.trigger(\"uiMediaThumbnailClick\", {\n url: b.attr(\"data-url\")\n });\n }, this.after(\"initialize\", function() {\n this.render(), this.JSBNG__on(\"click\", {\n mediaSelector: this.openGallery\n }), this.JSBNG__on(\"uiHasInjectedOldTimelineItems\", this.renderAll);\n });\n };\n;\n var imageLoader = require(\"app/utils/image/image_loader\");\n module.exports = withGrid;\n});\ndefine(\"app/ui/timelines/universal_timeline\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/timelines/with_base_timeline\",\"app/ui/timelines/with_old_items\",\"app/ui/timelines/with_new_items\",\"app/ui/timelines/with_story_pagination\",\"app/ui/timelines/with_activity_supplements\",\"app/ui/with_timestamp_updating\",\"app/ui/with_tweet_actions\",\"app/ui/with_item_actions\",\"app/ui/timelines/with_traveling_ptw\",\"app/ui/timelines/with_pinned_stream_items\",\"app/ui/gallery/with_grid\",\"app/ui/with_interaction_data\",\"app/ui/with_user_actions\",\"app/ui/gallery/with_gallery\",], function(module, require, exports) {\n function universalTimeline() {\n this.defaultAttrs({\n gridRowLimit: 2,\n separationModuleSelector: \".separation-module\",\n prevToModuleClass: \"before-module\",\n userGalleryItemSelector: \".stream-user-gallery\",\n prevToUserGalleryItemClass: \"before-user-gallery\",\n eventData: {\n scribeContext: {\n component: \"\"\n }\n }\n }), this.setPrevToModuleClass = function() {\n this.select(\"separationModuleSelector\").prev().addClass(this.attr.prevToModuleClass);\n }, this.initialItemsDisplayed = function() {\n var a = this.select(\"genericItemSelector\"), b = [], c = [], d = function(a, d) {\n if (!$(d).data(\"item-type\")) {\n return;\n }\n ;\n ;\n var e = this.interactionData(this.findFirstItemContent($(d)));\n switch (e.itemType) {\n case \"tweet\":\n b.push(e);\n break;\n case \"user\":\n c.push(e);\n };\n ;\n }.bind(this);\n for (var e = 0, f = a.length; ((e < f)); e++) {\n d(e, a[e]);\n ;\n };\n ;\n this.reportUsersAndTweets(c, b);\n }, this.reportItemsDisplayed = function(a, b) {\n var c = [], d = [];\n b.items.forEach(function(a) {\n switch (a.itemType) {\n case \"tweet\":\n d.push(a);\n break;\n case \"user\":\n c.push(a);\n };\n ;\n }), this.reportUsersAndTweets(c, d);\n }, this.reportUsersAndTweets = function(a, b) {\n this.trigger(\"uiTweetsDisplayed\", {\n tweets: b\n }), this.trigger(\"uiUsersDisplayed\", {\n users: a\n });\n }, this.setItemType = function(a) {\n var b = a.closest(this.attr.genericItemSelector), c = b.data(\"item-type\");\n this.attr.itemType = c, this.attr.eventData.scribeContext.component = c;\n }, this.after(\"initialize\", function(a) {\n this.setPrevToModuleClass(), this.initialItemsDisplayed(), this.JSBNG__on(\"uiHasInjectedNewTimeline uiHasInjectedOldTimelineItems uiHasInjectedRangeTimelineItems\", this.reportItemsDisplayed);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withBaseTimeline = require(\"app/ui/timelines/with_base_timeline\"), withOldItems = require(\"app/ui/timelines/with_old_items\"), withNewItems = require(\"app/ui/timelines/with_new_items\"), withStoryPagination = require(\"app/ui/timelines/with_story_pagination\"), withActivitySupplements = require(\"app/ui/timelines/with_activity_supplements\"), withTimestampUpdating = require(\"app/ui/with_timestamp_updating\"), withTweetActions = require(\"app/ui/with_tweet_actions\"), withItemActions = require(\"app/ui/with_item_actions\"), withTravelingPtw = require(\"app/ui/timelines/with_traveling_ptw\"), withPinnedStreamItems = require(\"app/ui/timelines/with_pinned_stream_items\"), withGrid = require(\"app/ui/gallery/with_grid\"), withInteractionData = require(\"app/ui/with_interaction_data\"), withUserActions = require(\"app/ui/with_user_actions\"), withGallery = require(\"app/ui/gallery/with_gallery\");\n module.exports = defineComponent(universalTimeline, withBaseTimeline, withStoryPagination, withOldItems, withNewItems, withTimestampUpdating, withTweetActions, withItemActions, withTravelingPtw, withPinnedStreamItems, withActivitySupplements, withGrid, withUserActions, withGallery);\n});\ndefine(\"app/boot/universal_timeline\", [\"module\",\"require\",\"exports\",\"app/boot/timeline\",\"app/boot/tweets\",\"app/boot/help_pips\",\"app/ui/expando/close_all_button\",\"app/ui/timelines/universal_timeline\",\"core/utils\",], function(module, require, exports) {\n function initialize(a) {\n var b = utils.merge(a, {\n endpoint: a.search_endpoint\n });\n timelineBoot(b), tweetsBoot(\"#timeline\", utils.merge(b, {\n excludeUserActions: !0\n })), ((b.help_pips_decider && helpPipsBoot(b))), CloseAllButton.attachTo(\"#close-all-button\", {\n addEvent: \"uiHasExpandedTweet\",\n subtractEvent: \"uiHasCollapsedTweet\",\n where: \"#timeline\",\n closeAllEvent: \"uiWantsToCloseAllTweets\"\n }), UniversalTimeline.attachTo(\"#timeline\", utils.merge(b, {\n tweetItemSelector: \"div.original-tweet\",\n gridRowLimit: 2,\n scribeRows: !0\n }));\n };\n;\n var timelineBoot = require(\"app/boot/timeline\"), tweetsBoot = require(\"app/boot/tweets\"), helpPipsBoot = require(\"app/boot/help_pips\"), CloseAllButton = require(\"app/ui/expando/close_all_button\"), UniversalTimeline = require(\"app/ui/timelines/universal_timeline\"), utils = require(\"core/utils\");\n module.exports = initialize;\n});\ndefine(\"app/data/user_search\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function userSearchData() {\n this.defaultAttrs({\n query: null\n }), this.makeUserSearchModuleRequest = function() {\n if (!this.attr.query) {\n return;\n }\n ;\n ;\n var a = {\n q: this.attr.query\n };\n this.get({\n url: \"/i/search/top_users/\",\n data: a,\n eventData: a,\n success: \"dataUserSearchContent\",\n error: \"dataUserSearchContentError\"\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiRefreshUserSearchModule\", this.makeUserSearchModuleRequest);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(userSearchData, withData);\n});\ndefine(\"app/data/user_search_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",\"app/utils/scribe_item_types\",], function(module, require, exports) {\n function userSearchDataScribe() {\n this.scribeResults = function(a, b) {\n var c = {\n action: \"impression\"\n };\n this.scribe(c, b);\n var d = {\n };\n c.element = b.element, ((((b.items && b.items.length)) ? (c.action = \"results\", d = {\n items: b.items.map(function(a, b) {\n return {\n id: a,\n item_type: itemTypes.user,\n position: b\n };\n })\n }) : c.action = \"no_results\")), this.scribe(c, b, d);\n }, this.scribeUserSearch = function(a, b) {\n this.scribe({\n action: \"search\"\n }, b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiUserSearchModuleDisplayed\", this.scribeResults), this.JSBNG__on(\"uiUserSearchNavigation\", this.scribeUserSearch);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\"), itemTypes = require(\"app/utils/scribe_item_types\");\n module.exports = defineComponent(userSearchDataScribe, withScribe);\n});\ndefine(\"app/ui/user_search\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_item_actions\",], function(module, require, exports) {\n function userSearchModule() {\n this.defaultAttrs({\n peopleLinkSelector: \"a.list-link\",\n avatarRowSelector: \".avatar-row\",\n userThumbSelector: \".user-thumb\",\n itemType: \"user\"\n }), this.updateContent = function(a, b) {\n var c = this.select(\"peopleLinkSelector\");\n c.JSBNG__find(this.attr.avatarRowSelector).remove(), c.append(b.users_module), this.userItemsDisplayed();\n }, this.userItemsDisplayed = function() {\n var a = this.select(\"userThumbSelector\").map(function() {\n return (($(this).data(\"user-id\") + \"\"));\n }).toArray();\n this.trigger(\"uiUserSearchModuleDisplayed\", {\n items: a,\n element: \"initial\"\n });\n }, this.searchForUsers = function(a, b) {\n ((((a.target == b.el)) && this.trigger(\"uiUserSearchNavigation\")));\n }, this.getItemPosition = function(a) {\n return a.closest(this.attr.userThumbSelector).index();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataUserSearchContent\", this.updateContent), this.JSBNG__on(\"click\", {\n peopleLinkSelector: this.searchForUsers\n }), this.trigger(\"uiRefreshUserSearchModule\");\n });\n };\n;\n var defineComponent = require(\"core/component\"), withItemActions = require(\"app/ui/with_item_actions\");\n module.exports = defineComponent(userSearchModule, withItemActions);\n});\ndefine(\"app/data/saved_searches\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",\"app/data/with_auth_token\",], function(module, require, exports) {\n function savedSearches() {\n this.saveSearch = function(a, b) {\n this.post({\n url: \"/i/saved_searches/create.json\",\n data: b,\n headers: {\n \"X-PHX\": !0\n },\n eventData: \"\",\n success: \"dataAddedSavedSearch\",\n error: $.noop\n });\n }, this.removeSavedSearch = function(a, b) {\n this.post({\n url: ((((\"/i/saved_searches/destroy/\" + encodeURIComponent(b.id))) + \".json\")),\n data: \"\",\n headers: {\n \"X-PHX\": !0\n },\n eventData: \"\",\n success: \"dataRemovedSavedSearch\",\n error: $.noop\n });\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(\"uiAddSavedSearch\", this.saveSearch), this.JSBNG__on(\"uiRemoveSavedSearch\", this.removeSavedSearch);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), withAuthToken = require(\"app/data/with_auth_token\");\n module.exports = defineComponent(savedSearches, withData, withAuthToken);\n});\ndefine(\"app/ui/search_dropdown\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/i18n\",\"app/ui/with_dropdown\",], function(module, require, exports) {\n function searchDropdown() {\n this.defaultAttrs({\n toggler: \".js-search-dropdown\",\n saveOrRemoveSelector: \".js-toggle-saved-search-link\",\n savedSearchSelector: \".js-saved-search\",\n unsavedSearchSelector: \".js-unsaved-search\",\n searchTitleSelector: \".search-title\",\n advancedSearchSelector: \".advanced-search\",\n embedSearchSelector: \".embed-search\"\n }), this.addSavedSearch = function(a, b) {\n this.trigger(\"uiAddSavedSearch\", {\n query: $(a.target).data(\"query\")\n });\n }, this.removeSavedSearch = function(a, b) {\n this.savedSearchId = $(a.target).data(\"id\"), this.trigger(\"uiOpenConfirmDialog\", {\n titleText: _(\"Remove saved search\"),\n bodyText: _(\"Are you sure you want to remove this search?\"),\n cancelText: _(\"No\"),\n submitText: _(\"Yes\"),\n action: \"SavedSearchRemove\"\n });\n }, this.confirmSavedSearchRemoval = function() {\n if (!this.savedSearchId) {\n return;\n }\n ;\n ;\n this.trigger(\"uiRemoveSavedSearch\", {\n id: this.savedSearchId\n });\n }, this.savedSearchRemoved = function(a, b) {\n this.select(\"saveOrRemoveSelector\").removeClass(\"js-saved-search\").addClass(\"js-unsaved-search\").text(_(\"Save search\"));\n var c = $(this.attr.searchTitleSelector).JSBNG__find(\".search-query\").text();\n c = $(\"\\u003Cdiv/\\u003E\").text(c).html(), $(this.attr.searchTitleSelector).html(_(\"Results for \\u003Cstrong class=\\\"search-query\\\"\\u003E{{query}}\\u003C/strong\\u003E\", {\n query: c\n }));\n }, this.navigatePage = function(a, b) {\n this.trigger(\"uiNavigate\", {\n href: $(a.target).attr(\"href\")\n });\n }, this.savedSearchAdded = function(a, b) {\n this.select(\"saveOrRemoveSelector\").removeClass(\"js-unsaved-search\").addClass(\"js-saved-search\").text(_(\"Remove saved search\")).data(\"id\", b.id);\n var c = $(this.attr.searchTitleSelector).JSBNG__find(\".search-query\").text();\n c = $(\"\\u003Cdiv/\\u003E\").text(c).html(), $(this.attr.searchTitleSelector).html(_(\"Saved search: \\u003Cstrong class=\\\"search-query\\\"\\u003E{{query}}\\u003C/strong\\u003E\", {\n query: c\n }));\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(\"click\", {\n advancedSearchSelector: this.navigatePage,\n embedSearchSelector: this.navigatePage,\n savedSearchSelector: this.removeSavedSearch,\n unsavedSearchSelector: this.addSavedSearch\n }), this.JSBNG__on(JSBNG__document, \"uiSavedSearchRemoveConfirm\", this.confirmSavedSearchRemoval), this.JSBNG__on(JSBNG__document, \"dataAddedSavedSearch\", this.savedSearchAdded), this.JSBNG__on(JSBNG__document, \"dataRemovedSavedSearch\", this.savedSearchRemoved);\n });\n };\n;\n var defineComponent = require(\"core/component\"), _ = require(\"core/i18n\"), withDropdown = require(\"app/ui/with_dropdown\");\n module.exports = defineComponent(searchDropdown, withDropdown);\n});\ndefine(\"app/data/story_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_interaction_data_scribe\",], function(module, require, exports) {\n function storyScribe() {\n this.defaultAttrs({\n t1dScribeErrors: !1,\n t1dScribeTimes: !1\n }), this.scribeCardSearchClick = function(a, b) {\n this.scribeInteraction({\n element: \"topic\",\n action: \"search\"\n }, b);\n }, this.scribeCardNewsClick = function(a, b) {\n var c = {\n };\n ((b.tcoUrl && (c.message = b.tcoUrl))), ((((b.text && ((b.text.indexOf(\"pic.twitter.com\") == 0)))) && (b.url = ((\"http://\" + b.text))))), this.scribeInteraction({\n element: \"article\",\n action: \"open_link\"\n }, b, c);\n }, this.scribeCardMediaClick = function(a, b) {\n this.scribeInteraction({\n element: b.storyMediaType,\n action: \"click\"\n }, b);\n }, this.scribeTweetStory = function(a, b) {\n this.scribeInteraction({\n element: \"tweet_link\",\n action: ((((a.type === \"uiStoryTweetSent\")) ? \"success\" : \"click\"))\n }, b);\n }, this.scribeCardImageLoadTime = function(a, b) {\n ((this.attr.t1dScribeTimes && this.scribe({\n component: \"topic_story\",\n action: \"complete\"\n }, b)));\n }, this.scribeCardImageLoadError = function(a, b) {\n ((this.attr.t1dScribeErrors && this.scribe({\n component: \"topic_story\",\n action: \"error\"\n }, b)));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiCardMediaClick\", this.scribeCardMediaClick), this.JSBNG__on(\"uiCardNewsClick\", this.scribeCardNewsClick), this.JSBNG__on(\"uiCardSearchClick\", this.scribeCardSearchClick), this.JSBNG__on(\"uiTweetStoryLinkClicked uiStoryTweetSent\", this.scribeTweetStory), this.JSBNG__on(\"uiCardImageLoaded\", this.scribeCardImageLoadTime), this.JSBNG__on(\"uiCardImageLoadError\", this.scribeCardImageLoadError);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withInterationDataScribe = require(\"app/data/with_interaction_data_scribe\");\n module.exports = defineComponent(storyScribe, withInterationDataScribe);\n});\ndefine(\"app/data/onebox_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function oneboxScribe() {\n this.scribeOneboxImpression = function(a, b) {\n var c = {\n component: b.type,\n action: \"impression\"\n };\n this.scribe(c);\n if (b.items) {\n var d = {\n item_count: b.items.length,\n item_ids: b.items\n };\n c.action = ((b.items.length ? \"results\" : \"no_results\")), this.scribe(c, b, d);\n }\n ;\n ;\n }, this.scribeViewAllClick = function(a, b) {\n var c = {\n component: b.type,\n action: \"view_all\"\n };\n this.scribe(c, b);\n }, this.scribeEventOneboxClick = function(a, b) {\n this.scribe({\n component: \"JSBNG__event\",\n section: \"onebox\",\n action: \"click\"\n }, b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiOneboxDisplayed\", this.scribeOneboxImpression), this.JSBNG__on(\"uiOneboxViewAllClick\", this.scribeViewAllClick), this.JSBNG__on(\"uiEventOneboxClick\", this.scribeEventOneboxClick);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(oneboxScribe, withScribe);\n});\ndefine(\"app/ui/with_story_clicks\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/ui/with_interaction_data\",], function(module, require, exports) {\n function withStoryClicks() {\n compose.mixin(this, [withInteractionData,]), this.defaultAttrs({\n cardSearchSelector: \".js-action-card-search\",\n cardNewsSelector: \".js-action-card-news\",\n cardMediaSelector: \".js-action-card-media\",\n cardHeadlineSelector: \".js-news-headline .js-action-card-news\",\n tweetLinkButtonSelector: \".story-social-new-tweet\",\n storyItemContainerSelector: \".js-story-item\"\n }), this.getLinkData = function(a) {\n var b = $(a).closest(\"[data-url]\");\n return {\n url: b.attr(\"data-url\"),\n tcoUrl: $(a).closest(\"a[href]\").attr(\"href\"),\n text: b.text()\n };\n }, this.cardSearchClick = function(a, b) {\n this.trigger(\"uiCardSearchClick\", this.interactionData(a, this.getLinkData(a.target)));\n }, this.cardNewsClick = function(a, b) {\n var c = $(a.target);\n this.trigger(\"uiCardNewsClick\", this.interactionData(a, this.getLinkData(a.target)));\n }, this.cardMediaClick = function(a, b) {\n this.trigger(\"uiCardMediaClick\", this.interactionData(a, this.getLinkData(a.target)));\n }, this.selectStory = function(a, b) {\n var c = ((((a.type === \"uiHasExpandedStory\")) ? \"uiItemSelected\" : \"uiItemDeselected\")), d = $(a.target).JSBNG__find(this.attr.storyItemContainerSelector), e = this.interactionData(d);\n e.scribeContext.element = ((((e.storySource === \"trends\")) ? \"top_tweets\" : \"social_context\")), this.trigger(c, e);\n }, this.tweetSent = function(a, b) {\n var c = b.in_reply_to_status_id;\n if (c) {\n var d = this.$node.JSBNG__find(((\".open \" + this.attr.storyItemSelector))).has(((((\".tweet[data-tweet-id=\" + c)) + \"]\")));\n if (!d.length) {\n return;\n }\n ;\n ;\n var e = this.getItemData(d, c, \"reply\");\n this.trigger(\"uiStoryTweetAction\", e);\n }\n else {\n var d = this.$node.JSBNG__find(((((((this.attr.storyItemSelector + \"[data-query=\\\"\")) + b.customData.query)) + \"\\\"]\")));\n if (!d.length) {\n return;\n }\n ;\n ;\n this.trigger(\"uiStoryTweetSent\", this.interactionData(d));\n }\n ;\n ;\n }, this.tweetSelectedStory = function(a, b) {\n var c = $(b.el).closest(this.attr.storyItemSelector), d = this.interactionData(c);\n this.trigger(\"uiOpenTweetDialog\", {\n defaultText: ((\" \" + c.data(\"url\"))),\n cursorPosition: 0,\n customData: {\n query: c.data(\"query\")\n },\n scribeContext: d.scribeContext\n }), this.trigger(\"uiTweetStoryLinkClicked\", this.interactionData(c));\n }, this.getCardPosition = function(a) {\n var b;\n return this.select(\"storyItemSelector\").each(function(c) {\n if ((($(this).attr(\"data-query\") === a))) {\n return b = c, !1;\n }\n ;\n ;\n }), b;\n }, this.getItemData = function(a, b, c) {\n var d = $(a).closest(this.attr.storyItemSelector), e = d.JSBNG__find(this.attr.cardHeadlineSelector), f = d.data(\"query\"), g = [];\n d.JSBNG__find(\".tweet[data-tweet-id]\").each(function() {\n g.push($(this).data(\"tweet-id\"));\n });\n var h = {\n cardType: d.data(\"story-type\"),\n query: f,\n title: e.text().trim(),\n tweetIds: g,\n cardMediaType: d.data(\"card-media-type\"),\n position: this.getCardPosition(f),\n href: e.attr(\"href\"),\n source: d.data(\"source\"),\n tweetId: b,\n action: c\n };\n return h;\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n cardSearchSelector: this.cardSearchClick,\n cardNewsSelector: this.cardNewsClick,\n cardMediaSelector: this.cardMediaClick,\n tweetLinkButtonSelector: this.tweetSelectedStory\n }), this.JSBNG__on(JSBNG__document, \"uiTweetSent\", this.tweetSent), this.JSBNG__on(\"uiHasCollapsedStory uiHasExpandedStory\", this.selectStory);\n });\n };\n;\n var compose = require(\"core/compose\"), withInteractionData = require(\"app/ui/with_interaction_data\");\n module.exports = withStoryClicks;\n});\ndeferred(\"$lib/jquery_autoellipsis.js\", function() {\n (function($) {\n function e(a, b) {\n var c = a.data(\"jqae\");\n ((c || (c = {\n })));\n var d = c.wrapperElement;\n ((d || (d = a.wrapInner(\"\\u003Cdiv/\\u003E\").JSBNG__find(\"\\u003Ediv\"))));\n var e = d.data(\"jqae\");\n ((e || (e = {\n })));\n var i = e.originalContent;\n ((i ? d = e.originalContent.clone(!0).data(\"jqae\", {\n originalContent: i\n }).replaceAll(d) : d.data(\"jqae\", {\n originalContent: d.clone(!0)\n }))), a.data(\"jqae\", {\n wrapperElement: d,\n containerWidth: a.JSBNG__innerWidth(),\n containerHeight: a.JSBNG__innerHeight()\n });\n var j = !1, k = d;\n ((b.selector && (k = $(d.JSBNG__find(b.selector).get().reverse())))), k.each(function() {\n var c = $(this), e = c.text(), i = !1;\n if (((((d.JSBNG__innerHeight() - c.JSBNG__innerHeight())) > a.JSBNG__innerHeight()))) c.remove();\n else {\n h(c);\n if (c.contents().length) {\n ((j && (g(c).get(0).nodeValue += b.ellipsis, j = !1)));\n while (((d.JSBNG__innerHeight() > a.JSBNG__innerHeight()))) {\n i = f(c);\n if (!i) {\n j = !0, c.remove();\n break;\n }\n ;\n ;\n h(c);\n if (!c.contents().length) {\n j = !0, c.remove();\n break;\n }\n ;\n ;\n g(c).get(0).nodeValue += b.ellipsis;\n };\n ;\n ((((((((b.setTitle == \"onEllipsis\")) && i)) || ((b.setTitle == \"always\")))) ? c.attr(\"title\", e) : ((((b.setTitle != \"never\")) && c.removeAttr(\"title\")))));\n }\n ;\n ;\n }\n ;\n ;\n });\n };\n ;\n function f(a) {\n var b = g(a);\n if (b.length) {\n var c = b.get(0).nodeValue, d = c.lastIndexOf(\" \");\n return ((((d > -1)) ? (c = $.trim(c.substring(0, d)), b.get(0).nodeValue = c) : b.get(0).nodeValue = \"\")), !0;\n }\n ;\n ;\n return !1;\n };\n ;\n function g(a) {\n if (a.contents().length) {\n var b = a.contents(), c = b.eq(((b.length - 1)));\n return ((c.filter(i).length ? c : g(c)));\n }\n ;\n ;\n a.append(\"\");\n var b = a.contents();\n return b.eq(((b.length - 1)));\n };\n ;\n function h(a) {\n if (a.contents().length) {\n var b = a.contents(), c = b.eq(((b.length - 1)));\n if (c.filter(i).length) {\n var d = c.get(0).nodeValue;\n return d = $.trim(d), ((((d == \"\")) ? (c.remove(), !0) : !1));\n }\n ;\n ;\n while (h(c)) {\n ;\n };\n ;\n return ((c.contents().length ? !1 : (c.remove(), !0)));\n }\n ;\n ;\n return !1;\n };\n ;\n function i() {\n return ((this.nodeType === 3));\n };\n ;\n function j(c, d) {\n a[c] = d, ((b || (b = window.JSBNG__setInterval(function() {\n l();\n }, 200))));\n };\n ;\n function k(c) {\n ((a[c] && (delete a[c], ((a.length || ((b && (window.JSBNG__clearInterval(b), b = undefined))))))));\n };\n ;\n function l() {\n if (!c) {\n c = !0;\n {\n var fin58keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin58i = (0);\n var b;\n for (; (fin58i < fin58keys.length); (fin58i++)) {\n ((b) = (fin58keys[fin58i]));\n {\n $(b).each(function() {\n var c, d;\n c = $(this), d = c.data(\"jqae\"), ((((((d.containerWidth != c.JSBNG__innerWidth())) || ((d.containerHeight != c.JSBNG__innerHeight())))) && e(c, a[b])));\n });\n ;\n };\n };\n };\n ;\n c = !1;\n }\n ;\n ;\n };\n ;\n var a = {\n }, b, c = !1, d = {\n ellipsis: \"...\",\n setTitle: \"never\",\n live: !1\n };\n $.fn.ellipsis = function(a, b) {\n var c, f;\n return c = $(this), ((((typeof a != \"string\")) && (b = a, a = undefined))), f = $.extend({\n }, d, b), f.selector = a, c.each(function() {\n var a = $(this);\n e(a, f);\n }), ((f.live ? j(c.selector, f) : k(c.selector))), this;\n };\n })(jQuery);\n});\ndefine(\"app/utils/ellipsis\", [\"module\",\"require\",\"exports\",\"$lib/jquery_autoellipsis.js\",], function(module, require, exports) {\n require(\"$lib/jquery_autoellipsis.js\");\n var isTextOverflowEllipsisSupported = ((\"textOverflow\" in $(\"\\u003Cdiv\\u003E\")[0].style)), isEllipsisSupported = function(a) {\n return ((((typeof a.forceEllipsisSupport == \"boolean\")) ? a.forceEllipsisSupport : isTextOverflowEllipsisSupported));\n }, singleLineEllipsis = function(a, b) {\n return ((isEllipsisSupported(b) ? !1 : ($(a).each(function() {\n var a = $(this);\n if (a.hasClass(\"ellipsify-container\")) {\n if (!b.force) {\n return !0;\n }\n ;\n ;\n var c = a.JSBNG__find(\"span.ellip-content\");\n ((c.length && a.html(c.html())));\n }\n ;\n ;\n a.addClass(\"ellipsify-container\").wrapInner($(\"\\u003Cspan\\u003E\").addClass(\"ellip-content\"));\n var d = a.JSBNG__find(\"span.ellip-content\");\n if (((d.width() > a.width()))) {\n var e = $(\"\\u003Cdiv class=\\\"ellip\\\"\\u003E&hellip;\\u003C/div\\u003E\");\n a.append(e), d.width(((a.width() - e.width()))).css(\"margin-right\", e.width());\n }\n ;\n ;\n }), !0)));\n }, multilineEllipsis = function(a, b) {\n $(a).each(function(a, c) {\n var d = $(c);\n d.ellipsis(b.multilineSelector, b.multilineOptions);\n var e = d.JSBNG__find(\"\\u003Ediv\"), f = e.contents();\n d.append(f), e.remove();\n });\n }, ellipsify = function(a, b) {\n b = ((b || {\n }));\n var c = ((b.multiline ? ((b.multilineFunction || multilineEllipsis)) : ((b.singlelineFunction || singleLineEllipsis))));\n return c(a, b);\n };\n module.exports = ellipsify;\n});\ndefine(\"app/ui/with_story_ellipsis\", [\"module\",\"require\",\"exports\",\"app/utils/ellipsis\",], function(module, require, exports) {\n function withStoryEllipsis() {\n this.defaultAttrs({\n singleLineEllipsisSelector: \"h3.js-story-title, p.js-metadata\",\n multilineEllipsisSelector: \"p.js-news-snippet, h3.js-news-headline, .cards-summary h3, .cards-summary .article\",\n ellipsisChar: \"&ellip;\"\n }), this.ellipsify = function() {\n ellipsify(this.select(\"singleLineEllipsisSelector\")), ellipsify(this.select(\"multilineEllipsisSelector\"), {\n multiline: !0,\n multilineOptions: {\n ellipsis: this.attr.ellipsisChar\n }\n });\n };\n };\n;\n var ellipsify = require(\"app/utils/ellipsis\");\n module.exports = withStoryEllipsis;\n});\ndefine(\"app/ui/search/news_onebox\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_story_clicks\",\"app/ui/with_story_ellipsis\",], function(module, require, exports) {\n function newsOnebox() {\n this.defaultAttrs({\n itemType: \"story\"\n }), this.oneboxDisplayed = function() {\n this.trigger(\"uiOneboxDisplayed\", {\n type: \"news_story\"\n });\n }, this.after(\"initialize\", function() {\n this.ellipsify(), this.oneboxDisplayed();\n });\n };\n;\n var defineComponent = require(\"core/component\"), withStoryClicks = require(\"app/ui/with_story_clicks\"), withStoryEllipsis = require(\"app/ui/with_story_ellipsis\");\n module.exports = defineComponent(newsOnebox, withStoryClicks, withStoryEllipsis);\n});\ndefine(\"app/ui/search/user_onebox\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_item_actions\",\"app/ui/with_story_clicks\",], function(module, require, exports) {\n function userOnebox() {\n this.defaultAttrs({\n itemSelector: \".user-story-item\",\n viewAllSelector: \".js-onebox-view-all\",\n itemType: \"story\"\n }), this.oneboxDisplayed = function() {\n var a = {\n type: \"user_story\",\n items: this.getItemIds()\n };\n this.trigger(\"uiOneboxDisplayed\", a);\n }, this.viewAllClicked = function() {\n this.trigger(\"uiOneboxViewAllClick\", {\n type: \"user_story\"\n });\n }, this.getItemIds = function() {\n var a = [];\n return this.select(\"itemSelector\").each(function() {\n var b = $(this);\n a.push(b.data(\"item-id\"));\n }), a;\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n viewAllSelector: this.viewAllClicked\n }), this.oneboxDisplayed();\n });\n };\n;\n var defineComponent = require(\"core/component\"), withItemActions = require(\"app/ui/with_item_actions\"), withStoryClicks = require(\"app/ui/with_story_clicks\");\n module.exports = defineComponent(userOnebox, withItemActions, withStoryClicks);\n});\ndefine(\"app/ui/search/event_onebox\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function eventOnebox() {\n this.defaultAttrs({\n itemType: \"story\"\n }), this.oneboxDisplayed = function() {\n this.trigger(\"uiOneboxDisplayed\", {\n type: \"event_story\"\n });\n }, this.broadcastClick = function(a) {\n this.trigger(\"uiEventOneboxClick\");\n }, this.after(\"initialize\", function() {\n this.oneboxDisplayed(), this.JSBNG__on(\"click\", this.broadcastClick);\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(eventOnebox);\n});\ndefine(\"app/ui/search/media_onebox\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/i18n\",\"app/ui/with_story_clicks\",], function(module, require, exports) {\n function mediaOnebox() {\n this.defaultAttrs({\n itemSelector: \".media-item\",\n itemType: \"story\",\n query: \"\"\n }), this.oneboxDisplayed = function() {\n var a = {\n type: \"media_story\",\n items: this.getStatusIds()\n };\n this.trigger(\"uiOneboxDisplayed\", a);\n }, this.getStatusIds = function() {\n var a = [];\n return this.select(\"itemSelector\").each(function() {\n var b = $(this);\n a.push(b.data(\"status-id\"));\n }), a;\n }, this.mediaItemClick = function(a, b) {\n this.trigger(a.target, \"uiOpenGallery\", {\n title: _(\"Photos of {{query}}\", {\n query: this.attr.query\n })\n });\n }, this.after(\"initialize\", function(a) {\n this.oneboxDisplayed(), this.JSBNG__on(\"click\", this.mediaItemClick);\n });\n };\n;\n var defineComponent = require(\"core/component\"), _ = require(\"core/i18n\"), withStoryClicks = require(\"app/ui/with_story_clicks\");\n module.exports = defineComponent(mediaOnebox, withStoryClicks);\n});\ndefine(\"app/ui/search/spelling_corrections\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function SpellingCorrections() {\n this.defaultAttrs({\n dismissSelector: \".js-action-dismiss-correction\",\n spellingCorrectionSelector: \".corrected-query\",\n wrapperNodeSelector: \"\"\n }), this.dismissCorrection = function(a) {\n var b = this.select(\"wrapperNodeSelector\");\n ((((b.length == 0)) && (b = this.$node))), b.fadeOut(250, function() {\n $(this).hide();\n }), this.scribeEvent(\"dismiss\");\n }, this.clickCorrection = function(a) {\n this.scribeEvent(\"search\");\n }, this.scribeEvent = function(a) {\n var b = this.select(\"spellingCorrectionSelector\");\n this.trigger(\"uiSearchAssistanceAction\", {\n component: \"spelling_corrections\",\n action: a,\n query: b.data(\"query\"),\n item_names: [b.data(\"search-assistance\"),]\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n dismissSelector: this.dismissCorrection,\n spellingCorrectionSelector: this.clickCorrection\n });\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(SpellingCorrections);\n});\ndefine(\"app/ui/search/related_queries\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function RelatedQueries() {\n this.defaultAttrs({\n relatedQuerySelector: \".related-query\"\n }), this.relatedQueryClick = function(a) {\n this.trigger(\"uiSearchAssistanceAction\", {\n component: \"related_queries\",\n action: \"search\",\n query: $(a.target).data(\"query\"),\n item_names: [$(a.target).data(\"search-assistance\"),]\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n relatedQuerySelector: this.relatedQueryClick\n });\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(RelatedQueries);\n});\ndefine(\"app/data/search_assistance_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function SearchAssistanceScribe() {\n this.scribeSearchAssistance = function(a, b) {\n this.scribe({\n section: \"search\",\n component: b.component,\n action: b.action\n }, {\n query: b.query,\n item_names: b.item_names\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiSearchAssistanceAction\", this.scribeSearchAssistance);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(SearchAssistanceScribe, withScribe);\n});\ndefine(\"app/data/timeline_controls_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function timelineControlsScribe() {\n this.after(\"initialize\", function() {\n this.scribeOnEvent(\"uiHasEnabledAutoplay\", {\n action: \"JSBNG__on\",\n component: \"timeline_controls\",\n element: \"autoplay\"\n }), this.scribeOnEvent(\"uiHasDisabledAutoplay\", {\n action: \"off\",\n component: \"timeline_controls\",\n element: \"autoplay\"\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\"), TimelineControlsScribe = defineComponent(timelineControlsScribe, withScribe);\n module.exports = TimelineControlsScribe;\n});\ndefine(\"app/pages/search/search\", [\"module\",\"require\",\"exports\",\"app/boot/search\",\"core/utils\",\"app/boot/tweet_timeline\",\"app/boot/universal_timeline\",\"app/data/user_search\",\"app/data/user_search_scribe\",\"app/ui/user_search\",\"app/data/saved_searches\",\"app/ui/search_dropdown\",\"app/data/story_scribe\",\"app/data/onebox_scribe\",\"app/ui/search/news_onebox\",\"app/ui/search/user_onebox\",\"app/ui/search/event_onebox\",\"app/ui/search/media_onebox\",\"app/ui/search/spelling_corrections\",\"app/ui/search/related_queries\",\"app/data/search_assistance_scribe\",\"app/data/timeline_controls_scribe\",], function(module, require, exports) {\n var searchBoot = require(\"app/boot/search\"), utils = require(\"core/utils\"), tweetTimelineBoot = require(\"app/boot/tweet_timeline\"), universalTimelineBoot = require(\"app/boot/universal_timeline\"), UserSearchData = require(\"app/data/user_search\"), UserSearchScribe = require(\"app/data/user_search_scribe\"), UserSearchModule = require(\"app/ui/user_search\"), SavedSearchesData = require(\"app/data/saved_searches\"), SearchDropdown = require(\"app/ui/search_dropdown\"), StoryScribe = require(\"app/data/story_scribe\"), OneboxScribe = require(\"app/data/onebox_scribe\"), NewsOnebox = require(\"app/ui/search/news_onebox\"), UserOnebox = require(\"app/ui/search/user_onebox\"), EventOnebox = require(\"app/ui/search/event_onebox\"), MediaOnebox = require(\"app/ui/search/media_onebox\"), SpellingCorrections = require(\"app/ui/search/spelling_corrections\"), RelatedQueries = require(\"app/ui/search/related_queries\"), SearchAssistanceScribe = require(\"app/data/search_assistance_scribe\"), TimelineControlsScribe = require(\"app/data/timeline_controls_scribe\");\n module.exports = function(b) {\n searchBoot(b), ((b.universalSearch ? (TimelineControlsScribe.attachTo(JSBNG__document), universalTimelineBoot(utils.merge(b, {\n autoplay: !!b.autoplay_search_timeline,\n travelingPTw: !!b.autoplay_search_timeline\n })), SpellingCorrections.attachTo(\"#timeline\", utils.merge(b, {\n wrapperNodeSelector: \".stream-spelling-corrections\"\n })), RelatedQueries.attachTo(\"#timeline\")) : (tweetTimelineBoot(b, b.search_endpoint, \"tweet\"), UserSearchScribe.attachTo(JSBNG__document, b), UserSearchData.attachTo(JSBNG__document, b), UserSearchModule.attachTo(\".js-nav-links .people\", utils.merge(b, {\n eventData: {\n scribeContext: {\n component: \"user_search_module\"\n }\n }\n })), StoryScribe.attachTo(JSBNG__document), OneboxScribe.attachTo(JSBNG__document, b), NewsOnebox.attachTo(\".onebox .discover-item[data-story-type=news]\"), UserOnebox.attachTo(\".onebox .discover-item[data-story-type=user]\", b), EventOnebox.attachTo(\".onebox .discover-item[data-story-type=event]\"), MediaOnebox.attachTo(\".onebox .discover-item[data-story-type=media]\", b), SpellingCorrections.attachTo(\".search-assist-spelling\"), RelatedQueries.attachTo(\".search-assist-related-queries\")))), SavedSearchesData.attachTo(JSBNG__document, b), SearchDropdown.attachTo(\".js-search-dropdown\", b), SearchAssistanceScribe.attachTo(JSBNG__document, b);\n };\n});\ndefine(\"app/ui/timelines/with_search_media_pagination\", [\"module\",\"require\",\"exports\",\"app/ui/timelines/with_tweet_pagination\",\"core/compose\",], function(module, require, exports) {\n function withSearchMediaPagination() {\n compose.mixin(this, [withTweetPagination,]), this.shouldGetOldItems = function() {\n return !1;\n };\n };\n;\n var withTweetPagination = require(\"app/ui/timelines/with_tweet_pagination\"), compose = require(\"core/compose\");\n module.exports = withSearchMediaPagination;\n});\ndefine(\"app/ui/timelines/media_timeline\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/timelines/with_base_timeline\",\"app/ui/timelines/with_old_items\",\"app/ui/timelines/with_search_media_pagination\",\"app/ui/gallery/with_grid\",], function(module, require, exports) {\n function mediaTimeline() {\n this.defaultAttrs({\n itemType: \"media\"\n }), this.after(\"initialize\", function(a) {\n this.hideWhaleEnd(), this.hideMoreSpinner();\n });\n };\n;\n var defineComponent = require(\"core/component\"), withBaseTimeline = require(\"app/ui/timelines/with_base_timeline\"), withOldItems = require(\"app/ui/timelines/with_old_items\"), withSearchMediaPagination = require(\"app/ui/timelines/with_search_media_pagination\"), withGrid = require(\"app/ui/gallery/with_grid\");\n module.exports = defineComponent(mediaTimeline, withBaseTimeline, withOldItems, withSearchMediaPagination, withGrid);\n});\ndefine(\"app/boot/media_timeline\", [\"module\",\"require\",\"exports\",\"app/boot/timeline\",\"app/boot/help_pips\",\"app/ui/expando/close_all_button\",\"app/ui/timelines/media_timeline\",\"core/utils\",], function(module, require, exports) {\n function initialize(a, b, c, d) {\n var e = utils.merge(a, {\n endpoint: b,\n itemType: c,\n eventData: {\n scribeContext: {\n component: ((d || c))\n }\n }\n });\n timelineBoot(e), ((e.help_pips_decider && helpPipsBoot(e))), CloseAllButton.attachTo(\"#close-all-button\", {\n addEvent: \"uiHasExpandedTweet\",\n subtractEvent: \"uiHasCollapsedTweet\",\n where: \"#timeline\",\n closeAllEvent: \"uiWantsToCloseAllTweets\"\n }), MediaTimeline.attachTo(\"#timeline\", utils.merge(e, {\n tweetItemSelector: \"div.original-tweet\"\n }));\n };\n;\n var timelineBoot = require(\"app/boot/timeline\"), helpPipsBoot = require(\"app/boot/help_pips\"), CloseAllButton = require(\"app/ui/expando/close_all_button\"), MediaTimeline = require(\"app/ui/timelines/media_timeline\"), utils = require(\"core/utils\");\n module.exports = initialize;\n});\ndefine(\"app/pages/search/media\", [\"module\",\"require\",\"exports\",\"app/boot/search\",\"core/utils\",\"app/boot/tweets\",\"app/boot/media_timeline\",\"app/data/user_search\",\"app/data/user_search_scribe\",\"app/ui/user_search\",\"app/data/saved_searches\",\"app/ui/search_dropdown\",\"app/ui/search/spelling_corrections\",\"app/ui/search/related_queries\",\"app/data/search_assistance_scribe\",], function(module, require, exports) {\n var searchBoot = require(\"app/boot/search\"), utils = require(\"core/utils\"), tweetsBoot = require(\"app/boot/tweets\"), mediaTimelineBoot = require(\"app/boot/media_timeline\"), UserSearchData = require(\"app/data/user_search\"), UserSearchScribe = require(\"app/data/user_search_scribe\"), UserSearchModule = require(\"app/ui/user_search\"), SavedSearchesData = require(\"app/data/saved_searches\"), SearchDropdown = require(\"app/ui/search_dropdown\"), SpellingCorrections = require(\"app/ui/search/spelling_corrections\"), RelatedQueries = require(\"app/ui/search/related_queries\"), SearchAssistanceScribe = require(\"app/data/search_assistance_scribe\");\n module.exports = function(b) {\n searchBoot(b), tweetsBoot(\"#timeline\", b), mediaTimelineBoot(b, b.timeline_url, \"tweet\"), SavedSearchesData.attachTo(JSBNG__document, b), SearchDropdown.attachTo(\".js-search-dropdown\", b), SpellingCorrections.attachTo(\".search-assist-spelling\"), RelatedQueries.attachTo(\".search-assist-related-queries\"), SearchAssistanceScribe.attachTo(JSBNG__document, b), UserSearchScribe.attachTo(JSBNG__document, b), UserSearchData.attachTo(JSBNG__document, b), UserSearchModule.attachTo(\".js-nav-links .people\", utils.merge(b, {\n eventData: {\n scribeContext: {\n component: \"user_search_module\"\n }\n }\n }));\n };\n});\ndefine(\"app/pages/simple_t1\", [\"module\",\"require\",\"exports\",\"app/boot/app\",], function(module, require, exports) {\n var bootApp = require(\"app/boot/app\");\n module.exports = function(a) {\n bootApp(a);\n };\n});");
// 4818
JSBNG_Replay.s19277ddcd28db6dd01a1d67d562dfbbffa3c6a17_4[0]();
// 4825
ow637880758.JSBNG__event = o2;
// undefined
o2 = null;
// 4823
geval("define(\"app/data/geo\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/cookie\",\"app/data/with_data\",], function(module, require, exports) {\n function geo() {\n this.isInState = function(a) {\n return ((a.split(\" \").indexOf(this.state) >= 0));\n }, this.isEnabled = function(a) {\n return !this.isInState(\"disabled enabling enableIsUnavailable\");\n }, this.setInitialState = function() {\n ((this.attr.geoEnabled ? this.state = ((((Geo.webclientCookie() === \"1\")) ? \"enabledTurnedOn\" : \"enabledTurnedOff\")) : this.state = \"disabled\"));\n }, this.requestState = function(a, b) {\n ((this.shouldLocate() ? this.locate() : this.sendState(this.state)));\n }, this.shouldLocate = function() {\n return ((this.isInState(\"enabledTurnedOn locateIsUnavailable\") || ((this.isInState(\"located locationUnknown\") && ((!this.lastLocationTime || ((((this.now() - this.lastLocationTime)) > MIN_TIME_BETWEEN_LOCATES_IN_MS))))))));\n }, this.locate = function(a) {\n this.sendState(((a ? \"changing\" : \"locating\")));\n var b = function(a) {\n this.sendState(((this.locateOrEnableState(a) || \"locateIsUnavailable\")));\n }.bind(this), c = function() {\n this.sendState(\"locateIsUnavailable\");\n }.bind(this), d = {\n override_place_id: a\n };\n this.post({\n url: \"/account/geo_locate\",\n data: d,\n echoParams: {\n spoof_ip: !0\n },\n eventData: d,\n success: b,\n error: c\n });\n }, this.locateOrEnableState = function(a) {\n switch (a.JSBNG__status) {\n case \"ok\":\n return this.place_id = a.place_id, this.place_name = a.place_name, this.places_html = a.html, this.lastLocationTime = this.now(), \"located\";\n case \"unknown\":\n return this.lastLocationTime = this.now(), \"locationUnknown\";\n };\n ;\n }, this.now = function() {\n return (new JSBNG__Date).getTime();\n }, this.sendState = function(a) {\n ((a && (this.state = a)));\n var b = {\n state: this.state\n };\n ((((this.state === \"located\")) && (b.place_id = this.place_id, b.place_name = this.place_name, b.places_html = this.places_html))), this.trigger(\"dataGeoState\", b);\n }, this.turnOn = function() {\n ((this.isEnabled() && (Geo.webclientCookie(\"1\"), this.locate())));\n }, this.turnOff = function() {\n ((this.isEnabled() && (Geo.webclientCookie(null), this.sendState(\"enabledTurnedOff\"))));\n }, this.enable = function(a, b) {\n if (!this.isInState(\"disabled enableIsUnavailable\")) {\n return;\n }\n ;\n ;\n this.sendState(\"enabling\");\n var c = function(a) {\n Geo.webclientCookie(\"1\"), this.sendState(((this.locateOrEnableState(a) || \"enableIsUnavailable\")));\n }.bind(this), d = function() {\n this.sendState(\"enableIsUnavailable\");\n }.bind(this);\n this.post({\n url: \"/account/geo_locate\",\n data: {\n enable: \"1\"\n },\n echoParams: {\n spoof_ip: !0\n },\n eventData: b,\n success: c,\n error: d\n });\n }, this.change = function(a, b) {\n ((this.isEnabled() && this.locate(b.placeId)));\n }, this.search = function(a, b) {\n if (this.searching) {\n this.pendingSearchData = b;\n return;\n }\n ;\n ;\n this.pendingSearchData = null;\n var c = function() {\n this.searching = !1;\n if (this.pendingSearchData) {\n return this.search(a, this.pendingSearchData), !0;\n }\n ;\n ;\n }.bind(this), d = b.query.trim(), e = [d,b.placeId,b.isPrefix,].join(\",\"), f = function(a) {\n this.searchCache[e] = a, a = $.extend({\n }, a, {\n sourceEventData: b\n }), ((c() || this.trigger(\"dataGeoSearchResults\", a)));\n }.bind(this), g = function() {\n ((c() || this.trigger(\"dataGeoSearchResultsUnavailable\")));\n }.bind(this);\n if (!d) {\n f({\n html: \"\"\n });\n return;\n }\n ;\n ;\n var h = this.searchCache[e];\n if (h) {\n f(h);\n return;\n }\n ;\n ;\n this.searching = !0, this.get({\n url: \"/account/geo_search\",\n data: {\n query: d,\n place_id: b.placeId,\n is_prefix: ((b.isPrefix ? \"1\" : \"0\"))\n },\n eventData: b,\n success: f,\n error: g\n });\n }, this.after(\"initialize\", function() {\n this.searchCache = {\n }, this.setInitialState(), this.JSBNG__on(\"uiRequestGeoState\", this.requestState), this.JSBNG__on(\"uiGeoPickerEnable\", this.enable), this.JSBNG__on(\"uiGeoPickerTurnOn\", this.turnOn), this.JSBNG__on(\"uiGeoPickerTurnOff\", this.turnOff), this.JSBNG__on(\"uiGeoPickerChange\", this.change), this.JSBNG__on(\"uiGeoPickerSearch\", this.search);\n });\n };\n;\n var defineComponent = require(\"core/component\"), cookie = require(\"app/utils/cookie\"), withData = require(\"app/data/with_data\"), Geo = defineComponent(geo, withData), MIN_TIME_BETWEEN_LOCATES_IN_MS = 900000;\n module.exports = Geo, Geo.webclientCookie = function(a) {\n return ((((a === undefined)) ? cookie(\"geo_webclient\") : cookie(\"geo_webclient\", a, {\n expires: 3650,\n path: \"/\"\n })));\n };\n});\ndefine(\"app/data/tweet\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_auth_token\",\"core/i18n\",\"app/data/with_data\",], function(module, require, exports) {\n function tweet() {\n this.IFRAME_TIMEOUT = 120000, this.sendTweet = function(a, b) {\n var c = b.tweetboxId, d = function(a) {\n a.tweetboxId = c, this.trigger(\"dataTweetSuccess\", a), this.trigger(\"dataGotProfileStats\", {\n stats: a.profile_stats\n });\n }, e = function(a) {\n var b;\n try {\n b = a.message;\n } catch (d) {\n b = {\n error: _(\"Sorry! We did something wrong.\")\n };\n };\n ;\n b.tweetboxId = c, this.trigger(\"dataTweetError\", b);\n };\n this.post({\n url: \"/i/tweet/create\",\n isMutation: !1,\n data: b.tweetData,\n success: d.bind(this),\n error: e.bind(this)\n });\n }, this.sendTweetWithMedia = function(a, b) {\n var c = b.tweetboxId, d = b.tweetData, e = this, f, g = function(a) {\n a.tweetboxId = c, JSBNG__clearTimeout(f), ((a.error ? e.trigger(\"dataTweetError\", a) : e.trigger(\"dataTweetSuccess\", a)));\n };\n window[c] = g.bind(this), f = JSBNG__setTimeout(function() {\n window[c] = function() {\n \n }, g({\n error: _(\"Tweeting a photo timed out.\")\n });\n }, this.IFRAME_TIMEOUT);\n var h = $(((\"#\" + b.tweetboxId))), i = this.getAuthToken();\n h.JSBNG__find(\".auth-token\").val(i), h.JSBNG__find(\".iframe-callback\").val(((\"window.JSBNG__top.\" + c))), h.JSBNG__find(\".in-reply-to-status-id\").val(d.in_reply_to_status_id), h.JSBNG__find(\".impression-id\").val(d.impression_id), h.JSBNG__find(\".earned\").val(d.earned), h.submit();\n }, this.sendDirectMessage = function(a, b) {\n this.trigger(\"dataDirectMessageSuccess\", b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiSendTweet\", this.sendTweet), this.JSBNG__on(\"uiSendTweetWithMedia\", this.sendTweetWithMedia), this.JSBNG__on(\"uiSendDirectMessage\", this.sendDirectMessage);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withAuthToken = require(\"app/data/with_auth_token\"), _ = require(\"core/i18n\"), withData = require(\"app/data/with_data\"), Tweet = defineComponent(tweet, withAuthToken, withData);\n module.exports = Tweet;\n});\ndefine(\"app/ui/tweet_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/ui/with_dialog\",\"app/ui/with_position\",\"app/data/user_info\",\"core/i18n\",], function(module, require, exports) {\n function tweetDialog() {\n this.defaultAttrs({\n tweetBoxSelector: \"form.tweet-form\",\n modalTweetSelector: \".modal-tweet\",\n modalTitleSelector: \".modal-title\"\n }), this.addTweet = function(a) {\n this.select(\"modalTweetSelector\").show(), a.appendTo(this.select(\"modalTweetSelector\"));\n }, this.removeTweet = function() {\n this.select(\"modalTweetSelector\").hide().empty();\n }, this.openReply = function(a, b) {\n this.addTweet($(a.target).clone());\n var c = b.screenNames[0];\n this.openTweetDialog(a, utils.merge(b, {\n title: _(\"Reply to {{screenName}}\", {\n screenName: ((\"@\" + c))\n })\n }));\n }, this.openGlobalTweetDialog = function(a, b) {\n this.openTweetDialog(a, utils.merge(b, {\n draftTweetId: \"global\"\n }));\n }, this.openTweetDialog = function(a, b) {\n this.setTitle(((((b && b.title)) || _(\"What's happening?\"))));\n if (!this.tweetBoxReady) {\n var c = $(\"#global-tweet-dialog form.tweet-form\");\n this.trigger(c, \"uiInitTweetbox\", {\n eventData: {\n scribeContext: {\n component: \"tweet_box_dialog\"\n }\n },\n modal: !0\n }), this.tweetBoxReady = !0;\n }\n ;\n ;\n if (b) {\n var d = null;\n ((b.screenNames ? d = b.screenNames : ((b.screenName && (d = [b.screenName,]))))), ((d && (b.defaultText = ((((\"@\" + d.join(\" @\"))) + \" \")), b.condensedText = _(\"Reply to {{screenNames}}\", {\n screenNames: b.defaultText\n })))), this.trigger(JSBNG__document, \"uiOverrideTweetBoxOptions\", b);\n }\n ;\n ;\n this.open();\n }, this.setTitle = function(a) {\n this.select(\"modalTitleSelector\").text(a);\n }, this.updateTitle = function(a, b) {\n ((((b && b.title)) && this.setTitle(b.title)));\n }, this.prepareTweetBox = function() {\n this.select(\"tweetBoxSelector\").trigger(\"uiPrepareTweetBox\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiShortcutShowTweetbox\", this.openGlobalTweetDialog), this.JSBNG__on(JSBNG__document, \"uiOpenTweetDialog\", this.openTweetDialog), this.JSBNG__on(JSBNG__document, \"uiOpenReplyDialog\", this.openReply), this.JSBNG__on(\"uiTweetSent\", this.close), this.JSBNG__on(\"uiDialogOpened\", this.prepareTweetBox), this.JSBNG__on(\"uiDialogClosed\", this.removeTweet), this.JSBNG__on(\"uiDialogUpdateTitle\", this.updateTitle);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withDialog = require(\"app/ui/with_dialog\"), withPosition = require(\"app/ui/with_position\"), userInfo = require(\"app/data/user_info\"), _ = require(\"core/i18n\"), TweetDialog = defineComponent(tweetDialog, withDialog, withPosition);\n module.exports = TweetDialog;\n});\ndefine(\"app/ui/new_tweet_button\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function newTweetButton() {\n this.openTweetDialog = function() {\n this.trigger(\"uiOpenTweetDialog\", {\n draftTweetId: \"global\"\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", this.openTweetDialog);\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(newTweetButton);\n});\ndefine(\"app/data/tweet_box_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function tweetBoxScribe() {\n var a = {\n tweetBox: {\n uiTweetboxTweetError: \"failure\",\n uiTweetboxTweetSuccess: \"send_tweet\",\n uiTweetboxReplySuccess: \"send_reply\",\n uiTweetboxDMSuccess: \"send_dm\",\n uiOpenTweetDialog: \"compose_tweet\"\n },\n imagePicker: {\n uiImagePickerClick: \"click\",\n uiImagePickerAdd: \"add\",\n uiImagePickerRemove: \"remove\",\n uiImagePickerError: \"error\",\n uiDrop: \"drag_and_drop\"\n },\n geoPicker: {\n uiGeoPickerOffer: \"offer\",\n uiGeoPickerEnable: \"enable\",\n uiGeoPickerOpen: \"open\",\n uiGeoPickerTurnOn: \"JSBNG__on\",\n uiGeoPickerTurnOff: \"off\",\n uiGeoPickerChange: \"select\",\n uiGeoPickerInteraction: \"focus_field\"\n }\n };\n this.after(\"initialize\", function() {\n Object.keys(a.tweetBox).forEach(function(b) {\n this.scribeOnEvent(b, {\n element: \"tweet_box\",\n action: a.tweetBox[b]\n });\n }, this), Object.keys(a.imagePicker).forEach(function(b) {\n this.scribeOnEvent(b, {\n element: \"image_picker\",\n action: a.imagePicker[b]\n });\n }, this), Object.keys(a.geoPicker).forEach(function(b) {\n this.scribeOnEvent(b, {\n element: \"geo_picker\",\n action: a.geoPicker[b]\n });\n }, this);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(tweetBoxScribe, withScribe);\n});\nprovide(\"lib/twitter-text\", function(a) {\n var b = {\n };\n (function() {\n function c(a, c) {\n return c = ((c || \"\")), ((((typeof a != \"string\")) && (((((a.global && ((c.indexOf(\"g\") < 0)))) && (c += \"g\"))), ((((a.ignoreCase && ((c.indexOf(\"i\") < 0)))) && (c += \"i\"))), ((((a.multiline && ((c.indexOf(\"m\") < 0)))) && (c += \"m\"))), a = a.source))), new RegExp(a.replace(/#\\{(\\w+)\\}/g, function(a, c) {\n var d = ((b.txt.regexen[c] || \"\"));\n return ((((typeof d != \"string\")) && (d = d.source))), d;\n }), c);\n };\n ;\n function d(a, b) {\n return a.replace(/#\\{(\\w+)\\}/g, function(a, c) {\n return ((b[c] || \"\"));\n });\n };\n ;\n function e(a, b, c) {\n var d = String.fromCharCode(b);\n return ((((c !== b)) && (d += ((\"-\" + String.fromCharCode(c)))))), a.push(d), a;\n };\n ;\n function q(a) {\n var b = {\n };\n {\n var fin59keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin59i = (0);\n var c;\n for (; (fin59i < fin59keys.length); (fin59i++)) {\n ((c) = (fin59keys[fin59i]));\n {\n ((a.hasOwnProperty(c) && (b[c] = a[c])));\n ;\n };\n };\n };\n ;\n return b;\n };\n ;\n function u(a, b, c) {\n return ((c ? ((!a || ((a.match(b) && ((RegExp[\"$&\"] === a)))))) : ((((((typeof a == \"string\")) && a.match(b))) && ((RegExp[\"$&\"] === a))))));\n };\n ;\n b.txt = {\n }, b.txt.regexen = {\n };\n var a = {\n \"&\": \"&amp;\",\n \"\\u003E\": \"&gt;\",\n \"\\u003C\": \"&lt;\",\n \"\\\"\": \"&quot;\",\n \"'\": \"&#39;\"\n };\n b.txt.htmlEscape = function(b) {\n return ((b && b.replace(/[&\"'><]/g, function(b) {\n return a[b];\n })));\n }, b.txt.regexSupplant = c, b.txt.stringSupplant = d, b.txt.addCharsToCharClass = e;\n var f = String.fromCharCode, g = [f(32),f(133),f(160),f(5760),f(6158),f(8232),f(8233),f(8239),f(8287),f(12288),];\n e(g, 9, 13), e(g, 8192, 8202);\n var h = [f(65534),f(65279),f(65535),];\n e(h, 8234, 8238), b.txt.regexen.spaces_group = c(g.join(\"\")), b.txt.regexen.spaces = c(((((\"[\" + g.join(\"\"))) + \"]\"))), b.txt.regexen.invalid_chars_group = c(h.join(\"\")), b.txt.regexen.punct = /\\!'#%&'\\(\\)*\\+,\\\\\\-\\.\\/:;<=>\\?@\\[\\]\\^_{|}~\\$/, b.txt.regexen.rtl_chars = /[\\u0600-\\u06FF]|[\\u0750-\\u077F]|[\\u0590-\\u05FF]|[\\uFE70-\\uFEFF]/gm, b.txt.regexen.non_bmp_code_pairs = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/gm;\n var i = [];\n e(i, 1024, 1279), e(i, 1280, 1319), e(i, 11744, 11775), e(i, 42560, 42655), e(i, 1425, 1471), e(i, 1473, 1474), e(i, 1476, 1477), e(i, 1479, 1479), e(i, 1488, 1514), e(i, 1520, 1524), e(i, 64274, 64296), e(i, 64298, 64310), e(i, 64312, 64316), e(i, 64318, 64318), e(i, 64320, 64321), e(i, 64323, 64324), e(i, 64326, 64335), e(i, 1552, 1562), e(i, 1568, 1631), e(i, 1646, 1747), e(i, 1749, 1756), e(i, 1758, 1768), e(i, 1770, 1775), e(i, 1786, 1788), e(i, 1791, 1791), e(i, 1872, 1919), e(i, 2208, 2208), e(i, 2210, 2220), e(i, 2276, 2302), e(i, 64336, 64433), e(i, 64467, 64829), e(i, 64848, 64911), e(i, 64914, 64967), e(i, 65008, 65019), e(i, 65136, 65140), e(i, 65142, 65276), e(i, 8204, 8204), e(i, 3585, 3642), e(i, 3648, 3662), e(i, 4352, 4607), e(i, 12592, 12677), e(i, 43360, 43391), e(i, 44032, 55215), e(i, 55216, 55295), e(i, 65441, 65500), e(i, 12449, 12538), e(i, 12540, 12542), e(i, 65382, 65439), e(i, 65392, 65392), e(i, 65296, 65305), e(i, 65313, 65338), e(i, 65345, 65370), e(i, 12353, 12438), e(i, 12441, 12446), e(i, 13312, 19903), e(i, 19968, 40959), e(i, 173824, 177983), e(i, 177984, 178207), e(i, 194560, 195103), e(i, 12291, 12291), e(i, 12293, 12293), e(i, 12347, 12347), b.txt.regexen.nonLatinHashtagChars = c(i.join(\"\"));\n var j = [];\n e(j, 192, 214), e(j, 216, 246), e(j, 248, 255), e(j, 256, 591), e(j, 595, 596), e(j, 598, 599), e(j, 601, 601), e(j, 603, 603), e(j, 611, 611), e(j, 616, 616), e(j, 623, 623), e(j, 626, 626), e(j, 649, 649), e(j, 651, 651), e(j, 699, 699), e(j, 768, 879), e(j, 7680, 7935), b.txt.regexen.latinAccentChars = c(j.join(\"\")), b.txt.regexen.hashSigns = /[#]/, b.txt.regexen.hashtagAlpha = c(/[a-z_#{latinAccentChars}#{nonLatinHashtagChars}]/i), b.txt.regexen.hashtagAlphaNumeric = c(/[a-z0-9_#{latinAccentChars}#{nonLatinHashtagChars}]/i), b.txt.regexen.endHashtagMatch = c(/^(?:#{hashSigns}|:\\/\\/)/), b.txt.regexen.hashtagBoundary = c(/(?:^|$|[^&a-z0-9_#{latinAccentChars}#{nonLatinHashtagChars}])/), b.txt.regexen.validHashtag = c(/(#{hashtagBoundary})(#{hashSigns})(#{hashtagAlphaNumeric}*#{hashtagAlpha}#{hashtagAlphaNumeric}*)/gi), b.txt.regexen.validMentionPrecedingChars = /(?:^|[^a-zA-Z0-9_!#$%&*@]|RT:?)/, b.txt.regexen.atSigns = /[@]/, b.txt.regexen.validMentionOrList = c(\"(#{validMentionPrecedingChars})(#{atSigns})([a-zA-Z0-9_]{1,20})(/[a-zA-Z][a-zA-Z0-9_-]{0,24})?\", \"g\"), b.txt.regexen.validReply = c(/^(?:#{spaces})*#{atSigns}([a-zA-Z0-9_]{1,20})/), b.txt.regexen.endMentionMatch = c(/^(?:#{atSigns}|[#{latinAccentChars}]|:\\/\\/)/), b.txt.regexen.validUrlPrecedingChars = c(/(?:[^A-Za-z0-9@$##{invalid_chars_group}]|^)/), b.txt.regexen.invalidUrlWithoutProtocolPrecedingChars = /[-_.\\/]$/, b.txt.regexen.invalidDomainChars = d(\"#{punct}#{spaces_group}#{invalid_chars_group}\", b.txt.regexen), b.txt.regexen.validDomainChars = c(/[^#{invalidDomainChars}]/), b.txt.regexen.validSubdomain = c(/(?:(?:#{validDomainChars}(?:[_-]|#{validDomainChars})*)?#{validDomainChars}\\.)/), b.txt.regexen.validDomainName = c(/(?:(?:#{validDomainChars}(?:-|#{validDomainChars})*)?#{validDomainChars}\\.)/), b.txt.regexen.validGTLD = c(/(?:(?:aero|asia|biz|cat|com|coop|edu|gov|info|int|jobs|mil|mobi|museum|name|net|org|pro|tel|travel|xxx)(?=[^0-9a-zA-Z]|$))/), b.txt.regexen.validCCTLD = c(/(?:(?:ac|ad|ae|af|ag|ai|al|am|an|ao|aq|ar|as|at|au|aw|ax|az|ba|bb|bd|be|bf|bg|bh|bi|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|cr|cs|cu|cv|cx|cy|cz|dd|de|dj|dk|dm|do|dz|ec|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gg|gh|gi|gl|gm|gn|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|im|in|io|iq|ir|is|it|je|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|me|mg|mh|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|mv|mw|mx|my|mz|na|nc|ne|nf|ng|ni|nl|no|np|nr|nu|nz|om|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|ps|pt|pw|py|qa|re|ro|rs|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|ss|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tl|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|za|zm|zw|sx)(?=[^0-9a-zA-Z]|$))/), b.txt.regexen.validPunycode = c(/(?:xn--[0-9a-z]+)/), b.txt.regexen.validDomain = c(/(?:#{validSubdomain}*#{validDomainName}(?:#{validGTLD}|#{validCCTLD}|#{validPunycode}))/), b.txt.regexen.validAsciiDomain = c(/(?:(?:[\\-a-z0-9#{latinAccentChars}]+)\\.)+(?:#{validGTLD}|#{validCCTLD}|#{validPunycode})/gi), b.txt.regexen.invalidShortDomain = c(/^#{validDomainName}#{validCCTLD}$/), b.txt.regexen.validPortNumber = c(/[0-9]+/), b.txt.regexen.validGeneralUrlPathChars = c(/[a-z0-9!\\*';:=\\+,\\.\\$\\/%#\\[\\]\\-_~@|&#{latinAccentChars}]/i), b.txt.regexen.validUrlBalancedParens = c(/\\(#{validGeneralUrlPathChars}+\\)/i), b.txt.regexen.validUrlPathEndingChars = c(/[\\+\\-a-z0-9=_#\\/#{latinAccentChars}]|(?:#{validUrlBalancedParens})/i), b.txt.regexen.validUrlPath = c(\"(?:(?:#{validGeneralUrlPathChars}*(?:#{validUrlBalancedParens}#{validGeneralUrlPathChars}*)*#{validUrlPathEndingChars})|(?:@#{validGeneralUrlPathChars}+/))\", \"i\"), b.txt.regexen.validUrlQueryChars = /[a-z0-9!?\\*'@\\(\\);:&=\\+\\$\\/%#\\[\\]\\-_\\.,~|]/i, b.txt.regexen.validUrlQueryEndingChars = /[a-z0-9_&=#\\/]/i, b.txt.regexen.extractUrl = c(\"((#{validUrlPrecedingChars})((https?:\\\\/\\\\/)?(#{validDomain})(?::(#{validPortNumber}))?(\\\\/#{validUrlPath}*)?(\\\\?#{validUrlQueryChars}*#{validUrlQueryEndingChars})?))\", \"gi\"), b.txt.regexen.validTcoUrl = /^https?:\\/\\/t\\.co\\/[a-z0-9]+/i, b.txt.regexen.urlHasProtocol = /^https?:\\/\\//i, b.txt.regexen.urlHasHttps = /^https:\\/\\//i, b.txt.regexen.cashtag = /[a-z]{1,6}(?:[._][a-z]{1,2})?/i, b.txt.regexen.validCashtag = c(\"(^|#{spaces})(\\\\$)(#{cashtag})(?=$|\\\\s|[#{punct}])\", \"gi\"), b.txt.regexen.validateUrlUnreserved = /[a-z0-9\\-._~]/i, b.txt.regexen.validateUrlPctEncoded = /(?:%[0-9a-f]{2})/i, b.txt.regexen.validateUrlSubDelims = /[!$&'()*+,;=]/i, b.txt.regexen.validateUrlPchar = c(\"(?:#{validateUrlUnreserved}|#{validateUrlPctEncoded}|#{validateUrlSubDelims}|[:|@])\", \"i\"), b.txt.regexen.validateUrlScheme = /(?:[a-z][a-z0-9+\\-.]*)/i, b.txt.regexen.validateUrlUserinfo = c(\"(?:#{validateUrlUnreserved}|#{validateUrlPctEncoded}|#{validateUrlSubDelims}|:)*\", \"i\"), b.txt.regexen.validateUrlDecOctet = /(?:[0-9]|(?:[1-9][0-9])|(?:1[0-9]{2})|(?:2[0-4][0-9])|(?:25[0-5]))/i, b.txt.regexen.validateUrlIpv4 = c(/(?:#{validateUrlDecOctet}(?:\\.#{validateUrlDecOctet}){3})/i), b.txt.regexen.validateUrlIpv6 = /(?:\\[[a-f0-9:\\.]+\\])/i, b.txt.regexen.validateUrlIp = c(\"(?:#{validateUrlIpv4}|#{validateUrlIpv6})\", \"i\"), b.txt.regexen.validateUrlSubDomainSegment = /(?:[a-z0-9](?:[a-z0-9_\\-]*[a-z0-9])?)/i, b.txt.regexen.validateUrlDomainSegment = /(?:[a-z0-9](?:[a-z0-9\\-]*[a-z0-9])?)/i, b.txt.regexen.validateUrlDomainTld = /(?:[a-z](?:[a-z0-9\\-]*[a-z0-9])?)/i, b.txt.regexen.validateUrlDomain = c(/(?:(?:#{validateUrlSubDomainSegment]}\\.)*(?:#{validateUrlDomainSegment]}\\.)#{validateUrlDomainTld})/i), b.txt.regexen.validateUrlHost = c(\"(?:#{validateUrlIp}|#{validateUrlDomain})\", \"i\"), b.txt.regexen.validateUrlUnicodeSubDomainSegment = /(?:(?:[a-z0-9]|[^\\u0000-\\u007f])(?:(?:[a-z0-9_\\-]|[^\\u0000-\\u007f])*(?:[a-z0-9]|[^\\u0000-\\u007f]))?)/i, b.txt.regexen.validateUrlUnicodeDomainSegment = /(?:(?:[a-z0-9]|[^\\u0000-\\u007f])(?:(?:[a-z0-9\\-]|[^\\u0000-\\u007f])*(?:[a-z0-9]|[^\\u0000-\\u007f]))?)/i, b.txt.regexen.validateUrlUnicodeDomainTld = /(?:(?:[a-z]|[^\\u0000-\\u007f])(?:(?:[a-z0-9\\-]|[^\\u0000-\\u007f])*(?:[a-z0-9]|[^\\u0000-\\u007f]))?)/i, b.txt.regexen.validateUrlUnicodeDomain = c(/(?:(?:#{validateUrlUnicodeSubDomainSegment}\\.)*(?:#{validateUrlUnicodeDomainSegment}\\.)#{validateUrlUnicodeDomainTld})/i), b.txt.regexen.validateUrlUnicodeHost = c(\"(?:#{validateUrlIp}|#{validateUrlUnicodeDomain})\", \"i\"), b.txt.regexen.validateUrlPort = /[0-9]{1,5}/, b.txt.regexen.validateUrlUnicodeAuthority = c(\"(?:(#{validateUrlUserinfo})@)?(#{validateUrlUnicodeHost})(?::(#{validateUrlPort}))?\", \"i\"), b.txt.regexen.validateUrlAuthority = c(\"(?:(#{validateUrlUserinfo})@)?(#{validateUrlHost})(?::(#{validateUrlPort}))?\", \"i\"), b.txt.regexen.validateUrlPath = c(/(\\/#{validateUrlPchar}*)*/i), b.txt.regexen.validateUrlQuery = c(/(#{validateUrlPchar}|\\/|\\?)*/i), b.txt.regexen.validateUrlFragment = c(/(#{validateUrlPchar}|\\/|\\?)*/i), b.txt.regexen.validateUrlUnencoded = c(\"^(?:([^:/?#]+):\\\\/\\\\/)?([^/?#]*)([^?#]*)(?:\\\\?([^#]*))?(?:#(.*))?$\", \"i\");\n var k = \"tweet-url list-slug\", l = \"tweet-url username\", m = \"tweet-url hashtag\", n = \"tweet-url cashtag\", o = {\n urlClass: !0,\n listClass: !0,\n usernameClass: !0,\n hashtagClass: !0,\n cashtagClass: !0,\n usernameUrlBase: !0,\n listUrlBase: !0,\n hashtagUrlBase: !0,\n cashtagUrlBase: !0,\n usernameUrlBlock: !0,\n listUrlBlock: !0,\n hashtagUrlBlock: !0,\n linkUrlBlock: !0,\n usernameIncludeSymbol: !0,\n suppressLists: !0,\n suppressNoFollow: !0,\n targetBlank: !0,\n suppressDataScreenName: !0,\n urlEntities: !0,\n symbolTag: !0,\n textWithSymbolTag: !0,\n urlTarget: !0,\n invisibleTagAttrs: !0,\n linkAttributeBlock: !0,\n linkTextBlock: !0,\n htmlEscapeNonEntities: !0\n }, p = {\n disabled: !0,\n readonly: !0,\n multiple: !0,\n checked: !0\n };\n b.txt.tagAttrs = function(a) {\n var c = \"\";\n {\n var fin60keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin60i = (0);\n var d;\n for (; (fin60i < fin60keys.length); (fin60i++)) {\n ((d) = (fin60keys[fin60i]));\n {\n var e = a[d];\n ((p[d] && (e = ((e ? d : null)))));\n if (((e == null))) {\n continue;\n }\n ;\n ;\n c += ((((((((\" \" + b.txt.htmlEscape(d))) + \"=\\\"\")) + b.txt.htmlEscape(e.toString()))) + \"\\\"\"));\n };\n };\n };\n ;\n return c;\n }, b.txt.linkToText = function(a, c, e, f) {\n ((f.suppressNoFollow || (e.rel = \"nofollow\"))), ((f.linkAttributeBlock && f.linkAttributeBlock(a, e))), ((f.linkTextBlock && (c = f.linkTextBlock(a, c))));\n var g = {\n text: c,\n attr: b.txt.tagAttrs(e)\n };\n return d(\"\\u003Ca#{attr}\\u003E#{text}\\u003C/a\\u003E\", g);\n }, b.txt.linkToTextWithSymbol = function(a, c, d, e, f) {\n var g = ((f.symbolTag ? ((((((((((((\"\\u003C\" + f.symbolTag)) + \"\\u003E\")) + c)) + \"\\u003C/\")) + f.symbolTag)) + \"\\u003E\")) : c));\n d = b.txt.htmlEscape(d);\n var h = ((f.textWithSymbolTag ? ((((((((((((\"\\u003C\" + f.textWithSymbolTag)) + \"\\u003E\")) + d)) + \"\\u003C/\")) + f.textWithSymbolTag)) + \"\\u003E\")) : d));\n return ((((f.usernameIncludeSymbol || !c.match(b.txt.regexen.atSigns))) ? b.txt.linkToText(a, ((g + h)), e, f) : ((g + b.txt.linkToText(a, h, e, f)))));\n }, b.txt.linkToHashtag = function(a, c, d) {\n var e = c.substring(a.indices[0], ((a.indices[0] + 1))), f = b.txt.htmlEscape(a.hashtag), g = q(((d.htmlAttrs || {\n })));\n return g.href = ((d.hashtagUrlBase + f)), g.title = ((\"#\" + f)), g[\"class\"] = d.hashtagClass, ((f[0].match(b.txt.regexen.rtl_chars) && (g[\"class\"] += \" rtl\"))), ((d.targetBlank && (g.target = \"_blank\"))), b.txt.linkToTextWithSymbol(a, e, f, g, d);\n }, b.txt.linkToCashtag = function(a, c, d) {\n var e = b.txt.htmlEscape(a.cashtag), f = q(((d.htmlAttrs || {\n })));\n return f.href = ((d.cashtagUrlBase + e)), f.title = ((\"$\" + e)), f[\"class\"] = d.cashtagClass, ((d.targetBlank && (f.target = \"_blank\"))), b.txt.linkToTextWithSymbol(a, \"$\", e, f, d);\n }, b.txt.linkToMentionAndList = function(a, c, d) {\n var e = c.substring(a.indices[0], ((a.indices[0] + 1))), f = b.txt.htmlEscape(a.screenName), g = b.txt.htmlEscape(a.listSlug), h = ((a.listSlug && !d.suppressLists)), i = q(((d.htmlAttrs || {\n })));\n return i[\"class\"] = ((h ? d.listClass : d.usernameClass)), i.href = ((h ? ((((d.listUrlBase + f)) + g)) : ((d.usernameUrlBase + f)))), ((((!h && !d.suppressDataScreenName)) && (i[\"data-screen-name\"] = f))), ((d.targetBlank && (i.target = \"_blank\"))), b.txt.linkToTextWithSymbol(a, e, ((h ? ((f + g)) : f)), i, d);\n }, b.txt.linkToUrl = function(a, c, d) {\n var e = a.url, f = e, g = b.txt.htmlEscape(f), h = ((((d.urlEntities && d.urlEntities[e])) || a));\n ((h.display_url && (g = b.txt.linkTextWithEntity(h, d))));\n var i = q(((d.htmlAttrs || {\n })));\n return ((e.match(b.txt.regexen.urlHasProtocol) || (e = ((\"http://\" + e))))), i.href = e, ((d.targetBlank && (i.target = \"_blank\"))), ((d.urlClass && (i[\"class\"] = d.urlClass))), ((d.urlTarget && (i.target = d.urlTarget))), ((((!d.title && h.display_url)) && (i.title = h.expanded_url))), b.txt.linkToText(a, g, i, d);\n }, b.txt.linkTextWithEntity = function(a, c) {\n var e = a.display_url, f = a.expanded_url, g = e.replace(/…/g, \"\");\n if (((f.indexOf(g) != -1))) {\n var h = f.indexOf(g), i = {\n displayUrlSansEllipses: g,\n beforeDisplayUrl: f.substr(0, h),\n afterDisplayUrl: f.substr(((h + g.length))),\n precedingEllipsis: ((e.match(/^…/) ? \"\\u2026\" : \"\")),\n followingEllipsis: ((e.match(/…$/) ? \"\\u2026\" : \"\"))\n };\n {\n var fin61keys = ((window.top.JSBNG_Replay.forInKeys)((i))), fin61i = (0);\n var j;\n for (; (fin61i < fin61keys.length); (fin61i++)) {\n ((j) = (fin61keys[fin61i]));\n {\n ((i.hasOwnProperty(j) && (i[j] = b.txt.htmlEscape(i[j]))));\n ;\n };\n };\n };\n ;\n return i.invisible = c.invisibleTagAttrs, d(\"\\u003Cspan class='tco-ellipsis'\\u003E#{precedingEllipsis}\\u003Cspan #{invisible}\\u003E&nbsp;\\u003C/span\\u003E\\u003C/span\\u003E\\u003Cspan #{invisible}\\u003E#{beforeDisplayUrl}\\u003C/span\\u003E\\u003Cspan class='js-display-url'\\u003E#{displayUrlSansEllipses}\\u003C/span\\u003E\\u003Cspan #{invisible}\\u003E#{afterDisplayUrl}\\u003C/span\\u003E\\u003Cspan class='tco-ellipsis'\\u003E\\u003Cspan #{invisible}\\u003E&nbsp;\\u003C/span\\u003E#{followingEllipsis}\\u003C/span\\u003E\", i);\n }\n ;\n ;\n return e;\n }, b.txt.autoLinkEntities = function(a, c, d) {\n d = q(((d || {\n }))), d.hashtagClass = ((d.hashtagClass || m)), d.hashtagUrlBase = ((d.hashtagUrlBase || \"https://twitter.com/#!/search?q=%23\")), d.cashtagClass = ((d.cashtagClass || n)), d.cashtagUrlBase = ((d.cashtagUrlBase || \"https://twitter.com/#!/search?q=%24\")), d.listClass = ((d.listClass || k)), d.usernameClass = ((d.usernameClass || l)), d.usernameUrlBase = ((d.usernameUrlBase || \"https://twitter.com/\")), d.listUrlBase = ((d.listUrlBase || \"https://twitter.com/\")), d.htmlAttrs = b.txt.extractHtmlAttrsFromOptions(d), d.invisibleTagAttrs = ((d.invisibleTagAttrs || \"style='position:absolute;left:-9999px;'\"));\n var e, f, g;\n if (d.urlEntities) {\n e = {\n };\n for (f = 0, g = d.urlEntities.length; ((f < g)); f++) {\n e[d.urlEntities[f].url] = d.urlEntities[f];\n ;\n };\n ;\n d.urlEntities = e;\n }\n ;\n ;\n var h = \"\", i = 0;\n c.sort(function(a, b) {\n return ((a.indices[0] - b.indices[0]));\n });\n var j = ((d.htmlEscapeNonEntities ? b.txt.htmlEscape : function(a) {\n return a;\n }));\n for (var f = 0; ((f < c.length)); f++) {\n var o = c[f];\n h += j(a.substring(i, o.indices[0])), ((o.url ? h += b.txt.linkToUrl(o, a, d) : ((o.hashtag ? h += b.txt.linkToHashtag(o, a, d) : ((o.screenName ? h += b.txt.linkToMentionAndList(o, a, d) : ((o.cashtag && (h += b.txt.linkToCashtag(o, a, d)))))))))), i = o.indices[1];\n };\n ;\n return h += j(a.substring(i, a.length)), h;\n }, b.txt.autoLinkWithJSON = function(a, c, d) {\n var e = [];\n {\n var fin62keys = ((window.top.JSBNG_Replay.forInKeys)((c))), fin62i = (0);\n var f;\n for (; (fin62i < fin62keys.length); (fin62i++)) {\n ((f) = (fin62keys[fin62i]));\n {\n e = e.concat(c[f]);\n ;\n };\n };\n };\n ;\n for (var g = 0; ((g < e.length)); g++) {\n entity = e[g], ((entity.screen_name ? entity.screenName = entity.screen_name : ((entity.text && (entity.hashtag = entity.text)))));\n ;\n };\n ;\n return b.txt.modifyIndicesFromUnicodeToUTF16(a, e), b.txt.autoLinkEntities(a, e, d);\n }, b.txt.extractHtmlAttrsFromOptions = function(a) {\n var b = {\n };\n {\n var fin63keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin63i = (0);\n var c;\n for (; (fin63i < fin63keys.length); (fin63i++)) {\n ((c) = (fin63keys[fin63i]));\n {\n var d = a[c];\n if (o[c]) {\n continue;\n }\n ;\n ;\n ((p[c] && (d = ((d ? c : null)))));\n if (((d == null))) {\n continue;\n }\n ;\n ;\n b[c] = d;\n };\n };\n };\n ;\n return b;\n }, b.txt.autoLink = function(a, c) {\n var d = b.txt.extractEntitiesWithIndices(a, {\n extractUrlsWithoutProtocol: !1\n });\n return b.txt.autoLinkEntities(a, d, c);\n }, b.txt.autoLinkUsernamesOrLists = function(a, c) {\n var d = b.txt.extractMentionsOrListsWithIndices(a);\n return b.txt.autoLinkEntities(a, d, c);\n }, b.txt.autoLinkHashtags = function(a, c) {\n var d = b.txt.extractHashtagsWithIndices(a);\n return b.txt.autoLinkEntities(a, d, c);\n }, b.txt.autoLinkCashtags = function(a, c) {\n var d = b.txt.extractCashtagsWithIndices(a);\n return b.txt.autoLinkEntities(a, d, c);\n }, b.txt.autoLinkUrlsCustom = function(a, c) {\n var d = b.txt.extractUrlsWithIndices(a, {\n extractUrlsWithoutProtocol: !1\n });\n return b.txt.autoLinkEntities(a, d, c);\n }, b.txt.removeOverlappingEntities = function(a) {\n a.sort(function(a, b) {\n return ((a.indices[0] - b.indices[0]));\n });\n var b = a[0];\n for (var c = 1; ((c < a.length)); c++) {\n ((((b.indices[1] > a[c].indices[0])) ? (a.splice(c, 1), c--) : b = a[c]));\n ;\n };\n ;\n }, b.txt.extractEntitiesWithIndices = function(a, c) {\n var d = b.txt.extractUrlsWithIndices(a, c).concat(b.txt.extractMentionsOrListsWithIndices(a)).concat(b.txt.extractHashtagsWithIndices(a, {\n checkUrlOverlap: !1\n })).concat(b.txt.extractCashtagsWithIndices(a));\n return ((((d.length == 0)) ? [] : (b.txt.removeOverlappingEntities(d), d)));\n }, b.txt.extractMentions = function(a) {\n var c = [], d = b.txt.extractMentionsWithIndices(a);\n for (var e = 0; ((e < d.length)); e++) {\n var f = d[e].screenName;\n c.push(f);\n };\n ;\n return c;\n }, b.txt.extractMentionsWithIndices = function(a) {\n var c = [], d, e = b.txt.extractMentionsOrListsWithIndices(a);\n for (var f = 0; ((f < e.length)); f++) {\n d = e[f], ((((d.listSlug == \"\")) && c.push({\n screenName: d.screenName,\n indices: d.indices\n })));\n ;\n };\n ;\n return c;\n }, b.txt.extractMentionsOrListsWithIndices = function(a) {\n if (((!a || !a.match(b.txt.regexen.atSigns)))) {\n return [];\n }\n ;\n ;\n var c = [], d;\n return a.replace(b.txt.regexen.validMentionOrList, function(a, d, e, f, g, h, i) {\n var j = i.slice(((h + a.length)));\n if (!j.match(b.txt.regexen.endMentionMatch)) {\n g = ((g || \"\"));\n var k = ((h + d.length)), l = ((((((k + f.length)) + g.length)) + 1));\n c.push({\n screenName: f,\n listSlug: g,\n indices: [k,l,]\n });\n }\n ;\n ;\n }), c;\n }, b.txt.extractReplies = function(a) {\n if (!a) {\n return null;\n }\n ;\n ;\n var c = a.match(b.txt.regexen.validReply);\n return ((((!c || RegExp.rightContext.match(b.txt.regexen.endMentionMatch))) ? null : c[1]));\n }, b.txt.extractUrls = function(a, c) {\n var d = [], e = b.txt.extractUrlsWithIndices(a, c);\n for (var f = 0; ((f < e.length)); f++) {\n d.push(e[f].url);\n ;\n };\n ;\n return d;\n }, b.txt.extractUrlsWithIndices = function(a, c) {\n ((c || (c = {\n extractUrlsWithoutProtocol: !0\n })));\n if (((!a || ((c.extractUrlsWithoutProtocol ? !a.match(/\\./) : !a.match(/:/)))))) {\n return [];\n }\n ;\n ;\n var d = [];\n while (b.txt.regexen.extractUrl.exec(a)) {\n var e = RegExp.$2, f = RegExp.$3, g = RegExp.$4, h = RegExp.$5, i = RegExp.$7, j = b.txt.regexen.extractUrl.lastIndex, k = ((j - f.length));\n if (!g) {\n if (((!c.extractUrlsWithoutProtocol || e.match(b.txt.regexen.invalidUrlWithoutProtocolPrecedingChars)))) {\n continue;\n }\n ;\n ;\n var l = null, m = !1, n = 0;\n h.replace(b.txt.regexen.validAsciiDomain, function(a) {\n var c = h.indexOf(a, n);\n n = ((c + a.length)), l = {\n url: a,\n indices: [((k + c)),((k + n)),]\n }, m = a.match(b.txt.regexen.invalidShortDomain), ((m || d.push(l)));\n });\n if (((l == null))) {\n continue;\n }\n ;\n ;\n ((i && (((m && d.push(l))), l.url = f.replace(h, l.url), l.indices[1] = j)));\n }\n else ((f.match(b.txt.regexen.validTcoUrl) && (f = RegExp.lastMatch, j = ((k + f.length))))), d.push({\n url: f,\n indices: [k,j,]\n });\n ;\n ;\n };\n ;\n return d;\n }, b.txt.extractHashtags = function(a) {\n var c = [], d = b.txt.extractHashtagsWithIndices(a);\n for (var e = 0; ((e < d.length)); e++) {\n c.push(d[e].hashtag);\n ;\n };\n ;\n return c;\n }, b.txt.extractHashtagsWithIndices = function(a, c) {\n ((c || (c = {\n checkUrlOverlap: !0\n })));\n if (((!a || !a.match(b.txt.regexen.hashSigns)))) {\n return [];\n }\n ;\n ;\n var d = [];\n a.replace(b.txt.regexen.validHashtag, function(a, c, e, f, g, h) {\n var i = h.slice(((g + a.length)));\n if (i.match(b.txt.regexen.endHashtagMatch)) {\n return;\n }\n ;\n ;\n var j = ((g + c.length)), k = ((((j + f.length)) + 1));\n d.push({\n hashtag: f,\n indices: [j,k,]\n });\n });\n if (c.checkUrlOverlap) {\n var e = b.txt.extractUrlsWithIndices(a);\n if (((e.length > 0))) {\n var f = d.concat(e);\n b.txt.removeOverlappingEntities(f), d = [];\n for (var g = 0; ((g < f.length)); g++) {\n ((f[g].hashtag && d.push(f[g])));\n ;\n };\n ;\n }\n ;\n ;\n }\n ;\n ;\n return d;\n }, b.txt.extractCashtags = function(a) {\n var c = [], d = b.txt.extractCashtagsWithIndices(a);\n for (var e = 0; ((e < d.length)); e++) {\n c.push(d[e].cashtag);\n ;\n };\n ;\n return c;\n }, b.txt.extractCashtagsWithIndices = function(a) {\n if (((!a || ((a.indexOf(\"$\") == -1))))) {\n return [];\n }\n ;\n ;\n var c = [];\n return a.replace(b.txt.regexen.validCashtag, function(a, b, d, e, f, g) {\n var h = ((f + b.length)), i = ((((h + e.length)) + 1));\n c.push({\n cashtag: e,\n indices: [h,i,]\n });\n }), c;\n }, b.txt.modifyIndicesFromUnicodeToUTF16 = function(a, c) {\n b.txt.convertUnicodeIndices(a, c, !1);\n }, b.txt.modifyIndicesFromUTF16ToUnicode = function(a, c) {\n b.txt.convertUnicodeIndices(a, c, !0);\n }, b.txt.getUnicodeTextLength = function(a) {\n return a.replace(b.txt.regexen.non_bmp_code_pairs, \" \").length;\n }, b.txt.convertUnicodeIndices = function(a, b, c) {\n if (((b.length == 0))) {\n return;\n }\n ;\n ;\n var d = 0, e = 0;\n b.sort(function(a, b) {\n return ((a.indices[0] - b.indices[0]));\n });\n var f = 0, g = b[0];\n while (((d < a.length))) {\n if (((g.indices[0] == ((c ? d : e))))) {\n var h = ((g.indices[1] - g.indices[0]));\n g.indices[0] = ((c ? e : d)), g.indices[1] = ((g.indices[0] + h)), f++;\n if (((f == b.length))) {\n break;\n }\n ;\n ;\n g = b[f];\n }\n ;\n ;\n var i = a.charCodeAt(d);\n ((((((((55296 <= i)) && ((i <= 56319)))) && ((d < ((a.length - 1)))))) && (i = a.charCodeAt(((d + 1))), ((((((56320 <= i)) && ((i <= 57343)))) && d++))))), e++, d++;\n };\n ;\n }, b.txt.splitTags = function(a) {\n var b = a.split(\"\\u003C\"), c, d = [], e;\n for (var f = 0; ((f < b.length)); f += 1) {\n e = b[f];\n if (!e) d.push(\"\");\n else {\n c = e.split(\"\\u003E\");\n for (var g = 0; ((g < c.length)); g += 1) {\n d.push(c[g]);\n ;\n };\n ;\n }\n ;\n ;\n };\n ;\n return d;\n }, b.txt.hitHighlight = function(a, c, d) {\n var e = \"em\";\n c = ((c || [])), d = ((d || {\n }));\n if (((c.length === 0))) {\n return a;\n }\n ;\n ;\n var f = ((d.tag || e)), g = [((((\"\\u003C\" + f)) + \"\\u003E\")),((((\"\\u003C/\" + f)) + \"\\u003E\")),], h = b.txt.splitTags(a), i, j, k = \"\", l = 0, m = h[0], n = 0, o = 0, p = !1, q = m, r = [], s, t, u, v, w;\n for (i = 0; ((i < c.length)); i += 1) {\n for (j = 0; ((j < c[i].length)); j += 1) {\n r.push(c[i][j]);\n ;\n };\n ;\n };\n ;\n for (s = 0; ((s < r.length)); s += 1) {\n t = r[s], u = g[((s % 2))], v = !1;\n while (((((m != null)) && ((t >= ((n + m.length))))))) {\n k += q.slice(o), ((((p && ((t === ((n + q.length)))))) && (k += u, v = !0))), ((h[((l + 1))] && (k += ((((\"\\u003C\" + h[((l + 1))])) + \"\\u003E\"))))), n += q.length, o = 0, l += 2, m = h[l], q = m, p = !1;\n ;\n };\n ;\n ((((!v && ((m != null)))) ? (w = ((t - n)), k += ((q.slice(o, w) + u)), o = w, ((((((s % 2)) === 0)) ? p = !0 : p = !1))) : ((v || (v = !0, k += u)))));\n };\n ;\n if (((m != null))) {\n ((((o < q.length)) && (k += q.slice(o))));\n for (s = ((l + 1)); ((s < h.length)); s += 1) {\n k += ((((((s % 2)) === 0)) ? h[s] : ((((\"\\u003C\" + h[s])) + \"\\u003E\"))));\n ;\n };\n ;\n }\n ;\n ;\n return k;\n };\n var r = 140, s = [f(65534),f(65279),f(65535),f(8234),f(8235),f(8236),f(8237),f(8238),];\n b.txt.getTweetLength = function(a, c) {\n ((c || (c = {\n short_url_length: 22,\n short_url_length_https: 23\n })));\n var d = b.txt.getUnicodeTextLength(a), e = b.txt.extractUrlsWithIndices(a);\n b.txt.modifyIndicesFromUTF16ToUnicode(a, e);\n for (var f = 0; ((f < e.length)); f++) {\n d += ((e[f].indices[0] - e[f].indices[1])), ((e[f].url.toLowerCase().match(b.txt.regexen.urlHasHttps) ? d += c.short_url_length_https : d += c.short_url_length));\n ;\n };\n ;\n return d;\n }, b.txt.isInvalidTweet = function(a) {\n if (!a) {\n return \"empty\";\n }\n ;\n ;\n if (((b.txt.getTweetLength(a) > r))) {\n return \"too_long\";\n }\n ;\n ;\n for (var c = 0; ((c < s.length)); c++) {\n if (((a.indexOf(s[c]) >= 0))) {\n return \"invalid_characters\";\n }\n ;\n ;\n };\n ;\n return !1;\n }, b.txt.isValidTweetText = function(a) {\n return !b.txt.isInvalidTweet(a);\n }, b.txt.isValidUsername = function(a) {\n if (!a) {\n return !1;\n }\n ;\n ;\n var c = b.txt.extractMentions(a);\n return ((((c.length === 1)) && ((c[0] === a.slice(1)))));\n };\n var t = c(/^#{validMentionOrList}$/);\n b.txt.isValidList = function(a) {\n var b = a.match(t);\n return ((((!!b && ((b[1] == \"\")))) && !!b[4]));\n }, b.txt.isValidHashtag = function(a) {\n if (!a) {\n return !1;\n }\n ;\n ;\n var c = b.txt.extractHashtags(a);\n return ((((c.length === 1)) && ((c[0] === a.slice(1)))));\n }, b.txt.isValidUrl = function(a, c, d) {\n ((((c == null)) && (c = !0))), ((((d == null)) && (d = !0)));\n if (!a) {\n return !1;\n }\n ;\n ;\n var e = a.match(b.txt.regexen.validateUrlUnencoded);\n if (((!e || ((e[0] !== a))))) {\n return !1;\n }\n ;\n ;\n var f = e[1], g = e[2], h = e[3], i = e[4], j = e[5];\n return ((((((((((!d || ((u(f, b.txt.regexen.validateUrlScheme) && f.match(/^https?$/i))))) && u(h, b.txt.regexen.validateUrlPath))) && u(i, b.txt.regexen.validateUrlQuery, !0))) && u(j, b.txt.regexen.validateUrlFragment, !0))) ? ((((c && u(g, b.txt.regexen.validateUrlUnicodeAuthority))) || ((!c && u(g, b.txt.regexen.validateUrlAuthority))))) : !1));\n }, ((((((typeof module != \"undefined\")) && module.exports)) && (module.exports = b.txt)));\n })(), a(b.txt);\n});\ndefine(\"app/ui/with_character_counter\", [\"module\",\"require\",\"exports\",\"lib/twitter-text\",], function(module, require, exports) {\n function withCharacterCounter() {\n var a = 23;\n this.defaultAttrs({\n maxLength: 140,\n superwarnLength: 130,\n warnLength: 120,\n superwarnClass: \"superwarn\",\n warnClass: \"warn\"\n }), this.updateCounter = function() {\n var a = this.getLength(), b = ((((a >= this.attr.warnLength)) && ((a < this.attr.superwarnLength)))), c = ((a >= this.attr.superwarnLength)), d = ((this.attr.maxLength - a));\n this.$counter.html(d).toggleClass(this.attr.warnClass, b).toggleClass(this.attr.superwarnClass, c), ((((b || c)) && this.trigger(\"uiCharCountWarningVisible\", {\n charCount: d\n })));\n }, this.getLength = function(b) {\n return ((((b === undefined)) && (b = this.val()))), ((((b !== this.prevCounterText)) && (this.prevCounterText = b, this.prevCounterLength = twitterText.getTweetLength(b)))), ((this.prevCounterLength + ((this.hasMedia ? a : 0))));\n }, this.maxReached = function() {\n return ((this.getLength() > this.attr.maxLength));\n }, this.after(\"initialize\", function() {\n this.$counter = this.select(\"counterSelector\"), this.JSBNG__on(\"uiTextChanged\", this.updateCounter), this.updateCounter();\n });\n };\n;\n var twitterText = require(\"lib/twitter-text\");\n module.exports = withCharacterCounter;\n});\ndefine(\"app/utils/with_event_params\", [\"module\",\"require\",\"exports\",\"core/utils\",\"core/parameterize\",], function(module, require, exports) {\n function withEventParams() {\n this.rewriteEventName = function(a) {\n var b = util.toArray(arguments, 1), c = ((((((typeof b[0] == \"string\")) || b[0].defaultBehavior)) ? 0 : 1)), d = b[c], e = ((d.type || d));\n try {\n b[c] = parameterize(e, this.attr.eventParams, !0), ((d.type && (d.type = b[c], b[c] = d)));\n } catch (f) {\n throw new Error(\"Couldn't parameterize the event name\");\n };\n ;\n a.apply(this, b);\n }, this.around(\"JSBNG__on\", this.rewriteEventName), this.around(\"off\", this.rewriteEventName), this.around(\"trigger\", this.rewriteEventName);\n };\n;\n var util = require(\"core/utils\"), parameterize = require(\"core/parameterize\");\n module.exports = withEventParams;\n});\ndefine(\"app/utils/caret\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n var caret = {\n getPosition: function(a) {\n try {\n if (JSBNG__document.selection) {\n var b = JSBNG__document.selection.createRange();\n return b.moveStart(\"character\", -a.value.length), b.text.length;\n }\n ;\n ;\n if (((typeof a.selectionStart == \"number\"))) {\n return a.selectionStart;\n }\n ;\n ;\n } catch (c) {\n \n };\n ;\n return 0;\n },\n setPosition: function(a, b) {\n try {\n if (JSBNG__document.selection) {\n var c = a.createTextRange();\n c.collapse(!0), c.moveEnd(\"character\", b), c.moveStart(\"character\", b), c.select();\n }\n else ((((typeof a.selectionStart == \"number\")) && (a.selectionStart = b, a.selectionEnd = b)));\n ;\n ;\n } catch (d) {\n \n };\n ;\n },\n JSBNG__getSelection: function() {\n return ((window.JSBNG__getSelection ? window.JSBNG__getSelection().toString() : JSBNG__document.selection.createRange().text));\n }\n };\n module.exports = caret;\n});\ndefine(\"app/ui/with_draft_tweets\", [\"module\",\"require\",\"exports\",\"app/utils/storage/custom\",], function(module, require, exports) {\n var customStorage = require(\"app/utils/storage/custom\");\n module.exports = function() {\n this.defaultAttrs({\n draftTweetTTL: 86400000\n }), this.getDraftTweet = function() {\n return ((this.attr.draftTweetId && this.draftTweets().getItem(this.attr.draftTweetId)));\n }, this.hasDraftTweet = function() {\n return !!this.getDraftTweet();\n }, this.loadDraftTweet = function() {\n var a = this.getDraftTweet();\n if (a) {\n return this.val(a), !0;\n }\n ;\n ;\n }, this.saveDraftTweet = function(a, b) {\n if (((this.attr.draftTweetId && this.hasFocus()))) {\n var c = b.text.trim();\n ((((((((!!this.attr.defaultText && ((c === this.attr.defaultText.trim())))) || ((!!this.attr.condensedText && ((c === this.attr.condensedText.trim())))))) || !c)) ? this.draftTweets().removeItem(this.attr.draftTweetId) : this.draftTweets().setItem(this.attr.draftTweetId, c, this.attr.draftTweetTTL)));\n }\n ;\n ;\n }, this.clearDraftTweet = function() {\n ((this.attr.draftTweetId && (this.draftTweets().removeItem(this.attr.draftTweetId), this.resetTweetText())));\n }, this.overrideDraftTweetId = function(a, b) {\n this.attr.draftTweetId = b.draftTweetId;\n }, this.draftTweets = function() {\n if (!this.draftTweetsStore) {\n var a = customStorage({\n withExpiry: !0\n });\n this.draftTweetsStore = new a(\"draft_tweets\");\n }\n ;\n ;\n return this.draftTweetsStore;\n }, this.around(\"resetTweetText\", function(a) {\n ((this.loadDraftTweet() || a()));\n }), this.initDraftTweets = function() {\n this.JSBNG__on(\"uiTextChanged\", this.saveDraftTweet), this.JSBNG__on(\"ui{{type}}Sent\", this.clearDraftTweet), ((this.attr.modal && this.JSBNG__on(JSBNG__document, \"uiOverride{{type}}BoxOptions\", this.overrideDraftTweetId)));\n };\n };\n});\ndefine(\"app/ui/with_text_polling\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withTextPolling() {\n this.defaultAttrs({\n pollIntervalInMs: 100\n }), this.pollUpdatedText = function() {\n this.detectUpdatedText(), ((this.hasFocus() || this.stopPollingUpdatedText()));\n }, this.startPollingUpdatedText = function() {\n this.detectUpdatedText(), ((((this.pollUpdatedTextId === undefined)) && (this.pollUpdatedTextId = JSBNG__setInterval(this.pollUpdatedText.bind(this), this.attr.pollIntervalInMs))));\n }, this.stopPollingUpdatedText = function() {\n ((((this.pollUpdatedTextId !== undefined)) && (JSBNG__clearInterval(this.pollUpdatedTextId), delete this.pollUpdatedTextId)));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(this.$text, \"JSBNG__focus\", this.startPollingUpdatedText), ((this.hasFocus() && this.startPollingUpdatedText()));\n }), this.before(\"teardown\", function() {\n this.stopPollingUpdatedText();\n });\n };\n;\n module.exports = withTextPolling;\n});\ndefine(\"app/ui/with_rtl_tweet_box\", [\"module\",\"require\",\"exports\",\"lib/twitter-text\",\"app/utils/caret\",], function(module, require, exports) {\n function replaceIndices(a, b, c) {\n var d = 0, e = \"\";\n return b(a).forEach(function(b) {\n e += ((a.slice(d, b.indices[0]) + c(a.slice(b.indices[0], b.indices[1])))), d = b.indices[1];\n }), ((e + a.slice(d)));\n };\n;\n function withRTL() {\n this.defaultAttrs({\n isRTL: (($(\"body\").attr(\"dir\") === \"rtl\")),\n rtlCharRegex: /[\\u0600-\\u06FF]|[\\u0750-\\u077F]|[\\u0590-\\u05FF]|[\\uFE70-\\uFEFF]/gm,\n dirMarkRegex: /\\u200e|\\u200f/gm,\n rtlThreshold: 36665\n }), this.shouldBeRTL = function(a, b, c) {\n ((((c === undefined)) && (c = a.match(this.attr.rtlCharRegex))));\n var d = a.trim();\n if (!d) {\n return this.attr.isRTL;\n }\n ;\n ;\n if (!c) {\n return !1;\n }\n ;\n ;\n var e = ((d.length - b));\n return ((((e > 0)) && ((((c.length / e)) > this.attr.rtlThreshold))));\n }, this.removeMarkers = function(a) {\n return a.replace(this.attr.dirMarkRegex, \"\");\n }, this.setMarkersAndRTL = function(a, b) {\n var c = b.match(this.attr.rtlCharRegex), d = 0;\n if (c) {\n a = b, a = replaceIndices(a, txt.extractMentionsWithIndices, function(a) {\n return d += ((a.length + 1)), ((((\"\\u200e\" + a)) + \"\\u200f\"));\n });\n var e = this.attr.rtlCharRegex;\n a = replaceIndices(a, txt.extractHashtagsWithIndices, function(a) {\n return ((a[1].match(e) ? a : ((\"\\u200e\" + a))));\n }), a = replaceIndices(a, txt.extractUrlsWithIndices, function(a) {\n return d += ((a.length + 2)), ((a + \"\\u200e\"));\n });\n }\n ;\n ;\n var f = this.shouldBeRTL(b, d, c);\n return this.$text.attr(\"dir\", ((f ? \"rtl\" : \"ltr\"))), a;\n }, this.erasePastMarkers = function(a) {\n if (((a.which === 8))) var b = -1\n else {\n if (((a.which !== 46))) {\n return;\n }\n ;\n ;\n var b = 0;\n }\n ;\n ;\n var c = caret.getPosition(this.$text[0]), d = this.$text.val(), e = 0;\n do {\n var f = ((d[((c + b))] || \"\"));\n ((f && (c += b, e++, d = ((d.slice(0, c) + d.slice(((c + 1))))))));\n } while (f.match(this.attr.dirMarkRegex));\n ((((e > 1)) && (this.$text.val(d), caret.setPosition(this.$text[0], c), a.preventDefault(), this.detectUpdatedText())));\n }, this.cleanRtlText = function(a) {\n var b = this.removeMarkers(a), c = this.setMarkersAndRTL(a, b);\n if (((c !== a))) {\n var d = this.$text[0], e = caret.getPosition(d);\n this.$text.val(c), this.prevText = c, caret.setPosition(d, ((((e + c.length)) - a.length)));\n }\n ;\n ;\n return b;\n }, this.after(\"initTextNode\", function() {\n this.JSBNG__on(this.$text, \"keydown\", this.erasePastMarkers);\n });\n };\n;\n var txt = require(\"lib/twitter-text\"), caret = require(\"app/utils/caret\");\n module.exports = withRTL;\n});\ndefine(\"app/ui/toolbar\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function JSBNG__toolbar() {\n this.defaultAttrs({\n buttonsSelector: \".btn:not([disabled])\"\n }), this.current = -1, this.focusNext = function(a) {\n var b = this.select(\"buttonsSelector\");\n ((((this.current == -1)) && (this.current = $.inArray(JSBNG__document.activeElement, b))));\n var c, d = this.current;\n switch (a.which) {\n case 37:\n d--;\n break;\n case 39:\n d++;\n };\n ;\n c = b[d], ((c && (c.JSBNG__focus(), this.current = d)));\n }, this.clearCurrent = function() {\n this.current = -1;\n }, this.after(\"initialize\", function() {\n this.$node.attr(\"role\", \"JSBNG__toolbar\"), this.JSBNG__on(\"keydown\", {\n buttonsSelector: this.focusNext\n }), this.JSBNG__on(\"focusout\", this.clearCurrent);\n });\n };\n;\n var defineComponent = require(\"core/component\"), Toolbar = defineComponent(JSBNG__toolbar);\n module.exports = Toolbar;\n});\ndefine(\"app/utils/tweet_helper\", [\"module\",\"require\",\"exports\",\"lib/twitter-text\",\"core/utils\",\"app/data/user_info\",], function(module, require, exports) {\n var twitterText = require(\"lib/twitter-text\"), utils = require(\"core/utils\"), userInfo = require(\"app/data/user_info\"), VALID_PROTOCOL_PREFIX_REGEX = /^https?:\\/\\//i, tweetHelper = {\n extractMentionsForReply: function(a, b) {\n var c = a.attr(\"data-screen-name\"), d = a.attr(\"data-retweeter\"), e = ((a.attr(\"data-mentions\") ? a.attr(\"data-mentions\").split(\" \") : [])), f = [c,b,d,];\n return e = e.filter(function(a) {\n return ((f.indexOf(a) < 0));\n }), ((((((d && ((d != c)))) && ((d != b)))) && e.unshift(d))), ((((!e.length || ((c != b)))) && e.unshift(c))), e;\n },\n linkify: function(a, b) {\n return b = utils.merge({\n hashtagClass: \"twitter-hashtag pretty-link\",\n hashtagUrlBase: \"/search?q=%23\",\n symbolTag: \"s\",\n textWithSymbolTag: \"b\",\n cashtagClass: \"twitter-cashtag pretty-link\",\n cashtagUrlBase: \"/search?q=%24\",\n usernameClass: \"twitter-atreply pretty-link\",\n usernameUrlBase: \"/\",\n usernameIncludeSymbol: !0,\n listClass: \"twitter-listname pretty-link\",\n urlClass: \"twitter-timeline-link\",\n urlTarget: \"_blank\",\n suppressNoFollow: !0,\n htmlEscapeNonEntities: !0\n }, ((b || {\n }))), twitterText.autoLinkEntities(a, twitterText.extractEntitiesWithIndices(a), b);\n }\n };\n module.exports = tweetHelper;\n});\ndefine(\"app/utils/html_text\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function isTextNode(a) {\n return ((((a.nodeType == 3)) || ((a.nodeType == 4))));\n };\n;\n function isElementNode(a) {\n return ((a.nodeType == 1));\n };\n;\n function isBrNode(a) {\n return ((isElementNode(a) && ((a.nodeName.toLowerCase() == \"br\"))));\n };\n;\n function isOutsideContainer(a, b) {\n while (((a !== b))) {\n if (!a) {\n return !0;\n }\n ;\n ;\n a = a.parentNode;\n };\n ;\n };\n;\n var useW3CRange = window.JSBNG__getSelection, useMsftTextRange = ((!useW3CRange && JSBNG__document.selection)), useIeHtmlFix = ((JSBNG__navigator.appName == \"Microsoft Internet Explorer\")), NBSP_REGEX = /[\\xa0\\n\\t]/g, CRLF_REGEX = /\\r\\n/g, LINES_REGEX = /(.*?)\\n/g, SP_LEADING_OR_FOLLOWING_CLOSE_TAG_OR_PRECEDING_A_SP_REGEX = /^ |(<\\/[^>]+>) | (?= )/g, SP_LEADING_OR_TRAILING_OR_FOLLOWING_A_SP_REGEX = /^ | $|( ) /g, MAX_OFFSET = Number.MAX_VALUE, htmlText = function(a, b) {\n function c(a, c) {\n function h(a) {\n var i = d.length;\n if (isTextNode(a)) {\n var j = a.nodeValue.replace(NBSP_REGEX, \" \"), k = j.length;\n ((k && (d += j, e = !0))), c(a, !0, 0, i, ((i + k)));\n }\n else if (isElementNode(a)) {\n c(a, !1, 0, i, i);\n if (isBrNode(a)) ((((a == f)) ? g = !0 : (d += \"\\u000a\", e = !1)));\n else {\n var l = ((a.currentStyle || window.JSBNG__getComputedStyle(a, \"\"))), m = ((l.display == \"block\"));\n ((((m && b.msie)) && (e = !0)));\n for (var n = a.firstChild, o = 1; n; n = n.nextSibling, o++) {\n h(n);\n if (g) {\n return;\n }\n ;\n ;\n i = d.length, c(a, !1, o, i, i);\n };\n ;\n ((((g || ((a == f)))) ? g = !0 : ((((m && e)) && (d += \"\\u000a\", e = !1)))));\n }\n ;\n ;\n }\n \n ;\n ;\n };\n ;\n var d = \"\", e, f, g;\n for (var i = a; ((i && isElementNode(i))); i = i.lastChild) {\n f = i;\n ;\n };\n ;\n return h(a), d;\n };\n ;\n function d(a, b) {\n var d = null, e = ((b.length - 1));\n if (useW3CRange) {\n var f = b.map(function() {\n return {\n };\n }), g;\n c(a, function(a, c, d, h, i) {\n ((g || f.forEach(function(f, j) {\n var k = b[j];\n ((((((h <= k)) && !isBrNode(a))) && (f.node = a, f.offset = ((c ? ((Math.min(k, i) - h)) : d)), g = ((((c && ((j == e)))) && ((i >= k)))))));\n })));\n }), ((((f[0].node && f[e].node)) && (d = JSBNG__document.createRange(), d.setStart(f[0].node, f[0].offset), d.setEnd(f[e].node, f[e].offset))));\n }\n else if (useMsftTextRange) {\n var h = JSBNG__document.body.createTextRange();\n h.moveToElementText(a), d = h.duplicate();\n if (((b[0] == MAX_OFFSET))) d.setEndPoint(\"StartToEnd\", h);\n else {\n d.move(\"character\", b[0]);\n var i = ((e && ((b[1] - b[0]))));\n ((((i > 0)) && d.moveEnd(\"character\", i))), ((h.inRange(d) || d.setEndPoint(\"EndToEnd\", h)));\n }\n ;\n ;\n }\n \n ;\n ;\n return d;\n };\n ;\n function e() {\n return ((a.offsetWidth && a.offsetHeight));\n };\n ;\n function f(b) {\n a.innerHTML = b;\n if (useIeHtmlFix) {\n for (var c = a.firstChild; c; c = c.nextSibling) {\n ((((((isElementNode(c) && ((c.nodeName.toLowerCase() == \"p\")))) && ((c.innerHTML == \"\")))) && (c.innerText = \"\")));\n ;\n };\n }\n ;\n ;\n };\n ;\n function g(a, b) {\n return a.map(function(a) {\n return Math.min(a, b.length);\n });\n };\n ;\n function h() {\n var b = JSBNG__getSelection();\n if (((b.rangeCount !== 1))) {\n return null;\n }\n ;\n ;\n var d = b.getRangeAt(0);\n if (isOutsideContainer(d.commonAncestorContainer, a)) {\n return null;\n }\n ;\n ;\n var e = [{\n node: d.startContainer,\n offset: d.startOffset\n },];\n ((d.collapsed || e.push({\n node: d.endContainer,\n offset: d.endOffset\n })));\n var f = e.map(function() {\n return MAX_OFFSET;\n }), h = c(a, function(a, b, c, d) {\n e.forEach(function(e, g) {\n ((((((((f[g] == MAX_OFFSET)) && ((a == e.node)))) && ((b || ((c == e.offset)))))) && (f[g] = ((d + ((b ? e.offset : 0)))))));\n });\n });\n return g(f, h);\n };\n ;\n function i() {\n var b = JSBNG__document.selection.createRange();\n if (isOutsideContainer(b.parentElement(), a)) {\n return null;\n }\n ;\n ;\n var d = [\"Start\",];\n ((b.compareEndPoints(\"StartToEnd\", b) && d.push(\"End\")));\n var e = d.map(function() {\n return MAX_OFFSET;\n }), f = JSBNG__document.body.createTextRange(), h = c(a, function(c, g, h, i) {\n function j(a, c) {\n if (((e[c] < MAX_OFFSET))) {\n return;\n }\n ;\n ;\n var d = f.compareEndPoints(((\"StartTo\" + a)), b);\n if (((d > 0))) {\n return;\n }\n ;\n ;\n var g = f.compareEndPoints(((\"EndTo\" + a)), b);\n if (((g < 0))) {\n return;\n }\n ;\n ;\n var h = f.duplicate();\n h.setEndPoint(((\"EndTo\" + a)), b), e[c] = ((i + h.text.length)), ((((c && !g)) && e[c]++));\n };\n ;\n ((((((!g && !h)) && ((c != a)))) && (f.moveToElementText(c), d.forEach(j))));\n });\n return g(e, h);\n };\n ;\n return {\n getHtml: function() {\n if (useIeHtmlFix) {\n var b = \"\", c = JSBNG__document.createElement(\"div\");\n for (var d = a.firstChild; d; d = d.nextSibling) {\n ((isTextNode(d) ? (c.innerText = d.nodeValue, b += c.innerHTML) : b += d.outerHTML.replace(CRLF_REGEX, \"\")));\n ;\n };\n ;\n return b;\n }\n ;\n ;\n return a.innerHTML;\n },\n setHtml: function(a) {\n f(a);\n },\n getText: function() {\n return c(a, function() {\n \n });\n },\n setTextWithMarkup: function(a) {\n f(((a + \"\\u000a\")).replace(LINES_REGEX, function(a, c) {\n return ((((b.mozilla || b.msie)) ? (c = c.replace(SP_LEADING_OR_FOLLOWING_CLOSE_TAG_OR_PRECEDING_A_SP_REGEX, \"$1&nbsp;\"), ((b.mozilla ? ((c + \"\\u003CBR\\u003E\")) : ((((\"\\u003CP\\u003E\" + c)) + \"\\u003C/P\\u003E\"))))) : (c = ((c || \"\\u003Cbr\\u003E\")).replace(SP_LEADING_OR_TRAILING_OR_FOLLOWING_A_SP_REGEX, \"$1&nbsp;\"), ((b.JSBNG__opera ? ((((\"\\u003Cp\\u003E\" + c)) + \"\\u003C/p\\u003E\")) : ((((\"\\u003Cdiv\\u003E\" + c)) + \"\\u003C/div\\u003E\")))))));\n }));\n },\n getSelectionOffsets: function() {\n var a = null;\n return ((e() && ((useW3CRange ? a = h() : ((useMsftTextRange && (a = i()))))))), a;\n },\n setSelectionOffsets: function(b) {\n if (((b && e()))) {\n var c = d(a, b);\n if (c) {\n if (useW3CRange) {\n var f = window.JSBNG__getSelection();\n f.removeAllRanges(), f.addRange(c);\n }\n else ((useMsftTextRange && c.select()));\n ;\n }\n ;\n ;\n }\n ;\n ;\n },\n emphasizeText: function(b) {\n var f = [];\n ((((((b && ((b.length > 1)))) && e())) && (c(a, function(a, c, d, e, g) {\n if (c) {\n var h = Math.max(e, b[0]), i = Math.min(g, b[1]);\n ((((i > h)) && f.push([h,i,])));\n }\n ;\n ;\n }), f.forEach(function(b) {\n var c = d(a, b);\n ((c && ((useW3CRange ? c.surroundContents(JSBNG__document.createElement(\"em\")) : ((useMsftTextRange && c.execCommand(\"italic\", !1, null)))))));\n }))));\n }\n };\n };\n module.exports = htmlText;\n});\ndefine(\"app/ui/with_rich_editor\", [\"module\",\"require\",\"exports\",\"app/utils/tweet_helper\",\"lib/twitter-text\",\"app/utils/html_text\",], function(module, require, exports) {\n function withRichEditor() {\n this.defaultAttrs({\n richSelector: \"div.rich-editor\",\n linksSelector: \"a\",\n normalizerSelector: \"div.rich-normalizer\"\n }), this.linkify = function(a) {\n var b = {\n urlTarget: null,\n textWithSymbolTag: ((RENDER_URLS_AS_PRETTY_LINKS ? \"b\" : \"\")),\n linkAttributeBlock: function(a, b) {\n var c = ((a.screenName || a.url));\n ((c && (this.urlAndMentionsCharCount += ((c.length + 2))))), delete b.title, delete b[\"data-screen-name\"], b.dir = ((((a.hashtag && this.shouldBeRTL(a.hashtag, 0))) ? \"rtl\" : \"ltr\"));\n }.bind(this)\n };\n return this.urlAndMentionsCharCount = 0, tweetHelper.linkify(a, b);\n }, this.around(\"setCursorPosition\", function(a, b) {\n if (!this.isRich) {\n return a(b);\n }\n ;\n ;\n ((((b === undefined)) && (b = this.attr.cursorPosition))), ((((b === undefined)) && (b = MAX_OFFSET))), this.setSelectionIfFocused([b,]);\n }), this.around(\"detectUpdatedText\", function(a, b, c) {\n if (!this.isRich) {\n return a(b, c);\n }\n ;\n ;\n if (this.$text.attr(\"data-in-composition\")) {\n return;\n }\n ;\n ;\n var d = this.htmlRich.getHtml(), e = ((this.htmlRich.getSelectionOffsets() || [MAX_OFFSET,]));\n if (((((((((d === this.prevHtml)) && ((e[0] === this.prevSelectionOffset)))) && !b)) && ((c === undefined))))) {\n return;\n }\n ;\n ;\n ((((c === undefined)) && (c = this.htmlRich.getText())));\n var f = c.replace(INVALID_CHARS, \"\");\n this.htmlNormalizer.setTextWithMarkup(this.linkify(f));\n var g = this.shouldBeRTL(f, this.urlAndMentionsCharCount);\n this.$text.attr(\"dir\", ((g ? \"rtl\" : \"ltr\"))), this.$normalizer.JSBNG__find(((g ? \"[dir=rtl]\" : \"[dir=ltr]\"))).removeAttr(\"dir\"), ((RENDER_URLS_AS_PRETTY_LINKS && this.$normalizer.JSBNG__find(\".twitter-timeline-link\").wrapInner(\"\\u003Cb\\u003E\").addClass(\"pretty-link\")));\n var h = this.getMaxLengthOffset(f);\n ((((h >= 0)) && (this.htmlNormalizer.emphasizeText([h,MAX_OFFSET,]), this.$normalizer.JSBNG__find(\"em\").each(function() {\n this.innerHTML = this.innerHTML.replace(TRAILING_SINGLE_SPACE_REGEX, \"\\u00a0\");\n }))));\n var i = this.htmlNormalizer.getHtml();\n ((((i !== d)) && (this.htmlRich.setHtml(i), this.setSelectionIfFocused(e)))), this.prevHtml = i, this.prevSelectionOffset = e[0], this.updateCleanedTextAndOffset(f, e[0]);\n }), this.getMaxLengthOffset = function(a) {\n var b = this.getLength(a), c = this.attr.maxLength;\n if (((b <= c))) {\n return -1;\n }\n ;\n ;\n c += ((twitterText.getUnicodeTextLength(a) - b));\n var d = [{\n indices: [c,c,]\n },];\n return twitterText.modifyIndicesFromUnicodeToUTF16(a, d), d[0].indices[0];\n }, this.setSelectionIfFocused = function(a) {\n ((this.hasFocus() && this.htmlRich.setSelectionOffsets(a)));\n }, this.selectPrevCharOnBackspace = function(a) {\n if (((a.which == 8))) {\n var b = this.htmlRich.getSelectionOffsets();\n ((((((b && ((b[0] != MAX_OFFSET)))) && ((b.length == 1)))) && ((b[0] ? this.setSelectionIfFocused([((b[0] - 1)),b[0],]) : this.stopEvent(a)))));\n }\n ;\n ;\n }, this.emulateCommandArrow = function(a) {\n if (((((a.metaKey && !a.shiftKey)) && ((((a.which == 37)) || ((a.which == 39))))))) {\n var b = ((a.which == 37));\n this.htmlRich.setSelectionOffsets([((b ? 0 : MAX_OFFSET)),]), this.$text.scrollTop(((b ? 0 : this.$text[0].scrollHeight))), this.stopEvent(a);\n }\n ;\n ;\n }, this.stopEvent = function(a) {\n a.preventDefault(), a.stopPropagation();\n }, this.saveUndoStateDeferred = function(a) {\n ((((a.type != \"JSBNG__focus\")) && this.saveUndoState())), JSBNG__setTimeout(function() {\n this.detectUpdatedText(), this.saveUndoState();\n }.bind(this), 0);\n }, this.saveEmptyUndoState = function() {\n this.undoHistory = [[\"\",[0,],],], this.undoIndex = 0;\n }, this.saveUndoState = function() {\n if (this.condensed) {\n return;\n }\n ;\n ;\n var a = this.htmlRich.getText(), b = ((this.htmlRich.getSelectionOffsets() || [a.length,])), c = this.undoHistory, d = c[this.undoIndex];\n ((((!d || ((d[0] !== a)))) && c.splice(++this.undoIndex, c.length, [a,b,])));\n }, this.isUndoKey = function(a) {\n return ((this.isMac ? ((((((((((a.which == 90)) && a.metaKey)) && !a.shiftKey)) && !a.ctrlKey)) && !a.altKey)) : ((((((((a.which == 90)) && a.ctrlKey)) && !a.shiftKey)) && !a.altKey))));\n }, this.emulateUndo = function(a) {\n ((this.isUndoKey(a) && (this.stopEvent(a), this.saveUndoState(), ((((this.undoIndex > 0)) && this.setUndoState(this.undoHistory[--this.undoIndex]))))));\n }, this.isRedoKey = function(a) {\n return ((this.isMac ? ((((((((((a.which == 90)) && a.metaKey)) && a.shiftKey)) && !a.ctrlKey)) && !a.altKey)) : ((this.isWin ? ((((((((a.which == 89)) && a.ctrlKey)) && !a.shiftKey)) && !a.altKey)) : ((((((((a.which == 90)) && a.shiftKey)) && a.ctrlKey)) && !a.altKey))))));\n }, this.emulateRedo = function(a) {\n var b = this.undoHistory, c = this.undoIndex;\n ((((((c < ((b.length - 1)))) && ((this.htmlRich.getText() !== b[c][0])))) && b.splice(((c + 1)), b.length))), ((this.isRedoKey(a) && (this.stopEvent(a), ((((c < ((b.length - 1)))) && this.setUndoState(b[++this.undoIndex]))))));\n }, this.setUndoState = function(a) {\n this.detectUpdatedText(!1, a[0]), this.htmlRich.setSelectionOffsets(a[1]), this.trigger(\"uiHideAutocomplete\");\n }, this.handleKeyDown = function(a) {\n (($.browser.msie && this.selectPrevCharOnBackspace(a))), (($.browser.mozilla && this.emulateCommandArrow(a))), this.emulateUndo(a), this.emulateRedo(a);\n }, this.interceptPlainTextPaste = function(a) {\n if (((a.originalEvent && a.originalEvent.JSBNG__clipboardData))) {\n var b = a.originalEvent.JSBNG__clipboardData.getData(\"text\");\n ((((b && JSBNG__document.execCommand(\"insertHTML\", !1, $(\"\\u003Cdiv\\u003E\").text(b).html()))) && a.preventDefault()));\n }\n ;\n ;\n }, this.clearSelectionOnBlur = function() {\n ((window.JSBNG__getSelection && (this.previousSelection = this.htmlRich.getSelectionOffsets(), ((this.previousSelection && JSBNG__getSelection().removeAllRanges())))));\n }, this.restoreSelectionOnFocus = function() {\n ((this.previousSelection && (this.htmlRich.setSelectionOffsets(this.previousSelection), this.previousSelection = null)));\n }, this.around(\"initTextNode\", function(a) {\n this.$text = this.select(\"richSelector\");\n if (!this.$text.length) {\n return a();\n }\n ;\n ;\n this.isRich = !0, this.undoIndex = -1, this.undoHistory = [], this.htmlRich = htmlText(this.$text[0], $.browser), this.$normalizer = this.select(\"normalizerSelector\"), this.htmlNormalizer = htmlText(this.$normalizer[0], $.browser);\n var b = JSBNG__navigator.platform;\n this.isMac = ((b.indexOf(\"Mac\") != -1)), this.isWin = ((b.indexOf(\"Win\") != -1)), this.JSBNG__on(this.$text, \"click\", {\n linksSelector: this.stopEvent\n }), this.JSBNG__on(this.$text, \"keydown\", this.handleKeyDown), this.JSBNG__on(this.$text, \"cut paste drop focus\", this.saveUndoStateDeferred), this.JSBNG__on(this.$text, \"paste\", this.interceptPlainTextPaste), this.JSBNG__on(this.$text, \"JSBNG__blur\", this.clearSelectionOnBlur), this.JSBNG__on(this.$text, \"JSBNG__focus\", this.restoreSelectionOnFocus);\n });\n };\n;\n var tweetHelper = require(\"app/utils/tweet_helper\"), twitterText = require(\"lib/twitter-text\"), htmlText = require(\"app/utils/html_text\");\n module.exports = withRichEditor;\n var INVALID_CHARS = /[\\uFFFE\\uFEFF\\uFFFF\\u202A\\u202B\\u202C\\u202D\\u202E\\x00]/g, RENDER_URLS_AS_PRETTY_LINKS = (($.browser.mozilla && ((parseInt($.browser.version, 10) < 2)))), TRAILING_SINGLE_SPACE_REGEX = / $/, MAX_OFFSET = Number.MAX_VALUE;\n});\ndefine(\"app/ui/with_upload_photo_affordance\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function uploadPhotoAffordance() {\n this.defaultAttrs({\n uploadPhotoHoverClass: \"upload-photo-hover\"\n }), this.uploadPhotoHoverOn = function() {\n this.$node.addClass(this.attr.uploadPhotoHoverClass);\n }, this.uploadPhotoHoverOff = function() {\n this.$node.removeClass(this.attr.uploadPhotoHoverClass);\n }, this.after(\"initialize\", function() {\n this.attr.uploadPhotoSelector = ((this.attr.uploadPhotoSelector || \".upload-photo\")), this.JSBNG__on(\"mouseover\", {\n uploadPhotoSelector: this.uploadPhotoHoverOn\n }), this.JSBNG__on(JSBNG__document, \"uiDragEnter\", this.uploadPhotoHoverOff), this.JSBNG__on(\"mouseout\", {\n uploadPhotoSelector: this.uploadPhotoHoverOff\n });\n });\n };\n;\n module.exports = uploadPhotoAffordance;\n});\ndeferred(\"$lib/jquery.swfobject.js\", function() {\n (function(a, b, c) {\n function d(a, b) {\n var c = ((((a[0] || 0)) - ((b[0] || 0))));\n return ((((c > 0)) || ((((!c && ((a.length > 0)))) && d(a.slice(1), b.slice(1))))));\n };\n ;\n function e(a) {\n if (((typeof a != h))) {\n return a;\n }\n ;\n ;\n var b = [], c = \"\";\n {\n var fin64keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin64i = (0);\n var d;\n for (; (fin64i < fin64keys.length); (fin64i++)) {\n ((d) = (fin64keys[fin64i]));\n {\n c = ((((typeof a[d] == h)) ? e(a[d]) : [d,((i ? encodeURI(a[d]) : a[d])),].join(\"=\"))), b.push(c);\n ;\n };\n };\n };\n ;\n return b.join(\"&\");\n };\n ;\n function f(a) {\n var b = [];\n {\n var fin65keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin65i = (0);\n var c;\n for (; (fin65i < fin65keys.length); (fin65i++)) {\n ((c) = (fin65keys[fin65i]));\n {\n ((a[c] && b.push([c,\"=\\\"\",a[c],\"\\\"\",].join(\"\"))));\n ;\n };\n };\n };\n ;\n return b.join(\" \");\n };\n ;\n function g(a) {\n var b = [];\n {\n var fin66keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin66i = (0);\n var c;\n for (; (fin66i < fin66keys.length); (fin66i++)) {\n ((c) = (fin66keys[fin66i]));\n {\n b.push([\"\\u003Cparam name=\\\"\",c,\"\\\" value=\\\"\",e(a[c]),\"\\\" /\\u003E\",].join(\"\"));\n ;\n };\n };\n };\n ;\n return b.join(\"\");\n };\n ;\n var h = \"object\", i = !0;\n try {\n var j = ((c.description || function() {\n return (new c(\"ShockwaveFlash.ShockwaveFlash\")).GetVariable(\"$version\");\n }()));\n } catch (k) {\n j = \"Unavailable\";\n };\n ;\n var l = ((j.match(/\\d+/g) || [0,]));\n a[b] = {\n available: ((l[0] > 0)),\n activeX: ((c && !c.JSBNG__name)),\n version: {\n original: j,\n array: l,\n string: l.join(\".\"),\n major: ((parseInt(l[0], 10) || 0)),\n minor: ((parseInt(l[1], 10) || 0)),\n release: ((parseInt(l[2], 10) || 0))\n },\n hasVersion: function(a) {\n return a = ((/string|number/.test(typeof a) ? a.toString().split(\".\") : ((/object/.test(typeof a) ? [a.major,a.minor,] : ((a || [0,0,])))))), d(l, a);\n },\n encodeParams: !0,\n expressInstall: \"expressInstall.swf\",\n expressInstallIsActive: !1,\n create: function(a) {\n if (((((!a.swf || this.expressInstallIsActive)) || ((!this.available && !a.hasVersionFail))))) {\n return !1;\n }\n ;\n ;\n if (!this.hasVersion(((a.hasVersion || 1)))) {\n this.expressInstallIsActive = !0;\n if (((((typeof a.hasVersionFail == \"function\")) && !a.hasVersionFail.apply(a)))) {\n return !1;\n }\n ;\n ;\n a = {\n swf: ((a.expressInstall || this.expressInstall)),\n height: 137,\n width: 214,\n flashvars: {\n MMredirectURL: JSBNG__location.href,\n MMplayerType: ((this.activeX ? \"ActiveX\" : \"PlugIn\")),\n MMdoctitle: ((JSBNG__document.title.slice(0, 47) + \" - Flash Player Installation\"))\n }\n };\n }\n ;\n ;\n attrs = {\n data: a.swf,\n type: \"application/x-shockwave-flash\",\n id: ((a.id || ((\"flash_\" + Math.floor(((Math.JSBNG__random() * 999999999))))))),\n width: ((a.width || 320)),\n height: ((a.height || 180)),\n style: ((a.style || \"\"))\n }, i = ((((typeof a.useEncode != \"undefined\")) ? a.useEncode : this.encodeParams)), a.movie = a.swf, a.wmode = ((a.wmode || \"opaque\")), delete a.fallback, delete a.hasVersion, delete a.hasVersionFail, delete a.height, delete a.id, delete a.swf, delete a.useEncode, delete a.width;\n var b = JSBNG__document.createElement(\"div\");\n return b.innerHTML = [\"\\u003Cobject \",f(attrs),\"\\u003E\",g(a),\"\\u003C/object\\u003E\",].join(\"\"), b.firstChild;\n }\n }, a.fn[b] = function(c) {\n var d = this.JSBNG__find(h).andSelf().filter(h);\n return ((/string|object/.test(typeof c) && this.each(function() {\n var d = a(this), e;\n c = ((((typeof c == h)) ? c : {\n swf: c\n })), c.fallback = this;\n if (e = a[b].create(c)) {\n d.children().remove(), d.html(e);\n }\n ;\n ;\n }))), ((((typeof c == \"function\")) && d.each(function() {\n var d = this;\n d.jsInteractionTimeoutMs = ((d.jsInteractionTimeoutMs || 0)), ((((d.jsInteractionTimeoutMs < 660)) && ((((d.clientWidth || d.clientHeight)) ? c.call(d) : JSBNG__setTimeout(function() {\n a(d)[b](c);\n }, ((d.jsInteractionTimeoutMs + 66)))))));\n }))), d;\n };\n })(jQuery, \"flash\", ((JSBNG__navigator.plugins[\"Shockwave Flash\"] || window.ActiveXObject)));\n});\ndefine(\"app/utils/image\", [\"module\",\"require\",\"exports\",\"$lib/jquery.swfobject.js\",], function(module, require, exports) {\n require(\"$lib/jquery.swfobject.js\");\n var image = {\n photoHelperSwfPath: \"/t1/flash/PhotoHelper.swf\",\n photoSelectorSwfPath: \"/t1/flash/PhotoSelector.swf\",\n MAX_FILE_SIZE: 3145728,\n validateFileName: function(a) {\n return /(.*)\\.(jpg|jpeg|png|gif)/i.test(a);\n },\n validateImageSize: function(a, b) {\n var c = ((a.size || a.fileSize)), b = ((b || this.MAX_FILE_SIZE));\n return ((!c || ((c <= b))));\n },\n getFileName: function(a) {\n if (((((a.indexOf(\"/\") == -1)) && ((a.indexOf(\"\\\\\") == -1))))) {\n return a;\n }\n ;\n ;\n var b = a.match(/(?:.*)[\\/\\\\]([^\\/\\\\]+(?:\\.\\w+)?)$/);\n return b[1];\n },\n loadPhotoHelperSwf: function(a, b, c, d, e) {\n return a.flash({\n swf: this.photoHelperSwfPath,\n height: d,\n width: e,\n wmode: \"transparent\",\n AllowScriptAccess: \"sameDomain\",\n flashvars: {\n callbackName: b,\n errorCallbackName: c\n }\n }), a.JSBNG__find(\"object\");\n },\n loadPhotoSelectorSwf: function(a, b, c, d, e, f) {\n return a.flash({\n swf: this.photoSelectorSwfPath,\n height: d,\n width: e,\n wmode: \"transparent\",\n AllowScriptAccess: \"sameDomain\",\n flashvars: {\n callbackName: b,\n errorCallbackName: c,\n buttonWidth: e,\n buttonHeight: d,\n maxSizeInBytes: f\n }\n }), a.JSBNG__find(\"object\");\n },\n hasFlash: function() {\n try {\n return (($.flash.available && $.flash.hasVersion(10)));\n } catch (a) {\n return !1;\n };\n ;\n },\n hasFileReader: function() {\n return ((((((typeof JSBNG__FileReader == \"function\")) || ((typeof JSBNG__FileReader == \"object\")))) ? !0 : !1));\n },\n hasCanvas: function() {\n var a = JSBNG__document.createElement(\"canvas\");\n return ((!!a.getContext && !!a.getContext(\"2d\")));\n },\n supportsCropper: function() {\n return ((this.hasCanvas() && ((this.hasFileReader() || this.hasFlash()))));\n },\n getFileHandle: function(a) {\n return ((((a.files && a.files[0])) ? a.files[0] : !1));\n },\n shouldUseFlash: function() {\n return ((!this.hasFileReader() && this.hasFlash()));\n },\n mode: function() {\n return ((this.hasFileReader() ? \"html5\" : ((this.hasFlash() ? \"flash\" : \"html4\"))));\n },\n getDataUri: function(a, b) {\n var c = ((\"data:image/jpeg;base64,\" + a));\n return ((b && (c = ((((\"url(\" + c)) + \")\"))))), c;\n },\n getFileData: function(a, b, c) {\n var d = new JSBNG__FileReader;\n d.JSBNG__onload = function(b) {\n var d = b.target.result;\n c(a, d);\n }, d.readAsDataURL(b);\n }\n };\n module.exports = image;\n});\ndefine(\"app/utils/drag_drop_helper\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n var dragDropHelper = {\n hasFiles: function(a) {\n var b = ((a.originalEvent || a)).dataTransfer;\n return ((b && ((b.types.contains ? b.types.contains(\"Files\") : ((b.types.indexOf(\"Files\") >= 0))))));\n },\n onlyHandleEventsWithFiles: function(a) {\n return function(b, c) {\n if (dragDropHelper.hasFiles(b)) {\n return a.call(this, b, c);\n }\n ;\n ;\n };\n }\n };\n module.exports = dragDropHelper;\n});\ndefine(\"app/ui/with_drop_events\", [\"module\",\"require\",\"exports\",\"app/utils/image\",\"app/utils/drag_drop_helper\",], function(module, require, exports) {\n function withDropEvents() {\n this.drop = function(a) {\n a.preventDefault(), a.stopImmediatePropagation();\n var b = image.getFileHandle(a.originalEvent.dataTransfer);\n this.trigger(\"uiDrop\", {\n file: b\n }), this.trigger(\"uiDragEnd\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"drop\", dragDropHelper.onlyHandleEventsWithFiles(this.drop));\n });\n };\n;\n var image = require(\"app/utils/image\"), dragDropHelper = require(\"app/utils/drag_drop_helper\");\n module.exports = withDropEvents;\n});\ndefine(\"app/ui/with_droppable_image\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/ui/with_drop_events\",\"app/utils/image\",], function(module, require, exports) {\n function withDroppableImage() {\n compose.mixin(this, [withDropEvents,]), this.triggerGotImageData = function(a, b) {\n this.trigger(\"uiGotImageData\", {\n JSBNG__name: a,\n contents: b\n });\n }, this.captureImageData = function(a, b) {\n var c = b.file;\n image.getFileData(c.JSBNG__name, c, this.triggerGotImageData.bind(this));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiDrop\", this.captureImageData);\n });\n };\n;\n var compose = require(\"core/compose\"), withDropEvents = require(\"app/ui/with_drop_events\"), image = require(\"app/utils/image\");\n module.exports = withDroppableImage;\n});\ndefine(\"app/ui/tweet_box\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_character_counter\",\"app/utils/with_event_params\",\"app/utils/caret\",\"core/utils\",\"core/i18n\",\"app/utils/scribe_item_types\",\"app/ui/with_draft_tweets\",\"app/ui/with_text_polling\",\"app/ui/with_rtl_tweet_box\",\"app/ui/toolbar\",\"app/ui/with_rich_editor\",\"app/ui/with_upload_photo_affordance\",\"app/ui/with_droppable_image\",], function(module, require, exports) {\n function tweetBox() {\n var a = _(\"Compose new Tweet...\"), b = \"\";\n this.defaultAttrs({\n textSelector: \"textarea.tweet-box\",\n shadowTextSelector: \".tweet-box-shadow\",\n counterSelector: \"span.tweet-counter\",\n toolbarSelector: \".js-toolbar\",\n imageSelector: \".photo-selector\",\n uploadPhotoSelector: \".photo-selector\",\n imageBtnSelector: \".photo-selector .btn\",\n focusClass: \"JSBNG__focus\",\n fileInputSelector: \".file-input\",\n thumbContainerSelector: \".thumbnail-container\",\n tweetActionSelector: \".tweet-action\",\n iframeSelector: \".tweet-post-iframe\",\n placeIdSelector: \"input[name=place_id]\",\n cursorPosition: undefined,\n inReplyToTweetData: {\n },\n inReplyToStatusId: undefined,\n impressionId: undefined,\n disclosureType: undefined,\n modal: !1,\n condensable: !1,\n suppressFlashMessage: !1,\n customData: {\n },\n position: undefined,\n itemType: \"tweet\",\n component: undefined,\n eventParams: \"\"\n }), this.dmRegex = /^\\s*(?:d|m|dm)\\s+[@]?(\\S+)\\s*(.*)/i, this.validUserRegex = /^(\\w{1,20})$/, this.dmMode = !1, this.hasMedia = !1, this.condensed = !1, this.sendTweet = function(a) {\n ((a && a.preventDefault())), this.detectUpdatedText(), this.$node.attr(\"id\", this.getTweetboxId());\n var b = {\n JSBNG__status: this.val(),\n place_id: this.select(\"placeIdSelector\").val(),\n in_reply_to_status_id: this.attr.inReplyToStatusId,\n impression_id: this.attr.impressionId,\n earned: ((this.attr.disclosureType ? ((this.attr.disclosureType == \"earned\")) : undefined))\n }, c = ((this.hasMedia ? \"uiSend{{type}}WithMedia\" : \"uiSend{{type}}\"));\n this.trigger(c, {\n tweetboxId: this.getTweetboxId(),\n tweetData: b\n }), this.$node.addClass(\"tweeting\"), this.disable();\n }, this.getTweetboxId = function() {\n return ((this.tweetboxId || (this.tweetboxId = ((\"swift_tweetbox_\" + +(new JSBNG__Date)))))), this.tweetboxId;\n }, this.overrideTweetBoxOptions = function(a, b) {\n this.attr.inReplyToTweetData = b, ((b.id && (this.attr.inReplyToStatusId = b.id))), ((b.impressionId && (this.attr.impressionId = b.impressionId))), ((b.disclosureType && (this.attr.disclosureType = b.disclosureType))), ((b.defaultText && (this.attr.defaultText = b.defaultText))), ((b.customData && (this.attr.customData = b.customData))), ((b.itemType && (this.attr.itemType = b.itemType))), ((((b.scribeContext && b.scribeContext.component)) && (this.attr.component = b.scribeContext.component))), ((((b.position !== undefined)) && (this.attr.position = b.position))), ((((b.cursorPosition !== undefined)) && (this.attr.cursorPosition = b.cursorPosition)));\n }, this.resetOverriddenOptions = function(a, b) {\n delete this.attr.defaultText, this.attr.inReplyToTweetData = this.defaults.inReplyToTweetData, this.attr.inReplyToStatusId = this.defaults.inReplyToStatusId, this.attr.impressionId = this.defaults.impressionId, this.attr.disclosureType = this.defaults.disclosureType, this.attr.defaultText = this.getDefaultText(), this.attr.cursorPosition = this.defaults.cursorPosition, this.attr.customData = this.defaults.customData, this.attr.position = this.defaults.position, this.attr.itemType = this.defaults.itemType, this.attr.component = this.attr.component;\n }, this.updateTweetTitleThenButton = function() {\n this.updateTitle(), this.updateTweetButton();\n }, this.updateTweetButton = function() {\n var a = !1, b = this.val().trim();\n ((this.hasMedia ? a = !0 : a = ((b && ((b !== this.attr.defaultText.trim()))))));\n if (((this.maxReached() || this.$node.hasClass(\"tweeting\")))) {\n a = !1;\n }\n ;\n ;\n ((((this.dmMode && ((!this.dmText || !this.dmUsername.match(this.validUserRegex))))) && (a = !1))), ((a ? this.enable() : this.disable()));\n }, this.updateTweetButtonText = function(a) {\n this.select(\"tweetActionSelector\").text(a);\n }, this.updateTitle = function() {\n var a = this.val().match(this.dmRegex), b = ((a && a[1]));\n this.dmText = ((a && a[2])), ((((a && ((!this.dmMode || ((this.dmMode && ((this.dmUsername != b)))))))) ? (this.dmMode = !0, this.dmUsername = b, this.trigger(\"uiDialogUpdateTitle\", {\n title: _(\"Message @{{username}}\", {\n username: b\n })\n }), this.updateTweetButtonText(_(\"Send message\"))) : ((((this.dmMode && !a)) && (this.dmMode = !1, this.dmUsername = undefined, this.trigger(\"uiDialogUpdateTitle\", {\n title: _(\"What's happening\")\n }), this.updateTweetButtonText(_(\"Tweet\")))))));\n }, this.tweetSent = function(a, b) {\n var c = ((b.tweetboxId || b.sourceEventData.tweetboxId));\n if (((c != this.getTweetboxId()))) {\n return;\n }\n ;\n ;\n b.customData = this.attr.customData, ((b.message && this.trigger(((b.unusual ? \"uiShowError\" : \"uiShowMessage\")), {\n message: b.message\n })));\n if (((this.attr.eventParams.type == \"Tweet\"))) {\n var d = \"uiTweetboxTweetSuccess\";\n if (((this.attr.inReplyToStatusId || ((this.val().indexOf(\"@\") == 0))))) {\n if (((this.attr.inReplyToTweetData || {\n })).replyLinkClick) {\n var e = utils.merge({\n }, this.attr.inReplyToTweetData);\n ((e.scribeContext && (e.scribeContext.element = \"\"))), this.trigger(\"uiReplyButtonTweetSuccess\", e);\n }\n ;\n ;\n d = \"uiTweetboxReplySuccess\";\n }\n else ((this.val().match(this.dmRegex) && (d = \"uiTweetboxDMSuccess\")));\n ;\n ;\n this.trigger(d, {\n scribeData: {\n item_ids: [b.tweet_id,]\n }\n });\n }\n ;\n ;\n this.$node.removeClass(\"tweeting\"), this.trigger(\"ui{{type}}Sent\", b), this.reset(), this.condense();\n }, this.scribeDataForReply = function() {\n var a = {\n id: this.attr.inReplyToStatusId,\n item_type: scribeItemTypes.tweet\n }, b = {\n };\n ((this.attr.impressionId && (a.token = this.attr.impressionId, b.promoted = !0)));\n if (((((this.attr.position == 0)) || this.attr.position))) {\n a.position = this.attr.position;\n }\n ;\n ;\n return b.items = [a,], {\n scribeData: b,\n scribeContext: {\n component: this.attr.component,\n element: \"\"\n }\n };\n }, this.tweetError = function(a, b) {\n var c = ((b.tweetboxId || b.sourceEventData.tweetboxId));\n if (((c != this.getTweetboxId()))) {\n return;\n }\n ;\n ;\n ((!this.attr.suppressFlashMessage && this.trigger(\"uiShowError\", {\n message: ((b.error || b.message))\n }))), this.$node.removeClass(\"tweeting\"), this.enable(), ((((this.attr.eventParams.type == \"Tweet\")) && this.trigger(\"uiTweetboxTweetError\")));\n }, this.detectUpdatedText = function(a, b) {\n ((((b === undefined)) ? b = this.$text.val() : this.$text.val(b)));\n if (((((b !== this.prevText)) || a))) {\n this.prevText = b, b = this.cleanRtlText(b), this.updateCleanedTextAndOffset(b, caret.getPosition(this.$text[0]));\n }\n ;\n ;\n }, this.updateCleanedTextAndOffset = function(a, b) {\n this.cleanedText = a, this.select(\"shadowTextSelector\").val(a), this.trigger(\"uiTextChanged\", {\n text: a,\n position: b,\n condensed: this.condensed\n }), this.updateTweetTitleThenButton();\n }, this.showPreview = function(a, b) {\n this.$node.addClass(\"has-preview\"), ((b.imageData && this.$node.addClass(\"has-thumbnail\"))), this.hasMedia = !0, this.detectUpdatedText(!0);\n }, this.hidePreview = function(a, b) {\n this.$node.removeClass(\"has-preview has-thumbnail\"), this.hasMedia = !1, this.detectUpdatedText(!0);\n }, this.enable = function() {\n this.select(\"tweetActionSelector\").removeClass(\"disabled\").attr(\"disabled\", !1);\n }, this.disable = function() {\n this.select(\"tweetActionSelector\").addClass(\"disabled\").attr(\"disabled\", !0);\n }, this.reset = function(a) {\n this.JSBNG__focus(), ((this.freezeTweetText || this.resetTweetText())), this.setCursorPosition(), this.trigger(\"ui{{type}}BoxHidePreview\"), this.$text.css(\"height\", \"\"), this.$node.JSBNG__find(\"input[type=hidden]\").val(\"\");\n }, this.val = function(a) {\n if (((a == undefined))) {\n return ((this.cleanedText || \"\"));\n }\n ;\n ;\n this.detectUpdatedText(!1, a);\n }, this.setCursorPosition = function(a) {\n ((((a === undefined)) && (a = this.attr.cursorPosition))), ((((a === undefined)) && (a = this.$text.val().length))), caret.setPosition(this.$text.get(0), a);\n }, this.JSBNG__focus = function() {\n ((this.hasFocus() || this.$text.JSBNG__focus()));\n }, this.expand = function() {\n this.$node.removeClass(\"condensed\"), ((this.condensed && (this.condensed = !1, this.trigger(\"uiTweetBoxExpanded\"), this.trigger(\"uiPrepareTweetBox\"))));\n }, this.forceExpand = function() {\n this.condensed = !0, this.expand(), this.saveEmptyUndoState();\n }, this.condense = function() {\n ((((!this.condensed && this.attr.condensable)) && (this.$node.addClass(\"condensed\"), this.condensed = !0, this.resetTweetText(), this.$text.JSBNG__blur(), this.trigger(\"uiTweetBoxCondensed\"))));\n }, this.condenseEmptyTweet = function() {\n this.detectUpdatedText();\n var a = this.val().trim();\n this.trigger(\"uiHideAutocomplete\"), ((((((((a == this.attr.defaultText.trim())) || ((a == \"\")))) && !this.hasMedia)) && this.condense()));\n }, this.condenseOnMouseDown = function(a) {\n ((this.condensed || (($.contains(this.node, a.target) ? this.blockCondense = !0 : this.condenseEmptyTweet()))));\n }, this.condenseOnBlur = function(a) {\n if (this.blockCondense) {\n this.blockCondense = !1;\n return;\n }\n ;\n ;\n this.condenseEmptyTweet();\n }, this.hasFocus = function() {\n return ((JSBNG__document.activeElement === this.$text[0]));\n }, this.prepareTweetBox = function() {\n this.reset();\n }, this.resetTweetText = function() {\n this.val(((this.condensed ? this.attr.condensedText : this.attr.defaultText)));\n }, this.getDefaultText = function() {\n return ((((typeof this.attr.defaultText != \"undefined\")) ? this.attr.defaultText : this.getAttrOrElse(\"data-default-text\", b)));\n }, this.getCondensedText = function() {\n return ((((typeof this.attr.condensedText != \"undefined\")) ? this.attr.condensedText : this.getAttrOrElse(\"data-condensed-text\", a)));\n }, this.changeTextAndPosition = function(a, b) {\n this.val(b.text), this.setCursorPosition(b.position);\n }, this.getAttrOrElse = function(a, b) {\n return ((((typeof this.$node.attr(a) == \"undefined\")) ? b : this.$node.attr(a)));\n }, this.toggleFocusStyle = function(a) {\n this.select(\"imageBtnSelector\").toggleClass(this.attr.focusClass);\n }, this.initTextNode = function() {\n this.$text = this.select(\"textSelector\");\n }, this.after(\"initialize\", function() {\n this.attr.defaultText = this.getDefaultText(), this.attr.condensedText = this.getCondensedText(), utils.push(this.attr, {\n eventData: {\n scribeContext: {\n element: \"tweet_box\"\n }\n }\n }, !1), this.initTextNode(), this.JSBNG__on(this.select(\"tweetActionSelector\"), \"click\", this.sendTweet), this.JSBNG__on(JSBNG__document, \"data{{type}}Success\", this.tweetSent), this.JSBNG__on(JSBNG__document, \"data{{type}}Error\", this.tweetError), this.JSBNG__on(this.$text, \"dragover\", this.JSBNG__focus), this.JSBNG__on(\"ui{{type}}BoxShowPreview\", this.showPreview), this.JSBNG__on(\"ui{{type}}BoxHidePreview\", this.hidePreview), this.JSBNG__on(\"ui{{type}}BoxReset\", this.reset), this.JSBNG__on(\"uiPrepare{{type}}Box\", this.prepareTweetBox), this.JSBNG__on(\"uiExpandFocus\", this.JSBNG__focus), this.JSBNG__on(\"uiChangeTextAndPosition\", this.changeTextAndPosition), this.JSBNG__on(\"focusin\", {\n fileInputSelector: this.toggleFocusStyle\n }), this.JSBNG__on(\"focusout\", {\n fileInputSelector: this.toggleFocusStyle\n }), Toolbar.attachTo(this.select(\"toolbarSelector\"), {\n buttonsSelector: \".file-input, .geo-picker-btn, .tweet-action\"\n }), ((this.attr.modal && (this.JSBNG__on(JSBNG__document, \"uiOverride{{type}}BoxOptions\", this.overrideTweetBoxOptions), this.JSBNG__on(\"uiDialogClosed\", this.resetOverriddenOptions)))), this.initDraftTweets();\n var a = this.hasFocus();\n ((this.attr.condensable && (this.JSBNG__on(this.$text, \"JSBNG__focus\", this.expand), this.JSBNG__on(this.$text, \"JSBNG__blur\", this.condenseOnBlur), this.JSBNG__on(JSBNG__document, \"mousedown\", this.condenseOnMouseDown), ((a || ((this.hasDraftTweet() ? this.forceExpand() : this.condense()))))))), ((a && (this.freezeTweetText = !0, this.forceExpand(), this.freezeTweetText = !1)));\n });\n };\n;\n var defineComponent = require(\"core/component\"), withCounter = require(\"app/ui/with_character_counter\"), withEventParams = require(\"app/utils/with_event_params\"), caret = require(\"app/utils/caret\"), utils = require(\"core/utils\"), _ = require(\"core/i18n\"), scribeItemTypes = require(\"app/utils/scribe_item_types\"), withDraftTweets = require(\"app/ui/with_draft_tweets\"), withTextPolling = require(\"app/ui/with_text_polling\"), withRTL = require(\"app/ui/with_rtl_tweet_box\"), Toolbar = require(\"app/ui/toolbar\"), withRichEditor = require(\"app/ui/with_rich_editor\"), withUploadPhotoAffordance = require(\"app/ui/with_upload_photo_affordance\"), withDroppableImage = require(\"app/ui/with_droppable_image\"), TweetBox = defineComponent(tweetBox, withCounter, withEventParams, withTextPolling, withRTL, withDraftTweets, withRichEditor, withDroppableImage, withUploadPhotoAffordance);\n TweetBox.caret = caret, module.exports = TweetBox;\n});\ndefine(\"app/utils/image_thumbnail\", [\"module\",\"require\",\"exports\",\"app/utils/image\",], function(module, require, exports) {\n var image = require(\"app/utils/image\"), imageThumbnail = {\n createThumbnail: function(a, b, c) {\n var d = new JSBNG__Image;\n d.JSBNG__onload = function() {\n c(a, d, d.height, d.width);\n }, d.src = image.getDataUri(b);\n },\n getThumbnailOffset: function(a, b, c) {\n var d;\n if (((((((b == a)) && ((b >= c)))) && ((a >= c))))) {\n return {\n position: \"absolute\",\n height: c,\n width: c,\n left: 0,\n JSBNG__top: 0\n };\n }\n ;\n ;\n if (((((a < c)) || ((b < c))))) {\n d = {\n position: \"absolute\",\n height: a,\n width: b,\n JSBNG__top: ((((c - a)) / 2)),\n left: ((((c - b)) / 2))\n };\n }\n else {\n if (((b > a))) {\n var e = ((((c / a)) * b));\n d = {\n position: \"absolute\",\n height: c,\n width: e,\n left: ((-((e - c)) / 2)),\n JSBNG__top: 0\n };\n }\n else if (((a > b))) {\n var f = ((((c / b)) * a));\n d = {\n position: \"absolute\",\n height: f,\n width: c,\n JSBNG__top: ((-((f - c)) / 2)),\n left: 0\n };\n }\n \n ;\n }\n ;\n ;\n return d;\n }\n };\n module.exports = imageThumbnail;\n});\ndefine(\"app/ui/tweet_box_thumbnails\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/utils/image_thumbnail\",], function(module, require, exports) {\n function tweetBoxThumbnails() {\n this.defaults = {\n thumbSelector: \".preview\",\n thumbImageSelector: \".preview img\",\n filenameSelector: \".preview .filename\",\n dismissSelector: \".dismiss\",\n tweetBoxSelector: \".tweet-form\"\n }, this.showPreview = function(a, b) {\n ((b.imageData && imageThumbnail.createThumbnail(b.fileName, b.imageData, this.gotThumbnail.bind(this)))), this.select(\"filenameSelector\").text(b.fileName);\n }, this.hidePreview = function() {\n this.select(\"filenameSelector\").empty(), this.select(\"thumbImageSelector\").remove();\n }, this.gotThumbnail = function(a, b, c, d) {\n var e = imageThumbnail.getThumbnailOffset(c, d, 48);\n $(b).css(e), this.select(\"thumbSelector\").append($(b));\n }, this.removeImage = function() {\n this.hidePreview(), this.trigger(\"uiTweetBoxRemoveImage\"), this.trigger(\"uiImagePickerRemove\");\n }, this.after(\"initialize\", function() {\n utils.push(this.attr, {\n eventData: {\n scribeContext: {\n element: \"image_picker\"\n }\n }\n }, !1);\n var a = this.$node.closest(this.attr.tweetBoxSelector);\n this.JSBNG__on(a, \"uiTweetBoxShowPreview\", this.showPreview), this.JSBNG__on(a, \"uiTweetBoxHidePreview\", this.hidePreview), this.JSBNG__on(this.select(\"dismissSelector\"), \"click\", this.removeImage);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), imageThumbnail = require(\"app/utils/image_thumbnail\"), TweetBoxThumbnails = defineComponent(tweetBoxThumbnails);\n module.exports = TweetBoxThumbnails;\n});\ndefine(\"app/utils/image_resize\", [\"module\",\"require\",\"exports\",\"app/utils/image\",], function(module, require, exports) {\n var image = require(\"app/utils/image\"), imageResize = {\n resize: function(a, b, c, d) {\n if (!image.hasCanvas()) {\n return d(a, b.split(\";base64,\")[1]);\n }\n ;\n ;\n var e = new JSBNG__Image, f = JSBNG__document.createElement(\"canvas\"), g = f.getContext(\"2d\");\n e.JSBNG__onload = function() {\n if (((((e.width == 0)) || ((e.height == 0))))) {\n d(a, !1);\n return;\n }\n ;\n ;\n if (((((e.width < c)) && ((e.height < c))))) {\n d(a, b.split(\";base64,\")[1]);\n return;\n }\n ;\n ;\n var h, i;\n ((((e.width > e.height)) ? (h = c, i = ((((e.height / e.width)) * c))) : (i = c, h = ((((e.width / e.height)) * c))))), f.width = h, f.height = i, g.drawImage(e, 0, 0, h, i);\n var j = f.toDataURL(\"image/jpeg\");\n d(a, j.split(\"data:image/jpeg;base64,\")[1]);\n }, e.JSBNG__onerror = function() {\n d(a, !1);\n }, e.src = b;\n }\n };\n module.exports = imageResize;\n});\ndefine(\"app/ui/with_image_selection\", [\"module\",\"require\",\"exports\",\"app/utils/image\",\"app/utils/image_resize\",], function(module, require, exports) {\n function withImageSelection() {\n this.resize = imageResize.resize.bind(image), this.getFileData = image.getFileData.bind(image), this.getFileHandle = image.getFileHandle.bind(image), this.getFileName = image.getFileName.bind(image), this.validateFileName = image.validateFileName.bind(image), this.validateImageSize = image.validateImageSize.bind(image), this.defaultAttrs({\n swfSelector: \".swf-container\",\n fileNameSelector: \"input.file-name\",\n fileDataSelector: \"input.file-data\",\n fileSelector: \"input.file-input\",\n buttonSelector: \".btn\",\n fileNameString: \"media_file_name\",\n fileDataString: \"media_data[]\",\n fileInputString: \"media[]\",\n uploadType: \"\",\n maxSizeInBytes: 3145728\n }), this.validateImage = function(a, b) {\n return ((this.validateFileName(a) ? ((((b && !this.validateImageSize(b, this.maxSizeInBytes))) ? (this.addFileError(\"tooLarge\"), !1) : !0)) : (this.addFileError(\"notImage\"), !1)));\n }, this.imageSelected = function(a) {\n var b = this.select(\"fileSelector\").get(0), c = this.getFileName(b.value), d = this.getFileHandle(b);\n if (!this.validateImage(c, d)) {\n return;\n }\n ;\n ;\n this.gotFileHandle(c, d);\n }, this.gotFileHandle = function(a, b) {\n ((((this.mode() == \"html5\")) ? this.getFileData(a, b, this.gotImageData.bind(this)) : this.gotFileInput(a)));\n }, this.reset = function() {\n this.resetInput(), this.select(\"fileDataSelector\").replaceWith(\"\\u003Cinput type=\\\"hidden\\\" name=\\\"media_data_empty\\\" class=\\\"file-data\\\"\\u003E\"), this.trigger(\"uiTweetBoxHidePreview\");\n }, this.gotFlashImageData = function(a, b, c) {\n if (!this.validateFileName(a)) {\n this.addFileError(\"notImage\");\n return;\n }\n ;\n ;\n this.showPreview({\n imageData: c,\n fileName: a\n }), this.trigger(\"uiImagePickerAdd\", {\n message: \"flash\"\n }), this.readyFileData(b), this.trigger(\"uiImagePickerFileReady\", {\n uploadType: this.attr.uploadType\n });\n }, this.gotFlashImageError = function(a, b) {\n this.addFileError(a);\n }, this.gotResizedImageData = function(a, b) {\n if (!b) {\n this.addFileError(\"notImage\");\n return;\n }\n ;\n ;\n this.showPreview({\n imageData: b,\n fileName: a\n }), this.trigger(\"uiImagePickerAdd\", {\n message: \"html5\"\n });\n var c = b.split(\",\");\n ((((c.length > 1)) && (b = c[1]))), this.readyFileData(b), this.trigger(\"uiImagePickerFileReady\", {\n uploadType: this.attr.uploadType\n });\n }, this.gotFileInput = function(a) {\n this.showPreview({\n fileName: a\n }), this.trigger(\"uiImagePickerAdd\", {\n message: \"html4\"\n }), this.readyFileInput(), this.trigger(\"uiImagePickerFileReady\", {\n uploadType: this.attr.uploadType\n });\n }, this.readyFileInput = function() {\n this.select(\"fileSelector\").attr(\"JSBNG__name\", this.attr.fileInputString);\n }, this.readyFileData = function(a) {\n this.select(\"fileDataSelector\").attr(\"JSBNG__name\", this.attr.fileDataString), this.select(\"fileDataSelector\").attr(\"value\", a), this.resetInput();\n }, this.resetInput = function() {\n this.select(\"fileSelector\").replaceWith(\"\\u003Cinput type=\\\"file\\\" name=\\\"media_empty\\\" class=\\\"file-input\\\" tabindex=\\\"-1\\\"\\u003E\");\n }, this.showPreview = function(a) {\n this.trigger(\"uiTweetBoxShowPreview\", a);\n }, this.setupFlash = function() {\n var a = ((\"swift_tweetbox_callback_\" + +(new JSBNG__Date))), b = ((\"swift_tweetbox_error_callback_\" + +(new JSBNG__Date)));\n window[a] = this.gotFlashImageData.bind(this), window[b] = this.gotFlashImageError.bind(this), JSBNG__setTimeout(function() {\n this.loadSwf(a, b);\n }.bind(this), 500);\n }, this.mode = function() {\n return ((this.attr.forceHTML5FileUploader && (this._mode = \"html5\"))), this._mode = ((this._mode || image.mode())), this._mode;\n }, this.setup = function() {\n ((((this.mode() == \"flash\")) && this.setupFlash())), this.select(\"fileNameSelector\").attr(\"JSBNG__name\", this.attr.fileNameString), this.select(\"fileDataSelector\").attr(\"JSBNG__name\", this.attr.fileDataString), this.select(\"fileSelector\").attr(\"JSBNG__name\", this.attr.fileInputString);\n }, this.after(\"initialize\", function() {\n this.setup(), this.JSBNG__on(\"change\", this.imageSelected);\n });\n };\n;\n var image = require(\"app/utils/image\"), imageResize = require(\"app/utils/image_resize\");\n module.exports = withImageSelection;\n});\ndefine(\"app/ui/image_selector\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/image\",\"app/ui/with_image_selection\",\"core/i18n\",], function(module, require, exports) {\n function imageSelector() {\n this.defaults = {\n swfHeight: 30,\n swfWidth: 42,\n tweetBoxSelector: \".tweet-form\",\n photoButtonSelector: \".file-input\"\n }, this.resetAndHidePreview = function() {\n this.reset(), this.trigger(\"uiTweetBoxHidePreview\");\n }, this.disable = function() {\n this.$node.addClass(\"disabled\"), this.select(\"buttonSelector\").attr(\"disabled\", !0).addClass(\"active\");\n }, this.enable = function() {\n this.$node.removeClass(\"disabled\"), this.select(\"buttonSelector\").attr(\"disabled\", !1).removeClass(\"active\");\n }, this.gotImageData = function(a, b) {\n this.resize(a, b, 2048, this.gotResizedImageData.bind(this));\n }, this.interceptGotImageData = function(a, b) {\n this.gotImageData(b.JSBNG__name, b.contents);\n }, this.addFileError = function(a) {\n ((((a == \"tooLarge\")) ? this.trigger(\"uiShowError\", {\n message: _(\"The file you selected is greater than the 3MB limit.\")\n }) : ((((((a == \"notImage\")) || ((a == \"ioError\")))) && this.trigger(\"uiShowError\", {\n message: _(\"You did not select an image.\")\n }))))), this.trigger(\"uiImagePickerError\", {\n message: a\n }), this.reset();\n }, this.loadSwf = function(a, b) {\n image.loadPhotoHelperSwf(this.select(\"swfSelector\"), a, b, this.attr.swfHeight, this.attr.swfWidth);\n }, this.imageSelectorClicked = function(a, b) {\n this.trigger(\"uiImagePickerClick\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(this.attr.photoButtonSelector, \"click\", this.imageSelectorClicked);\n var a = this.$node.closest(this.attr.tweetBoxSelector);\n this.JSBNG__on(a, \"uiTweetBoxHidePreview\", this.enable), this.JSBNG__on(a, \"uiTweetBoxShowPreview\", this.disable), this.JSBNG__on(a, \"uiTweetBoxRemoveImage\", this.resetAndHidePreview), this.JSBNG__on(a, \"uiGotImageData\", this.interceptGotImageData);\n });\n };\n;\n var defineComponent = require(\"core/component\"), image = require(\"app/utils/image\"), withImageSelection = require(\"app/ui/with_image_selection\"), _ = require(\"core/i18n\"), ImageSelector = defineComponent(imageSelector, withImageSelection);\n module.exports = ImageSelector;\n});\ndefine(\"app/ui/typeahead/accounts_renderer\", [\"module\",\"require\",\"exports\",\"core/i18n\",\"core/component\",], function(module, require, exports) {\n function accountsRenderer() {\n this.defaultAttrs({\n accountsListSelector: \".js-typeahead-accounts\",\n accountsItemSelector: \".typeahead-account-item\",\n accountsShortcutSelector: \".typeahead-accounts-shortcut\",\n accountsShortcutShow: !1,\n datasources: [\"accounts\",],\n socialContextMapping: {\n FOLLOWING: 1,\n FOLLOWS: 8\n }\n }), this.renderAccounts = function(a, b) {\n this.$accountsList.JSBNG__find(this.attr.accountsItemSelector).remove();\n var c = [];\n this.attr.datasources.forEach(function(a) {\n c = c.concat(((b.suggestions[a] || [])));\n });\n if (!c.length) {\n this.clearAccounts();\n return;\n }\n ;\n ;\n this.updateShortcut(b.query), c.forEach(function(a) {\n var b = this.$accountItemTemplate.clone(!1);\n b.attr(\"data-user-id\", a.id), b.attr(\"data-user-screenname\", a.screen_name), b.data(\"item\", a);\n var c = b.JSBNG__find(\"a\");\n c.attr(\"href\", ((\"/\" + a.screen_name))), c.attr(\"data-search-query\", a.id), c.JSBNG__find(\".avatar\").attr(\"src\", this.getAvatar(a)), c.JSBNG__find(\".fullname\").text(a.JSBNG__name), c.JSBNG__find(\".username b\").text(a.screen_name), ((a.verified && c.JSBNG__find(\".js-verified\").removeClass(\"hidden\")));\n if (this.attr.deciders.showDebugInfo) {\n var d = !!a.rounded_graph_weight;\n c.attr(\"title\", ((((((d ? \"local\" : \"remote\")) + \" user, weight/score: \")) + ((d ? a.rounded_graph_weight : a.rounded_score)))));\n }\n ;\n ;\n if (((((a.social_proof !== 0)) && this.attr.deciders.showSocialContext))) {\n var e = c.JSBNG__find(\".typeahead-social-context\"), f = this.getSocialContext(a);\n ((f && (e.text(f), c.addClass(\"has-social-context\"))));\n }\n ;\n ;\n b.insertBefore(this.$accountsShortcut);\n }, this), this.$accountsList.addClass(\"has-results\"), this.$accountsList.show();\n }, this.getAvatar = function(a) {\n var b = a.profile_image_url_https, c = this.attr.deciders.showSocialContext;\n return ((b && (b = b.replace(/^https?:/, \"\"), b = ((c ? b : b.replace(/_normal(\\..*)?$/i, \"_mini$1\")))))), b;\n }, this.isMutualFollow = function(a) {\n return ((this.currentUserFollowsAccount(a) && this.accountFollowsCurrentUser(a)));\n }, this.currentUserFollowsAccount = function(a) {\n var b = this.attr.socialContextMapping.FOLLOWING;\n return !!((a & b));\n }, this.accountFollowsCurrentUser = function(a) {\n var b = this.attr.socialContextMapping.FOLLOWS;\n return !!((a & b));\n }, this.getSocialContext = function(a) {\n var b = a.social_proof;\n return ((this.isMutualFollow(b) ? _(\"You follow each other\") : ((this.currentUserFollowsAccount(b) ? _(\"Following\") : ((this.accountFollowsCurrentUser(b) ? _(\"Follows you\") : ((a.first_connecting_user_name ? ((((a.connecting_user_count > 1)) ? _(\"Followed by {{user}} and {{number}} others\", {\n user: a.first_connecting_user_name,\n number: a.connecting_user_count\n }) : _(\"Followed by {{user}}\", {\n user: a.first_connecting_user_name\n }))) : !1))))))));\n }, this.updateShortcut = function(a) {\n this.$accountsShortcut.toggle(this.attr.accountsShortcutShow);\n var b = this.$accountsShortcut.JSBNG__find(\"a\");\n b.attr(\"href\", ((\"/search/users?q=\" + encodeURIComponent(a)))), b.attr(\"data-search-query\", a), a = $(\"\\u003Cdiv/\\u003E\").text(a).html(), b.html(_(\"Search all people for \\u003Cstrong\\u003E{{query}}\\u003C/strong\\u003E\", {\n query: a\n }));\n }, this.clearAccounts = function() {\n this.$accountsList.removeClass(\"has-results\"), this.$accountsList.hide();\n }, this.after(\"initialize\", function() {\n this.$accountsList = this.select(\"accountsListSelector\"), this.$accountsShortcut = this.select(\"accountsShortcutSelector\"), this.$accountItemTemplate = this.select(\"accountsItemSelector\").clone(!1), this.$accountsList.hide(), this.JSBNG__on(\"uiTypeaheadRenderResults\", this.renderAccounts);\n });\n };\n;\n var _ = require(\"core/i18n\"), defineComponent = require(\"core/component\");\n module.exports = defineComponent(accountsRenderer);\n});\ndefine(\"app/ui/typeahead/saved_searches_renderer\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function savedSearchesRenderer() {\n this.defaultAttrs({\n savedSearchesListSelector: \".saved-searches-list\",\n savedSearchesSelector: \".saved-searches-list\",\n savedSearchesItemSelector: \".typeahead-saved-search-item\",\n savedSearchesTitleSelector: \".saved-searches-title\",\n datasources: [\"savedSearches\",]\n }), this.renderSavedSearches = function(a, b) {\n this.$savedSearchesList.empty();\n var c = [];\n this.attr.datasources.forEach(function(a) {\n c = c.concat(((b.suggestions[a] || [])));\n }), c.forEach(function(a) {\n var b = this.$savedSearchItemTemplate.clone(!1);\n b.data(\"item\", a);\n var c = b.JSBNG__find(\"a\");\n c.attr(\"href\", a.saved_search_path), c.attr(\"data-search-query\", a.query), c.attr(\"data-query-source\", a.search_query_source), c.append($(\"\\u003Cspan\\u003E\").text(a.JSBNG__name)), this.$savedSearchesList.append(b);\n }, this), ((((b.query === \"\")) ? this.$savedSearchesTitle.show() : this.$savedSearchesTitle.hide()));\n }, this.after(\"initialize\", function() {\n this.$savedSearchItemTemplate = this.select(\"savedSearchesItemSelector\").clone(!1), this.$savedSearchesList = this.select(\"savedSearchesSelector\"), this.$savedSearchesTitle = this.select(\"savedSearchesTitleSelector\"), this.JSBNG__on(\"uiTypeaheadRenderResults\", this.renderSavedSearches);\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(savedSearchesRenderer);\n});\ndefine(\"app/ui/typeahead/recent_searches_renderer\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function recentSearchesRenderer() {\n this.defaultAttrs({\n recentSearchesSelector: \".recent-searches-list\",\n recentSearchesItemSelector: \".typeahead-recent-search-item\",\n recentSearchesDismissSelector: \".typeahead-recent-search-item .close\",\n recentSearchesBlockSelector: \".typeahead-recent-searches\",\n recentSearchesTitleSelector: \".recent-searches-title\",\n recentSearchesClearAllSelector: \".clear-recent-searches\",\n datasources: [\"recentSearches\",]\n }), this.deleteRecentSearch = function(a, b) {\n var c = $(a.target).closest(this.attr.recentSearchesItemSelector), d = c.JSBNG__find(\"a.js-nav\"), e = d.data(\"search-query\");\n ((((this.$recentSearchesList.children().length == 1)) && (this.$recentSearchesTitle.hide(), this.$recentSearchesBlock.removeClass(\"has-results\"), this.$recentSearchesClearAll.hide()))), c.remove(), this.trigger(\"uiTypeaheadDeleteRecentSearch\", {\n query: e\n });\n }, this.deleteAllRecentSearches = function(a, b) {\n this.$recentSearchesList.empty(), this.$recentSearchesTitle.hide(), this.$recentSearchesBlock.removeClass(\"has-results\"), this.$recentSearchesClearAll.hide(), this.trigger(\"uiTypeaheadDeleteRecentSearch\", {\n deleteAll: !0\n });\n }, this.renderRecentSearches = function(a, b) {\n this.$recentSearchesList.empty();\n var c = this.attr.datasources.map(function(a) {\n return ((b.suggestions[a] || []));\n }).reduce(function(a, b) {\n return a.concat(b);\n });\n c.forEach(function(a) {\n var b = this.$recentSearchItemTemplate.clone(!1);\n b.data(\"item\", a);\n var c = b.JSBNG__find(\"a\");\n c.attr(\"href\", a.recent_search_path), c.attr(\"data-search-query\", a.JSBNG__name), c.attr(\"data-query-source\", a.search_query_source), c.append($(\"\\u003Cspan\\u003E\").text(a.JSBNG__name)), this.$recentSearchesList.append(b);\n }, this);\n var d = ((c.length !== 0)), e = ((b.query === \"\")), f = ((e && d));\n this.$recentSearchesBlock.toggleClass(\"has-results\", ((!e && d))), this.$recentSearchesTitle.toggle(f), this.$recentSearchesClearAll.toggle(f);\n }, this.after(\"initialize\", function() {\n this.$recentSearchItemTemplate = this.select(\"recentSearchesItemSelector\").clone(!1), this.$recentSearchesList = this.select(\"recentSearchesSelector\"), this.$recentSearchesBlock = this.select(\"recentSearchesBlockSelector\"), this.$recentSearchesTitle = this.select(\"recentSearchesTitleSelector\"), this.$recentSearchesClearAll = this.select(\"recentSearchesClearAllSelector\"), this.JSBNG__on(\"click\", {\n recentSearchesDismissSelector: this.deleteRecentSearch,\n recentSearchesClearAllSelector: this.deleteAllRecentSearches\n }), this.JSBNG__on(\"uiTypeaheadRenderResults\", this.renderRecentSearches), this.JSBNG__on(\"uiTypeaheadDeleteAllRecentSearches\", this.deleteAllRecentSearches);\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(recentSearchesRenderer);\n});\ndefine(\"app/ui/typeahead/topics_renderer\", [\"module\",\"require\",\"exports\",\"core/i18n\",\"core/component\",], function(module, require, exports) {\n function topicsRenderer() {\n this.defaultAttrs({\n includeSearchGlass: !0,\n parseHashtags: !1,\n topicsListSelector: \".topics-list\",\n topicsItemSelector: \".typeahead-topic-item\",\n datasources: [\"topics\",],\n emptySocialContextClass: \"empty-topics-social-context\"\n }), this.renderTopics = function(a, b) {\n this.$topicsList.empty();\n var c = [];\n this.attr.datasources.forEach(function(a) {\n c = c.concat(((b.suggestions[a] || [])));\n });\n if (!c.length) {\n this.clearTopics();\n return;\n }\n ;\n ;\n c.forEach(function(a) {\n var b = this.$topicsItemTemplate.clone(!1);\n b.data(\"item\", a);\n var c = b.JSBNG__find(\"a\"), d = ((a.topic || a.hashtag));\n c.attr(\"href\", ((((\"/search?q=\" + encodeURIComponent(d))) + \"&src=tyah\"))), c.attr(\"data-search-query\", d);\n var e = d.charAt(0), f = ((this.attr.parseHashtags && ((((e == \"#\")) || ((e == \"$\")))))), g = ((a.JSBNG__location && this.attr.deciders.showTypeaheadTopicSocialContext));\n if (f) {\n var h = $(\"\\u003Cspan\\u003E\").text(e);\n h.append($(\"\\u003Cstrong\\u003E\").text(d.slice(1))), c.append(h);\n }\n else if (g) {\n var i = c.JSBNG__find(\".typeahead-social-context\");\n i.text(this.getSocialContext(a)), i.show(), c.children().last().before($(\"\\u003Cspan\\u003E\").text(d));\n }\n else c.append($(\"\\u003Cspan\\u003E\").text(d)), ((this.attr.deciders.showTypeaheadTopicSocialContext && c.addClass(this.attr.emptySocialContextClass)));\n \n ;\n ;\n b.appendTo(this.$topicsList);\n }, this), this.$topicsList.addClass(\"has-results\"), this.$topicsList.show();\n }, this.getSocialContext = function(a) {\n return _(\"Trending in {{location}}\", {\n JSBNG__location: a.JSBNG__location\n });\n }, this.clearTopics = function(a) {\n this.$topicsList.removeClass(\"has-results\"), this.$topicsList.hide();\n }, this.after(\"initialize\", function() {\n this.$topicsItemTemplate = this.select(\"topicsItemSelector\").clone(!1), ((this.attr.includeSearchGlass || this.$topicsItemTemplate.JSBNG__find(\"i.generic-search\").remove())), this.$topicsList = this.select(\"topicsListSelector\"), this.$topicsList.hide(), this.JSBNG__on(\"uiTypeaheadRenderResults\", this.renderTopics);\n });\n };\n;\n var _ = require(\"core/i18n\"), defineComponent = require(\"core/component\");\n module.exports = defineComponent(topicsRenderer);\n});\ndefine(\"app/ui/typeahead/trend_locations_renderer\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/i18n\",], function(module, require, exports) {\n function trendLocationsRenderer() {\n this.defaultAttrs({\n typeaheadItemClass: \"typeahead-item\",\n trendLocationsListSelector: \".typeahead-trend-locations-list\",\n trendLocationsItemSelector: \".typeahead-trend-locations-item\",\n datasources: [\"trendLocations\",]\n }), this.renderTrendLocations = function(a, b) {\n this.$trendLocationsList.empty();\n var c = [];\n this.attr.datasources.forEach(function(a) {\n c = c.concat(((b.suggestions[a] || [])));\n }), c.forEach(function(a) {\n var b = this.$trendLocationItemTemplate.clone(!1), c = b.JSBNG__find(\"a\");\n b.data(\"item\", a), c.attr(\"data-search-query\", a.JSBNG__name), c.attr(\"href\", \"#\"), c.append(this.getLocationHtml(a)), ((((a.woeid == -1)) && (b.removeClass(this.attr.typeaheadItemClass), c.attr(\"data-search-query\", \"\")))), b.appendTo(this.$trendLocationsList);\n }, this);\n }, this.getLocationHtml = function(a) {\n var b = $(\"\\u003Cspan\\u003E\");\n switch (a.placeTypeCode) {\n case placeTypeMapping.WORLDWIDE:\n \n case placeTypeMapping.NOT_FOUND:\n b.text(a.JSBNG__name);\n break;\n case placeTypeMapping.COUNTRY:\n b.html(((((a.JSBNG__name + \" \")) + _(\"(All cities)\"))));\n break;\n default:\n b.text([a.JSBNG__name,a.countryName,].join(\", \"));\n };\n ;\n return b;\n }, this.after(\"initialize\", function() {\n this.$trendLocationItemTemplate = this.select(\"trendLocationsItemSelector\").clone(!1), this.$trendLocationsList = this.select(\"trendLocationsListSelector\"), this.JSBNG__on(\"uiTypeaheadRenderResults\", this.renderTrendLocations);\n });\n };\n;\n var defineComponent = require(\"core/component\"), _ = require(\"core/i18n\");\n module.exports = defineComponent(trendLocationsRenderer);\n var placeTypeMapping = {\n WORLDWIDE: 19,\n COUNTRY: 12,\n CITY: 7,\n NOT_FOUND: -1\n };\n});\ndefine(\"app/ui/typeahead/context_helpers_renderer\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function contextHelpersRenderer() {\n this.defaultAttrs({\n contextListSelector: \".typeahead-context-list\",\n contextItemSelector: \".typeahead-context-item\",\n datasources: [\"contextHelpers\",]\n }), this.renderContexts = function(a, b) {\n this.$contextItemsList.empty();\n var c = this.attr.datasources.map(function(a) {\n return ((b.suggestions[a] || []));\n }).reduce(function(a, b) {\n return a.concat(b);\n });\n if (((c.length == 0))) {\n this.clearList();\n return;\n }\n ;\n ;\n c.forEach(function(a) {\n var b = this.$contextItemTemplate.clone(!1);\n b.data(\"item\", a);\n var c = b.JSBNG__find(\"a\"), d = ((((\"/search?q=\" + encodeURIComponent(((a.rewrittenQuery || a.query))))) + \"&src=tyah\"));\n ((a.mode && (d += ((\"&mode=\" + a.mode))))), c.attr(\"href\", d), c.attr(\"data-search-query\", a.query);\n var e = a.text.replace(\"{{strong_query}}\", \"\\u003Cstrong\\u003E\\u003C/strong\\u003E\");\n c.html(e), c.JSBNG__find(\"strong\").text(a.query), this.$contextItemsList.append(b);\n }, this), this.$contextItemsList.addClass(\"has-results\"), this.$contextItemsList.show();\n }, this.clearList = function(a) {\n this.$contextItemsList.removeClass(\"has-results\"), this.$contextItemsList.hide();\n }, this.after(\"initialize\", function() {\n this.$contextItemsList = this.select(\"contextListSelector\"), this.$contextItemTemplate = this.select(\"contextItemSelector\").clone(!1), this.JSBNG__on(\"uiTypeaheadRenderResults\", this.renderContexts);\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(contextHelpersRenderer);\n});\ndefine(\"app/utils/rtl_text\", [\"module\",\"require\",\"exports\",\"lib/twitter-text\",], function(module, require, exports) {\n var TwitterText = require(\"lib/twitter-text\"), RTLText = function() {\n function q(a) {\n try {\n return ((JSBNG__document.activeElement === a));\n } catch (b) {\n return !1;\n };\n ;\n };\n ;\n function r(a) {\n if (!q(a)) {\n return 0;\n }\n ;\n ;\n var b;\n if (((typeof a.selectionStart == \"number\"))) {\n return a.selectionStart;\n }\n ;\n ;\n if (JSBNG__document.selection) {\n a.JSBNG__focus(), b = JSBNG__document.selection.createRange(), b.moveStart(\"character\", -a.value.length);\n var c = b.text.length;\n return c;\n }\n ;\n ;\n };\n ;\n function s(a, b) {\n if (!q(a)) {\n return;\n }\n ;\n ;\n if (((typeof a.selectionStart == \"number\"))) {\n a.selectionStart = b, a.selectionEnd = b;\n }\n else {\n if (JSBNG__document.selection) {\n var c = a.createTextRange();\n c.collapse(!0), c.moveEnd(\"character\", b), c.moveStart(\"character\", b), c.select();\n }\n ;\n }\n ;\n ;\n };\n ;\n function t(a, b, c) {\n var d = 0, e = \"\", f = b(a);\n for (var g = 0; ((g < f.length)); g++) {\n var h = f[g], i = \"\";\n ((h.screenName && (i = \"screenName\"))), ((h.hashtag && (i = \"hashtag\"))), ((h.url && (i = \"url\"))), ((h.cashtag && (i = \"cashtag\")));\n var j = {\n entityText: a.slice(h.indices[0], h.indices[1]),\n entityType: i\n };\n e += ((a.slice(d, h.indices[0]) + c(j))), d = h.indices[1];\n };\n ;\n return ((e + a.slice(d, a.length)));\n };\n ;\n function u(a) {\n var b = a.match(c), d = a;\n if (((b || ((l === \"rtl\"))))) {\n d = t(d, TwitterText.extractEntitiesWithIndices, function(a) {\n if (((a.entityType === \"screenName\"))) {\n return ((((e + a.entityText)) + f));\n }\n ;\n ;\n if (((a.entityType === \"hashtag\"))) {\n return ((a.entityText.charAt(1).match(c) ? a.entityText : ((e + a.entityText))));\n }\n ;\n ;\n if (((a.entityType === \"url\"))) {\n return ((a.entityText + e));\n }\n ;\n ;\n if (((a.entityType === \"cashtag\"))) {\n return ((e + a.entityText));\n }\n ;\n ;\n });\n }\n ;\n ;\n return d;\n };\n ;\n function v(a) {\n var b, c = ((a.target ? a.target : a.srcElement)), e = ((a.which ? a.which : a.keyCode));\n if (((e === g.BACKSPACE))) b = -1;\n else {\n if (((e !== g.DELETE))) {\n return;\n }\n ;\n ;\n b = 0;\n }\n ;\n ;\n var f = r(c), h = c.value, i = 0, j;\n do j = ((h.charAt(((f + b))) || \"\")), ((j && (f += b, i++, h = ((h.slice(0, f) + h.slice(((f + 1)), h.length)))))); while (j.match(d));\n ((((i > 1)) && (c.value = h, s(c, f), ((a.preventDefault ? a.preventDefault() : a.returnValue = !1)))));\n };\n ;\n function w(a) {\n return a.replace(d, \"\");\n };\n ;\n function x(a) {\n var d = a.match(c);\n a = a.replace(k, \"\");\n var e = 0, f = a.replace(m, \"\"), g = l;\n if (((!f || !f.replace(/#/g, \"\")))) {\n return ((((g === \"rtl\")) ? !0 : !1));\n }\n ;\n ;\n if (!d) {\n return !1;\n }\n ;\n ;\n if (a) {\n var h = TwitterText.extractMentionsWithIndices(a), i = h.length, j;\n for (j = 0; ((j < i)); j++) {\n e += ((h[j].screenName.length + 1));\n ;\n };\n ;\n var n = TwitterText.extractUrlsWithIndices(a), o = n.length;\n for (j = 0; ((j < o)); j++) {\n e += ((n[j].url.length + 2));\n ;\n };\n ;\n }\n ;\n ;\n var p = ((f.length - e));\n return ((((p > 0)) && ((((d.length / p)) > b))));\n };\n ;\n function y(a) {\n var b = ((a.target || a.srcElement));\n ((((((a.type !== \"keydown\")) || ((((((((a.keyCode !== 91)) && ((a.keyCode !== 16)))) && ((a.keyCode !== 88)))) && ((a.keyCode !== 17)))))) ? ((((((a.type === \"keyup\")) && ((((((((a.keyCode === 91)) || ((a.keyCode === 16)))) || ((a.keyCode === 88)))) || ((a.keyCode === 17)))))) && (o[String(a.keyCode)] = !1))) : o[String(a.keyCode)] = !0)), ((((((((((!p && o[91])) || ((p && o[17])))) && o[16])) && o[88])) && (n = !0, ((((b.dir === \"rtl\")) ? z(\"ltr\", b) : z(\"rtl\", b))), o = {\n 91: !1,\n 16: !1,\n 88: !1,\n 17: !1\n })));\n };\n ;\n function z(a, b) {\n b.setAttribute(\"dir\", a), b.style.direction = a, b.style.textAlign = ((((a === \"rtl\")) ? \"right\" : \"left\"));\n };\n ;\n \"use strict\";\n var a = {\n }, b = 92640, c = /[\\u0590-\\u083F]|[\\u08A0-\\u08FF]|[\\uFB1D-\\uFDFF]|[\\uFE70-\\uFEFF]/gm, d = /\\u200e|\\u200f/gm, e = \"\\u200e\", f = \"\\u200f\", g = {\n BACKSPACE: 8,\n DELETE: 46\n }, h = 0, i = 20, j = !1, k = \"\", l = \"\", m = /^\\s+|\\s+$/g, n = !1, o = {\n 91: !1,\n 16: !1,\n 88: !1,\n 17: !1\n }, p = ((JSBNG__navigator.userAgent.indexOf(\"Mac\") === -1));\n return a.onTextChange = function(b) {\n var c = ((b || window.JSBNG__event));\n y(b), ((((c.type === \"keydown\")) && v(c))), a.setText(((c.target || c.srcElement)));\n }, a.setText = function(a) {\n ((l || ((a.style.direction ? l = a.style.direction : ((a.dir ? l = a.dir : ((JSBNG__document.body.style.direction ? l = JSBNG__document.body.style.direction : l = JSBNG__document.body.dir)))))))), ((((arguments.length === 2)) && (l = a.ownerDocument.documentElement.className, k = arguments[1])));\n var b = a.value;\n if (!b) {\n return;\n }\n ;\n ;\n var c = w(b);\n j = x(c);\n var d = u(c), e = ((j ? \"rtl\" : \"ltr\"));\n ((((d !== b)) && (a.value = d, s(a, ((((r(a) + d.length)) - c.length)))))), ((n || z(e, a)));\n }, a.textLength = function(a) {\n var b = w(a), c = TwitterText.extractUrls(b), d = ((b.length - c.join(\"\").length)), e = c.length;\n for (var f = 0; ((f < e)); f++) {\n d += i, ((/^https:/.test(c[f]) && (d += 1)));\n ;\n };\n ;\n return h = d;\n }, a.cleanText = function(a) {\n return w(a);\n }, a.addRTLMarkers = function(a) {\n return u(a);\n }, a.shouldBeRTL = function(a) {\n return x(a);\n }, a;\n }();\n ((((((typeof module != \"undefined\")) && module.exports)) && (module.exports = RTLText)));\n});\ndefine(\"app/ui/typeahead/typeahead_dropdown\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/ui/typeahead/accounts_renderer\",\"app/ui/typeahead/saved_searches_renderer\",\"app/ui/typeahead/recent_searches_renderer\",\"app/ui/typeahead/topics_renderer\",\"app/ui/typeahead/trend_locations_renderer\",\"app/ui/typeahead/context_helpers_renderer\",\"app/utils/rtl_text\",], function(module, require, exports) {\n function typeaheadDropdown() {\n this.defaultAttrs({\n inputSelector: \"#search-query\",\n dropdownSelector: \".dropdown-menu.typeahead\",\n itemsSelector: \".typeahead-items li\",\n blockLinkActions: !1,\n deciders: {\n showDebugInfo: !1,\n showSocialContext: !1,\n showTypeaheadTopicSocialContext: !1\n },\n autocompleteAccounts: !0,\n datasourceRenders: [[\"contextHelpers\",[\"contextHelpers\",],],[\"savedSearches\",[\"savedSearches\",],],[\"recentSearches\",[\"recentSearches\",],],[\"topics\",[\"topics\",],],[\"accounts\",[\"accounts\",],],],\n templateContainerSelector: \".dropdown-inner\",\n recentSearchesListSelector: \".typeahead-recent-searches\",\n savedSearchesListSelector: \".typeahead-saved-searches\",\n topicsListSelector: \".typeahead-topics\",\n accountsListSelector: \".js-typeahead-accounts\",\n trendLocationsListSelector: \".typeahead-trend-locations-list\",\n contextListSelector: \".typeahead-context-list\"\n }), this.mouseOver = function(a, b) {\n this.select(\"itemsSelector\").removeClass(\"selected\"), $(b.el).addClass(\"selected\");\n }, this.moveSelection = function(a) {\n var b = this.select(\"itemsSelector\").filter(\":visible\"), c = b.filter(\".selected\");\n c.removeClass(\"selected\");\n var d = ((b.index(c) + a));\n d = ((((((d + 1)) % ((b.length + 1)))) - 1));\n if (((d === -1))) {\n this.trigger(\"uiTypeaheadSelectionCleared\");\n return;\n }\n ;\n ;\n ((((d < -1)) && (d = ((b.length - 1))))), b.eq(d).addClass(\"selected\");\n }, this.moveSelectionUp = function(a) {\n this.moveSelection(-1);\n }, this.moveSelectionDown = function(a) {\n this.moveSelection(1);\n }, this.dropdownIsOpen = function() {\n if (((((window.DEBUG && window.DEBUG.enabled)) && ((this.openState !== this.$dropdown.is(\":visible\")))))) {\n throw new Error(\"Dropdown markup and internal openState variable are out of sync.\");\n }\n ;\n ;\n return this.openState;\n }, this.show = function() {\n this.$dropdown.show(), this.openState = !0, this.trigger(\"uiTypeaheadResultsShown\");\n }, this.hide = function(a) {\n if (this.mouseIsOverDropdown) {\n return;\n }\n ;\n ;\n if (!this.dropdownIsOpen()) {\n return;\n }\n ;\n ;\n this.$dropdown.hide(), this.openState = !1, this.trigger(\"uiTypeaheadResultsHidden\");\n }, this.hideAndManageEsc = function(a) {\n if (!this.dropdownIsOpen()) {\n return;\n }\n ;\n ;\n this.forceHide(), a.preventDefault(), a.stopPropagation();\n }, this.forceHide = function() {\n this.clearMouseTracking(), this.hide();\n }, this.inputValueUpdated = function(a, b) {\n this.lastQuery = b.value, this.trigger(\"uiNeedsTypeaheadSuggestions\", {\n datasources: this.datasources,\n query: b.value,\n tweetContext: b.tweetContext,\n id: this.getDropdownId()\n });\n }, this.getDropdownId = function() {\n return ((this.dropdownId || (this.dropdownId = ((\"swift_typeahead_dropdown_\" + Math.floor(((Math.JSBNG__random() * 1000000)))))))), this.dropdownId;\n }, this.checkIfSelectionFromSearchInput = function(a) {\n return a.closest(\"form\").JSBNG__find(\"input\").hasClass(\"search-input\");\n }, this.triggerSelectionEvent = function(a, b) {\n ((this.attr.blockLinkActions && a.preventDefault()));\n var c = this.select(\"itemsSelector\"), d = c.filter(\".selected\").first(), e = d.JSBNG__find(\"a\"), f = d.index(), g = this.lastQuery, h = e.attr(\"data-search-query\");\n d.removeClass(\"selected\");\n if (((!g && !h))) {\n return;\n }\n ;\n ;\n var i = this.getItemData(d);\n this.trigger(\"uiTypeaheadItemSelected\", {\n isSearchInput: this.checkIfSelectionFromSearchInput(e),\n index: f,\n source: e.data(\"ds\"),\n query: h,\n input: g,\n display: ((d.data(\"user-screenname\") || h)),\n href: e.attr(\"href\"),\n isClick: ((a.originalEvent ? ((a.originalEvent.type === \"click\")) : !1)),\n item: i\n }), this.forceHide();\n }, this.getItemData = function(a) {\n return a.data(\"item\");\n }, this.submitQuery = function(a, b) {\n var c = this.select(\"itemsSelector\").filter(\".selected\").first();\n if (c.length) {\n this.triggerSelectionEvent(a, b);\n return;\n }\n ;\n ;\n var d = this.$input.val();\n if (((d.trim() === \"\"))) {\n return;\n }\n ;\n ;\n this.trigger(\"uiTypeaheadSubmitQuery\", {\n query: RTLText.cleanText(d)\n }), this.forceHide();\n }, this.getSelectedCompletion = function() {\n var a = this.select(\"itemsSelector\").filter(\".selected\").first();\n ((((!a.length && this.dropdownIsOpen())) && (a = this.select(\"itemsSelector\").filter(\".typeahead-item\").first())));\n if (!a.length) {\n return;\n }\n ;\n ;\n var b = a.JSBNG__find(\"a\"), c = b.data(\"search-query\"), d = this.select(\"itemsSelector\"), e = d.index(a), f = this.lastQuery;\n if (((((((b.data(\"ds\") == \"account\")) || ((b.data(\"ds\") == \"context_helper\")))) && !this.attr.autocompleteAccounts))) {\n return;\n }\n ;\n ;\n var g = this.getItemData(a);\n this.trigger(\"uiTypeaheadItemPossiblyComplete\", {\n value: c,\n source: b.data(\"ds\"),\n index: e,\n query: c,\n item: g,\n display: ((a.data(\"user-screenname\") || c)),\n input: f,\n href: ((b.attr(\"href\") || \"\"))\n });\n }, this.updateDropdown = function(a, b) {\n var c = this.$input.is(JSBNG__document.activeElement);\n if (((((((b.id !== this.getDropdownId())) || ((b.query !== this.lastQuery)))) || !c))) {\n return;\n }\n ;\n ;\n var d = this.select(\"itemsSelector\").filter(\".selected\").first(), e = d.JSBNG__find(\"a\").data(\"ds\"), f = d.JSBNG__find(\"a\").data(\"search-query\");\n this.trigger(\"uiTypeaheadRenderResults\", b);\n if (((e && f))) {\n var g = this.select(\"itemsSelector\").JSBNG__find(((((((((\"[data-ds='\" + e)) + \"'][data-search-query='\")) + f)) + \"']\")));\n g.closest(\"li\").addClass(\"selected\");\n }\n ;\n ;\n var h = this.datasources.some(function(a) {\n return ((b.suggestions[a] && b.suggestions[a].length));\n }), i = !!b.query;\n ((((h && c)) ? (this.show(), this.trigger(\"uiTypeaheadSetPreventDefault\", {\n preventDefault: i,\n key: 9\n }), this.trigger(\"uiTypeaheadResultsShown\")) : (this.forceHide(), this.trigger(\"uiTypeaheadSetPreventDefault\", {\n preventDefault: !1,\n key: 9\n }), this.trigger(\"uiTypeaheadResultsHidden\"))));\n }, this.trackMouse = function(a, b) {\n this.mouseIsOverDropdown = !0;\n }, this.clearMouseTracking = function(a, b) {\n this.mouseIsOverDropdown = !1;\n }, this.resetTemplates = function() {\n this.$templateContainer.empty(), this.$templateContainer.append(this.$savedSearchesTemplate), this.$templateContainer.append(this.$recentSearchesTemplate), this.$templateContainer.append(this.$topicsTemplate), this.$templateContainer.append(this.$accountsTemplate), this.$templateContainer.append(this.$trendLocationsTemplate), this.$templateContainer.append(this.$contextHelperTemplate);\n }, this.addRenderer = function(a, b, c) {\n c = utils.merge(c, {\n datasources: b\n });\n var d = ((\"block\" + this.blockCount++));\n ((((a == \"accounts\")) ? (this.$accountsTemplate.clone().addClass(d).appendTo(this.$templateContainer), AccountsRenderer.attachTo(this.$node, utils.merge(c, {\n accountsListSelector: ((((this.attr.accountsListSelector + \".\")) + d))\n }))) : ((((a == \"topics\")) ? (this.$topicsTemplate.clone().addClass(d).appendTo(this.$templateContainer), TopicsRenderer.attachTo(this.$node, utils.merge(c, {\n topicsListSelector: ((((this.attr.topicsListSelector + \".\")) + d))\n }))) : ((((a == \"savedSearches\")) ? (this.$savedSearchesTemplate.clone().addClass(d).appendTo(this.$templateContainer), SavedSearchesRenderer.attachTo(this.$node, utils.merge(c, {\n savedSearchesListSelector: ((((this.attr.savedSearchesListSelector + \".\")) + d))\n }))) : ((((a == \"recentSearches\")) ? (this.$recentSearchesTemplate.clone().addClass(d).appendTo(this.$templateContainer), RecentSearchesRenderer.attachTo(this.$node, utils.merge(c, {\n recentSearchesListSelector: ((((this.attr.recentSearchesListSelector + \".\")) + d))\n }))) : ((((a == \"trendLocations\")) ? (this.$trendLocationsTemplate.clone().addClass(d).appendTo(this.$templateContainer), TrendLocationsRenderer.attachTo(this.$node, utils.merge(c, {\n trendLocationsListSelector: ((((this.attr.trendLocationsListSelector + \".\")) + d))\n }))) : ((((a == \"contextHelpers\")) && (this.$contextHelperTemplate.clone().addClass(d).appendTo(this.$templateContainer), ContextHelpersRenderer.attachTo(this.$node, utils.merge(c, {\n contextListSelector: ((((this.attr.contextListSelector + \".\")) + d))\n })))))))))))))));\n }, this.after(\"initialize\", function(a) {\n this.openState = !1, this.$input = this.select(\"inputSelector\"), this.$dropdown = this.select(\"dropdownSelector\"), this.$templateContainer = this.select(\"templateContainerSelector\"), this.$accountsTemplate = this.select(\"accountsListSelector\").clone(!1), this.$savedSearchesTemplate = this.select(\"savedSearchesListSelector\").clone(!1), this.$recentSearchesTemplate = this.select(\"recentSearchesListSelector\").clone(!1), this.$topicsTemplate = this.select(\"topicsListSelector\").clone(!1), this.$trendLocationsTemplate = this.select(\"trendLocationsListSelector\").clone(!1), this.$contextHelperTemplate = this.select(\"contextListSelector\").clone(!1), this.$templateContainer.empty(), this.datasources = [], this.attr.datasourceRenders.forEach(function(a) {\n this.datasources = this.datasources.concat(a[1]);\n }, this), this.datasources = utils.uniqueArray(this.datasources), this.blockCount = 0, this.attr.datasourceRenders.forEach(function(b) {\n this.addRenderer(b[0], b[1], a);\n }, this), this.JSBNG__on(this.$input, \"JSBNG__blur\", this.hide), this.JSBNG__on(this.$input, \"uiTypeaheadInputSubmit\", this.submitQuery), this.JSBNG__on(this.$input, \"uiTypeaheadInputChanged\", this.inputValueUpdated), this.JSBNG__on(this.$input, \"uiTypeaheadInputMoveUp\", this.moveSelectionUp), this.JSBNG__on(this.$input, \"uiTypeaheadInputMoveDown\", this.moveSelectionDown), this.JSBNG__on(this.$input, \"uiTypeaheadInputAutocomplete\", this.getSelectedCompletion), this.JSBNG__on(this.$input, \"uiTypeaheadInputTab\", this.clearMouseTracking), this.JSBNG__on(this.$input, \"uiShortcutEsc\", this.hideAndManageEsc), this.JSBNG__on(this.$dropdown, \"mouseenter\", this.trackMouse), this.JSBNG__on(this.$dropdown, \"mouseleave\", this.clearMouseTracking), this.JSBNG__on(JSBNG__document, \"dataTypeaheadSuggestionsResults\", this.updateDropdown), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.forceHide), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.resetTemplates), this.JSBNG__on(\"mouseover\", {\n itemsSelector: this.mouseOver\n }), this.JSBNG__on(\"click\", {\n itemsSelector: this.triggerSelectionEvent\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), AccountsRenderer = require(\"app/ui/typeahead/accounts_renderer\"), SavedSearchesRenderer = require(\"app/ui/typeahead/saved_searches_renderer\"), RecentSearchesRenderer = require(\"app/ui/typeahead/recent_searches_renderer\"), TopicsRenderer = require(\"app/ui/typeahead/topics_renderer\"), TrendLocationsRenderer = require(\"app/ui/typeahead/trend_locations_renderer\"), ContextHelpersRenderer = require(\"app/ui/typeahead/context_helpers_renderer\"), RTLText = require(\"app/utils/rtl_text\");\n module.exports = defineComponent(typeaheadDropdown);\n});\ndefine(\"app/utils/event_support\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n var supportedEvents = {\n }, checkEventsSupport = function(a, b) {\n return a.forEach(function(a) {\n checkEventSupported(a, b[a]);\n }, this), supportedEvents;\n }, checkEventSupported = function(a, b) {\n var c = JSBNG__document.createElement(((b || \"div\"))), d = ((\"JSBNG__on\" + a)), e = ((d in c));\n return ((e || (c.setAttribute(d, \"return;\"), e = ((typeof c[d] == \"function\"))))), c = null, supportedEvents[a] = e, e;\n }, eventSupport = {\n checkEvents: function(a, b) {\n checkEventsSupport(a, ((b || {\n })));\n },\n browserSupports: function(a, b) {\n return ((((supportedEvents[a] === undefined)) && checkEventSupported(a, b))), supportedEvents[a];\n }\n };\n module.exports = eventSupport;\n});\nprovide(\"app/utils/string\", function(a) {\n function b(a) {\n var b = a.charCodeAt(0);\n return ((((b <= 32)) ? !0 : !1));\n };\n;\n function c(a, b) {\n if (((a == \"\"))) {\n return \"\";\n }\n ;\n ;\n var d = a.split(\"\"), e = d.pop();\n return a = d.join(\"\"), ((((e == \"0\")) ? ((c(a, !0) + \"9\")) : (e -= 1, ((((((a == \"\")) && ((e == 0)))) ? ((b ? \"\" : \"0\")) : ((a + e)))))));\n };\n;\n function d(a) {\n var b = a.charCodeAt(0);\n return ((((((b >= 48)) && ((b <= 57)))) ? !0 : !1));\n };\n;\n function e(a, b) {\n var c = 0, e = 0, f = 0, g, h;\n for (; ; e++, f++) {\n g = a.charAt(e), h = b.charAt(f);\n if (((!d(g) && !d(h)))) {\n return c;\n }\n ;\n ;\n if (!d(g)) {\n return -1;\n }\n ;\n ;\n if (!d(h)) {\n return 1;\n }\n ;\n ;\n ((((g < h)) ? ((((c === 0)) && (c = -1))) : ((((((g > h)) && ((c === 0)))) && (c = 1)))));\n };\n ;\n };\n;\n var f = {\n compare: function(a, c) {\n var f = 0, g = 0, h, i, j, k, l;\n if (((a === c))) {\n return 0;\n }\n ;\n ;\n ((((typeof a == \"number\")) && (a = a.toString()))), ((((typeof c == \"number\")) && (c = c.toString())));\n for (; ; ) {\n if (((f > 100))) {\n return;\n }\n ;\n ;\n h = i = 0, j = a.charAt(f), k = c.charAt(g);\n while (((b(j) || ((j == \"0\"))))) {\n ((((j == \"0\")) ? h++ : h = 0)), j = a.charAt(++f);\n ;\n };\n ;\n while (((b(k) || ((k == \"0\"))))) {\n ((((k == \"0\")) ? i++ : i = 0)), k = c.charAt(++g);\n ;\n };\n ;\n if (((((d(j) && d(k))) && (((l = e(a.substring(f), c.substring(g))) != 0))))) {\n return l;\n }\n ;\n ;\n if (((((j == 0)) && ((k == 0))))) {\n return ((h - i));\n }\n ;\n ;\n if (((j < k))) {\n return -1;\n }\n ;\n ;\n if (((j > k))) {\n return 1;\n }\n ;\n ;\n ++f, ++g;\n };\n ;\n },\n wordAtPosition: function(a, b, c) {\n c = ((c || /[^\\s]+/g));\n var d = null;\n return a.replace(c, function() {\n var a = arguments[0], c = arguments[((arguments.length - 2))];\n ((((((c <= b)) && ((((c + a.length)) >= b)))) && (d = a)));\n }), d;\n },\n parseBigInt: function(a) {\n return ((isNaN(Number(a)) ? NaN : a.toString()));\n },\n subtractOne: c\n };\n a(f);\n});\ndefine(\"app/ui/typeahead/typeahead_input\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/caret\",\"app/utils/event_support\",\"app/utils/string\",\"lib/twitter-text\",\"app/utils/rtl_text\",], function(module, require, exports) {\n function typeaheadInput() {\n this.defaultAttrs({\n inputSelector: \"#search-query\",\n buttonSelector: \".nav-search\",\n completeAllEntities: !1,\n includeTweetContext: !1,\n tweetContextEnabled: !1\n }), this.getDefaultKeycodes = function() {\n var a = {\n 13: {\n JSBNG__name: \"ENTER\",\n JSBNG__event: \"uiTypeaheadInputSubmit\",\n JSBNG__on: \"keypress\",\n preventDefault: !0,\n enabled: !0\n },\n 9: {\n JSBNG__name: \"TAB\",\n JSBNG__event: \"uiTypeaheadInputTab\",\n JSBNG__on: \"keydown\",\n preventDefault: !0,\n canCauseComplete: !0,\n enabled: !0\n },\n 37: {\n JSBNG__name: \"LEFT\",\n JSBNG__event: \"uiTypeaheadInputLeft\",\n JSBNG__on: \"keydown\",\n canCauseComplete: !0,\n enabled: !0\n },\n 39: {\n JSBNG__name: \"RIGHT\",\n JSBNG__event: \"uiTypeaheadInputRight\",\n JSBNG__on: \"keydown\",\n canCauseComplete: !0,\n enabled: !0\n },\n 38: {\n JSBNG__name: \"UP\",\n JSBNG__event: \"uiTypeaheadInputMoveUp\",\n JSBNG__on: \"keydown\",\n preventDefault: !0,\n enabled: !0\n },\n 40: {\n JSBNG__name: \"DOWN\",\n JSBNG__event: \"uiTypeaheadInputMoveDown\",\n JSBNG__on: \"keydown\",\n preventDefault: !0,\n enabled: !0\n }\n };\n return a;\n }, this.setPreventKeyDefault = function(a, b) {\n this.KEY_CODE_MAP[b.key].preventDefault = b.preventDefault;\n }, this.toggleTextareaActions = function(a) {\n this.KEY_CODE_MAP[13].enabled = a, this.KEY_CODE_MAP[38].enabled = a, this.KEY_CODE_MAP[40].enabled = a;\n }, this.enableTextareaActionWatching = function() {\n this.toggleTextareaActions(!0);\n }, this.disableTextareaActionWatching = function() {\n this.toggleTextareaActions(!1);\n }, this.clearCurrentQuery = function(a) {\n this.currentQuery = null;\n }, this.focusInput = function(a) {\n this.$input.JSBNG__focus();\n }, this.click = function(a) {\n this.updateCaretPosition();\n }, this.updateCaretPosition = function() {\n ((this.richTextareaMode || this.trigger(this.$input, \"uiTextChanged\", {\n text: this.$input.val(),\n position: caret.getPosition(this.$input[0])\n })));\n }, this.modifierKeyPressed = function(a) {\n var b = this.KEY_CODE_MAP[((a.which || a.keyCode))], c = ((((((a.type == \"keydown\")) && ((a.which == 16)))) || ((((a.type == \"keyup\")) && ((a.which == 16))))));\n if (((b && b.enabled))) {\n if (((a.type !== b.JSBNG__on))) {\n return;\n }\n ;\n ;\n if (((((b.JSBNG__name == \"TAB\")) && a.shiftKey))) {\n return;\n }\n ;\n ;\n if (((this.releaseTabKey && ((b.JSBNG__name == \"TAB\"))))) {\n return;\n }\n ;\n ;\n ((b.preventDefault && a.preventDefault())), this.trigger(this.$input, b.JSBNG__event), ((((b.canCauseComplete && this.isValidCompletionAction(b.JSBNG__event))) && (((this.textareaMode || (this.releaseTabKey = !0))), this.trigger(this.$input, \"uiTypeaheadInputAutocomplete\")))), this.updateCaretPosition();\n }\n else {\n if (((a.keyCode == 27))) {\n return;\n }\n ;\n ;\n ((c || (this.releaseTabKey = !1))), ((this.supportsInputEvent || this.handleInputChange(a)));\n }\n ;\n ;\n }, this.handleInputChange = function(a) {\n ((this.richTextareaMode || (RTLText.onTextChange(a), this.trigger(this.$input, \"uiTextChanged\", {\n text: this.$input.val(),\n position: caret.getPosition(this.$input[0])\n }))));\n }, this.getCurrentWord = function() {\n var a;\n if (this.textareaMode) {\n var b = twitterText.extractEntitiesWithIndices(this.text);\n b.forEach(function(b) {\n ((((((((((b.screenName && !b.listSlug)) || ((this.attr.completeAllEntities && ((b.cashtag || b.hashtag)))))) && ((this.position > b.indices[0])))) && ((this.position <= b.indices[1])))) && (a = this.text.slice(b.indices[0], b.indices[1]))));\n }, this);\n }\n else a = ((((this.text.trim() == \"\")) ? \"\" : this.text));\n ;\n ;\n return a;\n }, this.completeInput = function(a, b) {\n var c = ((b.value || b.query)), d = ((((c !== this.currentQuery)) && ((((b.source != \"account\")) || ((b.item.screen_name !== this.currentQuery))))));\n if (!d) {\n return;\n }\n ;\n ;\n var e = c;\n ((((b.source == \"account\")) && (e = ((((this.textareaMode ? \"@\" : \"\")) + b.item.screen_name)), this.currentQuery = b.item.screen_name)));\n if (this.textareaMode) {\n var f = this.replaceWordAtPosition(this.text, this.position, b.input, ((e + \" \")));\n ((((!this.richTextareaMode || ((a.type == \"uiTypeaheadItemSelected\")))) && this.$input.JSBNG__focus())), this.$input.trigger(\"uiChangeTextAndPosition\", f);\n }\n else this.$input.val(e), ((((a.type != \"uiTypeaheadItemSelected\")) && (this.$input.JSBNG__focus(), this.setQuery(e))));\n ;\n ;\n b.fromSelectionEvent = ((a.type == \"uiTypeaheadItemSelected\")), this.trigger(this.$input, \"uiTypeaheadItemComplete\", b);\n }, this.replaceWordAtPosition = function(a, b, c, d) {\n var e = null;\n c = c.replace(UNSAFE_REGEX_CHARS, function(a) {\n return ((\"\\\\\" + a));\n });\n var a = a.replace(new RegExp(((c + \"\\\\s?\")), \"g\"), function() {\n var a = arguments[0], c = arguments[((arguments.length - 2))];\n return ((((((c <= b)) && ((((c + a.length)) >= b)))) ? (e = ((c + d.length)), d) : a));\n });\n return {\n text: a,\n position: e\n };\n }, this.isValidCompletionAction = function(a) {\n var b = ((this.$input.attr(\"dir\") === \"rtl\"));\n return ((((!this.textareaMode || ((((a !== \"uiTypeaheadInputRight\")) && ((a !== \"uiTypeaheadInputLeft\")))))) ? ((((b && ((a === \"uiTypeaheadInputRight\")))) ? !1 : ((((!b && ((a === \"uiTypeaheadInputLeft\")))) ? !1 : ((((!this.text || ((((this.position != this.text.length)) && ((((a === \"uiTypeaheadInputRight\")) || ((b && ((a === \"uiTypeaheadInputLeft\")))))))))) ? !1 : !0)))))) : !1));\n }, this.setQuery = function(a) {\n var b;\n a = ((a ? RTLText.cleanText(a) : \"\"));\n if (((((this.currentQuery == null)) || ((this.currentQuery !== a))))) {\n this.currentQuery = a, b = ((((a.length > 0)) ? 0 : -1)), this.$button.attr(\"tabIndex\", b);\n var c = ((((this.attr.tweetContextEnabled && this.attr.includeTweetContext)) ? this.text : undefined));\n this.trigger(this.$input, \"uiTypeaheadInputChanged\", {\n value: this.currentQuery,\n tweetContext: c\n });\n }\n ;\n ;\n }, this.setRTLMarkers = function() {\n RTLText.setText(this.$input.get(0));\n }, this.clearInput = function() {\n this.$input.val(\"\").JSBNG__blur(), this.$button.attr(\"tabIndex\", -1), this.releaseTabKey = !1;\n }, this.saveTextAndPosition = function(a, b) {\n if (((b.position == Number.MAX_VALUE))) {\n return;\n }\n ;\n ;\n this.text = b.text, this.position = b.position;\n var c = this.getCurrentWord();\n this.setQuery(c);\n }, this.after(\"initialize\", function() {\n this.$input = this.select(\"inputSelector\"), this.textareaMode = !this.$input.is(\"input\"), this.richTextareaMode = this.$input.is(\".rich-editor\"), this.$button = this.select(\"buttonSelector\"), this.KEY_CODE_MAP = this.getDefaultKeycodes(), ((this.richTextareaMode && this.disableTextareaActionWatching())), this.supportsInputEvent = eventSupport.browserSupports(\"input\", \"input\"), this.$button.attr(\"tabIndex\", -1), this.JSBNG__on(this.$input, \"keyup keydown keypress paste\", this.modifierKeyPressed), this.JSBNG__on(this.$input, \"input\", this.handleInputChange), this.JSBNG__on(\"uiTypeaheadDeleteRecentSearch\", this.focusInput), this.JSBNG__on(this.$input, \"JSBNG__focus\", this.updateCaretPosition), this.JSBNG__on(\"uiTypeaheadSelectionCleared\", this.updateCaretPosition), ((this.$input.is(\":focus\") && this.updateCaretPosition())), this.JSBNG__on(this.$input, \"JSBNG__blur\", this.clearCurrentQuery), ((this.textareaMode && (this.JSBNG__on(this.$input, \"click\", this.click), this.JSBNG__on(\"uiTypeaheadResultsShown\", this.enableTextareaActionWatching), this.JSBNG__on(\"uiTypeaheadResultsHidden\", this.disableTextareaActionWatching)))), this.JSBNG__on(\"uiTextChanged\", this.saveTextAndPosition), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.clearInput), this.JSBNG__on(\"uiTypeaheadSetPreventDefault\", this.setPreventKeyDefault), this.JSBNG__on(JSBNG__document, \"uiSwiftLoaded uiPageChanged\", this.setRTLMarkers), this.JSBNG__on(\"uiTypeaheadItemPossiblyComplete uiTypeaheadItemSelected\", this.completeInput);\n });\n };\n;\n var defineComponent = require(\"core/component\"), caret = require(\"app/utils/caret\"), eventSupport = require(\"app/utils/event_support\"), stringUtils = require(\"app/utils/string\"), twitterText = require(\"lib/twitter-text\"), RTLText = require(\"app/utils/rtl_text\");\n module.exports = defineComponent(typeaheadInput);\n var UNSAFE_REGEX_CHARS = /[[\\]\\\\*?(){}.+$^]/g;\n});\ndefine(\"app/ui/with_click_outside\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withClickOutside() {\n this.onClickOutside = function(a, b) {\n b = b.bind(this), this.clickOutsideHandler = function(c, d) {\n var e = !0;\n a.each(function() {\n if ($(c.target).closest(this).length) {\n return e = !1, !1;\n }\n ;\n ;\n }), ((e && b(c, d)));\n }, $(JSBNG__document).JSBNG__on(\"click\", this.clickOutsideHandler);\n }, this.offClickOutside = function() {\n ((this.clickOutsideHandler && ($(JSBNG__document).off(\"click\", this.clickOutsideHandler), this.clickOutsideHandler = null)));\n }, this.before(\"teardown\", function() {\n this.offClickOutside();\n });\n };\n;\n module.exports = withClickOutside;\n});\ndefine(\"app/ui/geo_picker\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/i18n\",\"app/ui/with_click_outside\",\"core/utils\",], function(module, require, exports) {\n function geoPicker() {\n this.defaultAttrs({\n buttonSelector: \"button.geo-picker-btn\",\n placeIdSelector: \"input[name=place_id]\",\n statusSelector: \"span.geo-status\",\n dropdownContainerSelector: \"span.dropdown-container\",\n dropdownSelector: \"ul.dropdown-menu\",\n dropdownDisabledSelector: \"#geo-disabled-dropdown\",\n enableButtonSelector: \"button.geo-turn-on\",\n notNowButtonSelector: \"button.geo-not-now\",\n dropdownEnabledSelector: \"#geo-enabled-dropdown\",\n querySelector: \"li.geo-query-location input\",\n geoSearchSelector: \"li.geo-query-location i\",\n dropdownStatusSelector: \"li.geo-dropdown-status\",\n searchResultsSelector: \"li.geo-search-result\",\n placeResultsSelector: \"li.geo-place-result\",\n changePlaceSelector: \"li[data-place-id]\",\n turnOffButtonSelector: \"li.geo-turn-off-item\",\n focusableSelector: \"li.geo-focusable\",\n firstFocusableSelector: \"li.geo-focusable:first\",\n focusedSelector: \"li.geo-focused\"\n }), this.selectGeoAction = function(a) {\n if (this.dropdownIsOpen()) {\n this.hideDropdownAndRestoreFocus();\n return;\n }\n ;\n ;\n switch (this.geoState.state) {\n case \"disabled\":\n \n case \"enableIsUnavailable\":\n this.trigger(\"uiGeoPickerOffer\");\n break;\n case \"locateIsUnavailable\":\n \n case \"enabledTurnedOn\":\n this.requestGeoState();\n break;\n case \"enabledTurnedOff\":\n this.turnOn();\n break;\n case \"changing\":\n \n case \"locating\":\n \n case \"located\":\n \n case \"locationUnknown\":\n \n case \"locateIsUnavailable\":\n this.trigger(\"uiGeoPickerOpen\");\n };\n ;\n }, this.dropdownIsOpen = function() {\n return this.select(\"dropdownSelector\").is(\":visible\");\n }, this.hideDropdown = function() {\n this.offClickOutside(), this.select(\"dropdownSelector\").hide(), this.select(\"buttonSelector\").removeClass(\"open\");\n }, this.captureActiveEl = function() {\n this.activeEl = JSBNG__document.activeElement;\n }, this.hideDropdownAndRestoreFocus = function() {\n this.hideDropdown(), ((this.activeEl && (this.activeEl.JSBNG__focus(), this.activeEl = null)));\n }, this.openDropdown = function(a, b) {\n var c, d;\n ((((a.type == \"uiGeoPickerOpen\")) ? (c = this.attr.dropdownEnabledSelector, d = 1) : (c = this.attr.dropdownDisabledSelector, d = 0))), this.captureActiveEl(), ((((d != this.dropdownState)) && (this.select(\"dropdownContainerSelector\").html($(c).html()), this.dropdownState = d)));\n var e = this.select(\"dropdownSelector\");\n this.showGeoState(), this.onClickOutside(e.add(this.select(\"buttonSelector\")), this.hideDropdown), this.lastQuery = \"\", this.geoQueryFieldChanged = !1, e.show();\n var f = this.select(\"enableButtonSelector\");\n ((f.length || (f = this.select(\"querySelector\")))), this.select(\"buttonSelector\").addClass(\"open\"), f.JSBNG__focus();\n }, this.enable = function() {\n this.hideDropdownAndRestoreFocus(), this.trigger(\"uiGeoPickerEnable\");\n }, this.setFocus = function(a) {\n var b = $(a.target);\n this.select(\"focusedSelector\").not(b).removeClass(\"geo-focused\"), b.addClass(\"geo-focused\");\n }, this.clearFocus = function(a) {\n $(a.target).removeClass(\"geo-focused\");\n }, this.turnOn = function() {\n this.trigger(\"uiGeoPickerTurnOn\");\n }, this.turnOff = function() {\n this.hideDropdownAndRestoreFocus(), this.trigger(\"uiGeoPickerTurnOff\");\n }, this.changePlace = function(a) {\n var b = $(a.target), c = b.attr(\"data-place-id\");\n this.hideDropdownAndRestoreFocus();\n if (((!c || ((c === this.lastPlaceId))))) {\n return;\n }\n ;\n ;\n var d = {\n placeId: c,\n scribeData: {\n item_names: [c,]\n }\n };\n ((this.lastPlaceId && d.scribeData.item_names.push(this.lastPlaceId))), ((((b.hasClass(\"geo-search-result\") && this.lastQueryData)) && (d.scribeData.query = this.lastQueryData.query))), this.trigger(\"uiGeoPickerChange\", d);\n }, this.updateState = function(a, b) {\n this.geoState = b, this.showGeoState();\n }, this.showGeoState = function() {\n var a = \"\", b = \"\", c = !1, d = \"\", e = this.geoState;\n switch (e.state) {\n case \"enabling\":\n \n case \"locating\":\n a = _(\"Getting location...\");\n break;\n case \"enableIsUnavailable\":\n \n case \"locateIsUnavailable\":\n a = _(\"Location service unavailable\");\n break;\n case \"changing\":\n a = _(\"Changing location...\");\n break;\n case \"locationUnknown\":\n a = _(\"Unknown location\");\n break;\n case \"located\":\n a = e.place_name, b = e.place_id, d = e.places_html, c = !0;\n };\n ;\n this.$node.toggleClass(\"active\", c), this.select(\"statusSelector\").text(a), this.select(\"buttonSelector\").attr(\"title\", ((a || _(\"Add location\")))), this.select(\"placeResultsSelector\").add(this.select(\"searchResultsSelector\")).remove(), this.select(\"dropdownStatusSelector\").text(a).toggle(!c).after(d), this.select(\"placeIdSelector\").val(b), this.lastPlaceId = b;\n }, this.requestGeoState = function() {\n this.trigger(\"uiRequestGeoState\");\n }, this.queryKeyDown = function(a) {\n switch (a.which) {\n case 38:\n a.preventDefault(), this.moveFocus(-1);\n break;\n case 40:\n a.preventDefault(), this.moveFocus(1);\n break;\n case 13:\n a.preventDefault();\n var b = this.select(\"focusedSelector\");\n if (b.length) {\n a.stopPropagation(), b.trigger(\"uiGeoPickerSelect\");\n return;\n }\n ;\n ;\n this.searchExactMatch();\n };\n ;\n this.searchAutocomplete();\n }, this.onEsc = function(a) {\n if (!this.dropdownIsOpen()) {\n return;\n }\n ;\n ;\n a.preventDefault(), a.stopPropagation(), this.hideDropdownAndRestoreFocus();\n }, this.searchIfQueryChanged = function(a) {\n var b = ((this.select(\"querySelector\").val() || \"\"));\n if (((a && ((this.lastQuery === b))))) {\n return;\n }\n ;\n ;\n this.lastIsPrefix = a, this.lastQuery = b, this.select(\"dropdownStatusSelector\").text(_(\"Searching places...\")).show(), ((this.geoQueryFieldChanged || (this.geoQueryFieldChanged = !0, this.trigger(\"uiGeoPickerInteraction\")))), this.trigger(\"uiGeoPickerSearch\", {\n placeId: this.lastPlaceId,\n query: b,\n isPrefix: a\n });\n }, this.searchExactMatch = function() {\n this.searchIfQueryChanged(!1);\n }, this.searchAutocomplete = function() {\n JSBNG__setTimeout(function() {\n this.searchIfQueryChanged(!0);\n }.bind(this), 0);\n }, this.moveFocus = function(a) {\n var b = this.select(\"focusedSelector\"), c = this.select(\"focusableSelector\"), d = ((c.index(b) + a)), e = ((c.length - 1));\n ((((d < 0)) ? d = e : ((((d > e)) && (d = 0))))), b.removeClass(\"geo-focused\"), c.eq(d).addClass(\"geo-focused\");\n }, this.searchResults = function(a, b) {\n var c = b.sourceEventData;\n if (((((((!c || ((c.placeId !== this.lastPlaceId)))) || ((c.query !== this.select(\"querySelector\").val())))) || ((c.isPrefix && !this.lastIsPrefix))))) {\n return;\n }\n ;\n ;\n this.lastQueryData = c, this.select(\"searchResultsSelector\").remove(), this.select(\"dropdownStatusSelector\").hide().after(b.html);\n }, this.searchUnavailable = function(a, b) {\n this.select(\"dropdownStatusSelector\").text(_(\"Location service unavailable\")).show();\n }, this.preventFocusLoss = function(a) {\n var b;\n (((($.browser.msie && ((parseInt($.browser.version, 10) < 9)))) ? (b = $(JSBNG__document.activeElement), ((b.is(this.select(\"buttonSelector\")) ? this.captureActiveEl() : b.one(\"beforedeactivate\", function(a) {\n a.preventDefault();\n })))) : a.preventDefault()));\n }, this.after(\"initialize\", function() {\n utils.push(this.attr, {\n eventData: {\n scribeContext: {\n element: \"geo_picker\"\n }\n }\n }, !1), this.geoState = {\n }, this.JSBNG__on(this.attr.parent, \"uiPrepareTweetBox\", this.requestGeoState), this.JSBNG__on(JSBNG__document, \"dataGeoState\", this.updateState), this.JSBNG__on(JSBNG__document, \"dataGeoSearchResults\", this.searchResults), this.JSBNG__on(JSBNG__document, \"dataGeoSearchResultsUnavailable\", this.searchUnavailable), this.JSBNG__on(\"mousedown\", {\n buttonSelector: this.preventFocusLoss\n }), this.JSBNG__on(\"click\", {\n buttonSelector: this.selectGeoAction,\n enableButtonSelector: this.enable,\n notNowButtonSelector: this.hideDropdownAndRestoreFocus,\n turnOffButtonSelector: this.turnOff,\n geoSearchSelector: this.searchExactMatch,\n changePlaceSelector: this.changePlace\n }), this.JSBNG__on(\"uiGeoPickerSelect\", {\n turnOffButtonSelector: this.turnOff,\n changePlaceSelector: this.changePlace\n }), this.JSBNG__on(\"mouseover\", {\n focusableSelector: this.setFocus\n }), this.JSBNG__on(\"mouseout\", {\n focusableSelector: this.clearFocus\n }), this.JSBNG__on(\"keydown\", {\n querySelector: this.queryKeyDown\n }), this.JSBNG__on(\"uiShortcutEsc\", this.onEsc), this.JSBNG__on(\"change paste\", {\n querySelector: this.searchAutocomplete\n }), this.JSBNG__on(\"uiGeoPickerOpen uiGeoPickerOffer\", this.openDropdown);\n }), this.before(\"teardown\", function() {\n this.hideDropdown();\n });\n };\n;\n var defineComponent = require(\"core/component\"), _ = require(\"core/i18n\"), withClickOutside = require(\"app/ui/with_click_outside\"), utils = require(\"core/utils\");\n module.exports = defineComponent(geoPicker, withClickOutside);\n});\ndefine(\"app/ui/tweet_box_manager\", [\"module\",\"require\",\"exports\",\"core/utils\",\"app/ui/tweet_box\",\"app/ui/tweet_box_thumbnails\",\"app/ui/image_selector\",\"app/ui/typeahead/typeahead_dropdown\",\"app/ui/typeahead/typeahead_input\",\"app/ui/geo_picker\",\"core/utils\",\"core/component\",], function(module, require, exports) {\n function tweetBoxManager() {\n this.createTweetBoxAtTarget = function(a, b) {\n this.createTweetBox(a.target, b);\n }, this.createTweetBox = function(a, b) {\n var c = $(a);\n if (!((((b.eventData || {\n })).scribeContext || {\n })).component) {\n throw new Error(\"Please specify scribing component for tweet box.\");\n }\n ;\n ;\n ((((c.JSBNG__find(\".geo-picker\").length > 0)) && GeoPicker.attachTo(c.JSBNG__find(\".geo-picker\"), utils.merge(b, {\n parent: c\n }, !0)))), TweetBox.attachTo(c, utils.merge({\n eventParams: {\n type: \"Tweet\"\n }\n }, b)), ((((c.JSBNG__find(\".photo-selector\").length > 0)) && (TweetBoxThumbnails.attachTo(c.JSBNG__find(\".thumbnail-container\"), utils.merge(b, !0)), ImageSelector.attachTo(c.JSBNG__find(\".photo-selector\"), utils.merge(b, !0))))), TypeaheadInput.attachTo(c, utils.merge(b, {\n inputSelector: \"div.rich-editor, textarea.tweet-box\",\n completeAllEntities: ((this.attr.typeaheadData.hashtags && this.attr.typeaheadData.hashtags.enabled)),\n includeTweetContext: !0\n })), TypeaheadDropdown.attachTo(c, utils.merge(b, {\n inputSelector: \"div.rich-editor, textarea.tweet-box\",\n blockLinkActions: !0,\n includeSearchGlass: !1,\n parseHashtags: !0,\n datasourceRenders: [[\"accounts\",[\"accounts\",],],[\"topics\",[\"hashtags\",],],],\n deciders: utils.merge(this.attr.typeaheadData, {\n showSocialContext: this.attr.typeaheadData.showTweetComposeAccountSocialContext\n })\n }));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiInitTweetbox\", this.createTweetBoxAtTarget);\n });\n };\n;\n var utils = require(\"core/utils\"), TweetBox = require(\"app/ui/tweet_box\"), TweetBoxThumbnails = require(\"app/ui/tweet_box_thumbnails\"), ImageSelector = require(\"app/ui/image_selector\"), TypeaheadDropdown = require(\"app/ui/typeahead/typeahead_dropdown\"), TypeaheadInput = require(\"app/ui/typeahead/typeahead_input\"), GeoPicker = require(\"app/ui/geo_picker\"), utils = require(\"core/utils\"), defineComponent = require(\"core/component\"), TweetBoxManager = defineComponent(tweetBoxManager);\n module.exports = TweetBoxManager;\n});\ndefine(\"app/boot/tweet_boxes\", [\"module\",\"require\",\"exports\",\"app/data/geo\",\"app/data/tweet\",\"app/ui/tweet_dialog\",\"app/ui/new_tweet_button\",\"app/data/tweet_box_scribe\",\"app/ui/tweet_box_manager\",], function(module, require, exports) {\n function initialize(a) {\n GeoData.attachTo(JSBNG__document, a), TweetData.attachTo(JSBNG__document, a), TweetDialog.attachTo(\"#global-tweet-dialog\"), NewTweetButton.attachTo(\"#global-new-tweet-button\", {\n eventData: {\n scribeContext: {\n component: \"top_bar\",\n element: \"tweet_button\"\n }\n }\n }), TweetBoxScribe.attachTo(JSBNG__document, a), TweetBoxManager.attachTo(JSBNG__document, a);\n };\n;\n var GeoData = require(\"app/data/geo\"), TweetData = require(\"app/data/tweet\"), TweetDialog = require(\"app/ui/tweet_dialog\"), NewTweetButton = require(\"app/ui/new_tweet_button\"), TweetBoxScribe = require(\"app/data/tweet_box_scribe\"), TweetBoxManager = require(\"app/ui/tweet_box_manager\");\n module.exports = initialize;\n});\ndefine(\"app/ui/user_dropdown\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_dropdown\",\"app/utils/storage/core\",], function(module, require, exports) {\n function userDropdown() {\n this.defaultAttrs({\n feedbackLinkSelector: \".feedback-callout-link\"\n }), this.signout = function() {\n storage.clearAll(), this.$signoutForm.submit();\n }, this.showKeyboardShortcutsDialog = function(a, b) {\n this.trigger(JSBNG__document, \"uiOpenKeyboardShortcutsDialog\"), a.preventDefault();\n }, this.showConversationNotification = function(a, b) {\n this.unreadThreads = b.threads, this.$node.addClass(this.attr.glowClass), this.$dmCount.addClass(this.attr.glowClass).text(b.threads.length);\n }, this.openFeedbackDialog = function(a, b) {\n this.closeDropdown(), this.trigger(\"uiPrepareFeedbackDialog\", {\n });\n }, this.updateConversationNotication = function(a, b) {\n var c = $.inArray(b.recipient, this.unreadThreads);\n if (((c === -1))) {\n return;\n }\n ;\n ;\n this.unreadThreads.splice(c, 1);\n var d = ((parseInt(this.$dmCount.text(), 10) - 1));\n ((d ? this.$dmCount.text(d) : (this.$node.removeClass(this.attr.glowClass), this.$dmCount.removeClass(this.attr.glowClass).text(\"\"))));\n }, this.after(\"initialize\", function() {\n this.unreadThreads = [], this.$signoutForm = this.select(\"signoutForm\"), this.JSBNG__on(this.attr.keyboardShortcuts, \"click\", this.showKeyboardShortcutsDialog), this.JSBNG__on(this.attr.feedbackLinkSelector, \"click\", this.openFeedbackDialog), this.$dmCount = this.select(\"dmCount\"), this.JSBNG__on(this.attr.signout, \"click\", this.signout), this.JSBNG__on(JSBNG__document, \"uiDMDialogOpenedConversation\", this.updateConversationNotication), this.JSBNG__on(JSBNG__document, \"uiDMDialogHasNewConversations\", this.showConversationNotification), this.JSBNG__on(JSBNG__document, \"click\", this.close), this.JSBNG__on(JSBNG__document, \"uiNavigate\", this.close);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withDropdown = require(\"app/ui/with_dropdown\"), storage = require(\"app/utils/storage/core\"), UserDropdown = defineComponent(userDropdown, withDropdown);\n module.exports = UserDropdown;\n});\ndefine(\"app/ui/signin_dropdown\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_dropdown\",], function(module, require, exports) {\n function signinDropdown() {\n this.defaultAttrs({\n toggler: \".js-session .dropdown-toggle\",\n usernameSelector: \".email-input\"\n }), this.focusUsername = function() {\n this.select(\"usernameSelector\").JSBNG__focus();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiDropdownOpened\", this.focusUsername);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withDropdown = require(\"app/ui/with_dropdown\"), SigninDropdown = defineComponent(signinDropdown, withDropdown);\n module.exports = SigninDropdown;\n});\ndefine(\"app/ui/search_input\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function searchInput() {\n this.defaultAttrs({\n magnifyingGlassSelector: \".js-search-action\",\n inputFieldSelector: \"#search-query\",\n hintFieldSelector: \"#search-query-hint\",\n query: \"\",\n searchPathWithQuery: \"/search?q=query&src=typd\",\n focusClass: \"JSBNG__focus\"\n }), this.addFocusStyles = function(a) {\n this.$node.addClass(this.attr.focusClass), this.$input.addClass(this.attr.focusClass), this.$hint.addClass(this.attr.focusClass), this.trigger(\"uiSearchInputFocused\");\n }, this.removeFocusStyles = function(a) {\n this.$node.removeClass(this.attr.focusClass), this.$input.removeClass(this.attr.focusClass), this.$hint.removeClass(this.attr.focusClass);\n }, this.executeTypeaheadSelection = function(a, b) {\n this.$input.val(b.display);\n if (b.isClick) {\n return;\n }\n ;\n ;\n this.trigger(\"uiNavigate\", {\n href: b.href\n });\n }, this.submitQuery = function(a, b) {\n this.trigger(\"uiSearchQuery\", {\n query: b.query,\n source: \"search\"\n }), this.trigger(\"uiNavigate\", {\n href: this.attr.searchPathWithQuery.replace(\"query\", encodeURIComponent(b.query))\n });\n }, this.searchFormSubmit = function(a, b) {\n a.preventDefault(), this.trigger(this.$input, \"uiTypeaheadInputSubmit\");\n }, this.after(\"initialize\", function() {\n this.$input = this.select(\"inputFieldSelector\"), this.$hint = this.select(\"hintFieldSelector\"), this.$input.val(this.attr.query), this.JSBNG__on(\"uiTypeaheadItemSelected\", this.executeTypeaheadSelection), this.JSBNG__on(\"uiTypeaheadSubmitQuery\", this.submitQuery), this.JSBNG__on(this.$input, \"JSBNG__focus\", this.addFocusStyles), this.JSBNG__on(this.$input, \"JSBNG__blur\", this.removeFocusStyles), this.JSBNG__on(\"submit\", this.searchFormSubmit), this.JSBNG__on(this.select(\"magnifyingGlassSelector\"), \"click\", this.searchFormSubmit);\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(searchInput);\n});\ndefine(\"app/utils/animate_window_scrolltop\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function getScrollEl() {\n return ((scrollEl ? scrollEl : ([JSBNG__document.body,JSBNG__document.documentElement,].forEach(function(a) {\n var b = a.scrollTop;\n a.scrollTop = ((b + 1)), ((((a.scrollTop == ((b + 1)))) && (scrollEl = a.tagName.toLowerCase(), a.scrollTop = b)));\n }), scrollEl)));\n };\n;\n var scrollEl;\n module.exports = function(a, b) {\n $(getScrollEl()).animate({\n scrollTop: a\n }, b);\n };\n});\ndefine(\"app/ui/global_nav\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/full_path\",\"app/utils/animate_window_scrolltop\",], function(module, require, exports) {\n function globalNav() {\n this.defaultAttrs({\n activeClass: \"active\",\n newClass: \"new\",\n nav: \"li\",\n meNav: \"li.profile\",\n navLinkSelector: \"li \\u003E a\",\n linkSelector: \"a\"\n }), this.updateActive = function(a, b) {\n ((b && (this.select(\"nav\").removeClass(this.attr.activeClass), this.select(\"nav\").filter(((((\"[data-global-action=\" + b.section)) + \"]\"))).addClass(this.attr.activeClass), this.removeGlowFromActive())));\n }, this.addGlowToActive = function() {\n this.$node.JSBNG__find(((\".\" + this.attr.activeClass))).addClass(this.attr.newClass);\n }, this.addGlowToMe = function() {\n this.select(\"meNav\").addClass(this.attr.newClass);\n }, this.removeGlowFromActive = function() {\n this.$node.JSBNG__find(((\".\" + this.attr.activeClass))).not(this.attr.meNav).removeClass(this.attr.newClass);\n }, this.removeGlowFromMe = function() {\n this.select(\"meNav\").removeClass(this.attr.newClass);\n }, this.scrollToTopLink = function(a) {\n var b = $(a.target).closest(this.attr.linkSelector);\n ((((b.attr(\"href\") == fullPath())) && (a.preventDefault(), b.JSBNG__blur(), this.scrollToTop())));\n }, this.scrollToTop = function() {\n animateWinScrollTop(0, \"fast\"), this.trigger(JSBNG__document, \"uiGotoTopOfScreen\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiAddPageCount\", this.addGlowToActive), this.JSBNG__on(JSBNG__document, \"uiHasInjectedNewTimeline\", this.removeGlowFromActive), this.JSBNG__on(JSBNG__document, \"dataPageRefresh\", this.updateActive), this.JSBNG__on(JSBNG__document, \"dataUserHasUnreadDMs dataUserHasUnreadDMsWithCount\", this.addGlowToMe), this.JSBNG__on(JSBNG__document, \"dataUserHasNoUnreadDMs dataUserHasNoUnreadDMsWithCount\", this.removeGlowFromMe), this.JSBNG__on(\".bird-topbar-etched\", \"click\", this.scrollToTop), this.JSBNG__on(\"click\", {\n navLinkSelector: this.scrollToTopLink\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), fullPath = require(\"app/utils/full_path\"), animateWinScrollTop = require(\"app/utils/animate_window_scrolltop\"), GlobalNav = defineComponent(globalNav);\n module.exports = GlobalNav;\n});\ndefine(\"app/ui/navigation_links\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function navigationLinks() {\n this.defaultAttrs({\n navSelector: \"a[data-nav]\"\n }), this.navEvent = function(a) {\n var b = $(a.target).closest(\"a[data-nav]\");\n this.trigger(\"uiNavigationLinkClick\", {\n scribeContext: {\n element: b.attr(\"data-nav\")\n },\n url: b.attr(\"href\")\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(this.select(\"navSelector\"), \"click\", this.navEvent);\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(navigationLinks);\n});\ndefine(\"app/data/search_input_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",\"app/utils/scribe_item_types\",], function(module, require, exports) {\n function searchInputScribe() {\n var a = {\n account: function(a) {\n var b = {\n message: a.input,\n items: [{\n id: a.query,\n item_type: itemTypes.user,\n position: a.index\n },],\n format_version: 2,\n event_info: ((a.item ? a.item.origin : undefined))\n };\n this.scribe(\"profile_click\", a, b);\n },\n search: function(b) {\n if (((this.lastCompletion && ((b.query === this.lastCompletion.query))))) a.topics.call(this, this.lastCompletion);\n else {\n var c = {\n items: [{\n item_query: b.query,\n item_type: itemTypes.search\n },],\n format_version: 2\n };\n this.scribe(\"search\", b, c);\n }\n ;\n ;\n },\n topics: function(a) {\n var b = {\n message: a.input,\n items: [{\n item_query: a.query,\n item_type: itemTypes.search,\n position: a.index\n },],\n format_version: 2\n };\n this.scribe(\"search\", a, b);\n },\n account_search: function(a) {\n this.scribe(\"people_search\", a, {\n query: a.input\n });\n },\n saved_search: function(a) {\n var b = {\n message: a.input,\n items: [{\n item_query: a.query,\n item_type: itemTypes.savedSearch,\n position: a.index\n },],\n format_version: 2\n };\n this.scribe(\"search\", a, b);\n },\n recent_search: function(a) {\n var b = {\n message: a.input,\n items: [{\n item_query: a.query,\n item_type: itemTypes.search,\n position: a.index\n },],\n format_version: 2\n };\n this.scribe(\"search\", a, b);\n }\n };\n this.storeCompletionData = function(a, b) {\n ((((((a.type == \"uiTypeaheadItemSelected\")) || ((a.type == \"uiSearchQuery\")))) ? this.scribeSelection(a, b) : ((b.fromSelectionEvent || (this.lastCompletion = b)))));\n }, this.scribeSelection = function(b, c) {\n ((a[c.source] && a[c.source].call(this, c)));\n }, this.after(\"initialize\", function() {\n this.scribeOnEvent(\"uiSearchInputFocused\", \"focus_field\"), this.JSBNG__on(\"uiTypeaheadItemComplete uiTypeaheadItemSelected uiSearchQuery\", this.storeCompletionData);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\"), itemTypes = require(\"app/utils/scribe_item_types\");\n module.exports = defineComponent(searchInputScribe, withScribe);\n});\ndefine(\"app/boot/top_bar\", [\"module\",\"require\",\"exports\",\"app/boot/tweet_boxes\",\"app/ui/user_dropdown\",\"app/ui/signin_dropdown\",\"app/ui/search_input\",\"app/ui/global_nav\",\"app/ui/navigation_links\",\"app/ui/typeahead/typeahead_dropdown\",\"app/ui/typeahead/typeahead_input\",\"app/data/search_input_scribe\",\"core/utils\",], function(module, require, exports) {\n function initialize(a) {\n GlobalNav.attachTo(\"#global-actions\", {\n noTeardown: !0\n }), SearchInput.attachTo(\"#global-nav-search\", utils.merge(a, {\n eventData: {\n scribeContext: {\n component: \"top_bar_searchbox\",\n element: \"\"\n }\n }\n })), SearchInputScribe.attachTo(\"#global-nav-search\", {\n noTeardown: !0\n });\n var b = [[\"contextHelpers\",[\"contextHelpers\",],],[\"recentSearches\",[\"recentSearches\",],],[\"savedSearches\",[\"savedSearches\",],],[\"topics\",[\"topics\",],],[\"accounts\",[\"accounts\",],],];\n ((a.typeaheadData.accountsOnTop && (b = [[\"contextHelpers\",[\"contextHelpers\",],],[\"recentSearches\",[\"recentSearches\",],],[\"savedSearches\",[\"savedSearches\",],],[\"accounts\",[\"accounts\",],],[\"topics\",[\"topics\",],],]))), TypeaheadInput.attachTo(\"#global-nav-search\"), TypeaheadDropdown.attachTo(\"#global-nav-search\", {\n datasourceRenders: b,\n accountsShortcutShow: !0,\n autocompleteAccounts: !1,\n deciders: utils.merge(a.typeaheadData, {\n showSocialContext: a.typeaheadData.showSearchAccountSocialContext\n }),\n eventData: {\n scribeContext: {\n component: \"top_bar_searchbox\",\n element: \"typeahead\"\n }\n }\n }), ((a.loggedIn ? (tweetBoxes(a), UserDropdown.attachTo(\"#user-dropdown\", {\n noTeardown: !0,\n signout: \"#signout-button\",\n signoutForm: \"#signout-form\",\n toggler: \"#user-dropdown-toggle\",\n keyboardShortcuts: \".js-keyboard-shortcut-trigger\",\n dmCount: \".js-direct-message-count\",\n glowClass: \"new\"\n })) : SigninDropdown.attachTo(\".js-session\"))), NavigationLinks.attachTo(\".global-nav\", {\n noTeardown: !0,\n eventData: {\n scribeContext: {\n component: \"top_bar\"\n }\n }\n });\n };\n;\n var tweetBoxes = require(\"app/boot/tweet_boxes\"), UserDropdown = require(\"app/ui/user_dropdown\"), SigninDropdown = require(\"app/ui/signin_dropdown\"), SearchInput = require(\"app/ui/search_input\"), GlobalNav = require(\"app/ui/global_nav\"), NavigationLinks = require(\"app/ui/navigation_links\"), TypeaheadDropdown = require(\"app/ui/typeahead/typeahead_dropdown\"), TypeaheadInput = require(\"app/ui/typeahead/typeahead_input\"), SearchInputScribe = require(\"app/data/search_input_scribe\"), utils = require(\"core/utils\");\n module.exports = initialize;\n});\ndefine(\"app/ui/keyboard_shortcuts\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",], function(module, require, exports) {\n function keyBoardShortcuts() {\n this.shortcutEvents = {\n f: \"uiShortcutFavorite\",\n r: \"uiShortcutReply\",\n t: \"uiShortcutRetweet\",\n b: \"uiShortcutBlock\",\n u: \"uiShortcutUnblock\",\n j: \"uiShortcutSelectNext\",\n k: \"uiShortcutSelectPrev\",\n l: \"uiShortcutCloseAll\",\n \".\": \"uiShortcutGotoTopOfScreen\",\n \"/\": {\n type: \"uiShortcutGotoSearch\",\n defaultFn: \"focusSearch\"\n },\n X: {\n type: \"uiShortcutEsc\",\n defaultFn: \"blurTextField\"\n },\n E: \"uiShortcutEnter\",\n \"\\u003C\": \"uiShortcutLeft\",\n \"\\u003E\": \"uiShortcutRight\",\n m: \"uiOpenNewDM\",\n n: \"uiShortcutShowTweetbox\",\n gu: \"uiShortcutShowGotoUser\",\n gm: \"uiNeedsDMDialog\",\n sp: \"uiShortcutShowSearchPhotos\",\n sv: \"uiShortcutShowSearchVideos\",\n \"?\": \"uiOpenKeyboardShortcutsDialog\"\n }, this.routes = {\n JSBNG__home: \"/\",\n activity: \"/activity\",\n connect: \"/i/connect\",\n mentions: \"/mentions\",\n discover: \"/i/discover\",\n profile: \"/\",\n favorites: \"/favorites\",\n settings: \"/settings/account\",\n lists: \"/lists\"\n }, this.routeShortcuts = {\n gh: \"JSBNG__home\",\n ga: \"activity\",\n gc: \"connect\",\n gr: \"mentions\",\n gd: \"discover\",\n gp: \"profile\",\n gf: \"favorites\",\n gs: \"settings\",\n gl: \"lists\"\n }, this.lastKey = \"\", this.defaultAttrs({\n globalSearchBoxSelector: \"#search-query\"\n }), this.isModifier = function(a) {\n return !!((((((a.shiftKey || a.metaKey)) || a.ctrlKey)) || a.altKey));\n }, this.charFromKeyCode = function(a, b) {\n return ((((b && shiftKeyMap[a])) ? shiftKeyMap[a] : ((keyMap[a] || String.fromCharCode(a).toLowerCase()))));\n }, this.isTextField = function(a) {\n if (((!a || !a.tagName))) {\n return !1;\n }\n ;\n ;\n var b = a.tagName.toLowerCase();\n if (((((b == \"textarea\")) || a.getAttribute(\"contenteditable\")))) {\n return !0;\n }\n ;\n ;\n if (((b != \"input\"))) {\n return !1;\n }\n ;\n ;\n var c = ((a.getAttribute(\"type\") || \"text\")).toLowerCase();\n return textInputs[c];\n }, this.isWhiteListedElement = function(a) {\n var b = a.tagName.toLowerCase();\n if (whiteListedElements[b]) {\n return !0;\n }\n ;\n ;\n if (((b != \"input\"))) {\n return !1;\n }\n ;\n ;\n var c = a.getAttribute(\"type\").toLowerCase();\n return whiteListedInputs[c];\n }, this.triggerShortcut = function(a) {\n var b = this.charFromKeyCode(((a.keyCode || a.which)), a.shiftKey), c, d, e, f = ((this.shortcutEvents[((this.lastKey + b))] || this.shortcutEvents[b])), g = {\n fromShortcut: !0\n };\n if (((f && ((b != this.lastKey))))) {\n a.preventDefault(), ((((typeof f == \"string\")) ? c = f : (c = f.type, e = f.defaultFn, ((f.data && (g = utils.merge(g, f.data))))))), ((e && (d = {\n type: c,\n defaultBehavior: function() {\n this[e](a, g);\n }\n }))), this.trigger(a.target, ((d || c)), g), this.lastKey = \"\";\n return;\n }\n ;\n ;\n JSBNG__setTimeout(function() {\n this.lastKey = \"\";\n }.bind(this), 5000), this.lastKey = b;\n }, this.onKeyDown = function(a) {\n var b = a.keyCode, c = ((b == 13)), d = a.target;\n if (((((((b != 27)) && this.isTextField(d))) || ((this.isModifier(a) && ((c || !shiftKeyMap[a.keyCode]))))))) {\n return;\n }\n ;\n ;\n if (((c && this.isWhiteListedElement(d)))) {\n return;\n }\n ;\n ;\n this.triggerShortcut(a);\n }, this.blurTextField = function(a) {\n var b = a.target;\n ((this.isTextField(b) && b.JSBNG__blur()));\n }, this.focusSearch = function(a) {\n this.select(\"globalSearchBoxSelector\").JSBNG__focus();\n }, this.navigateTo = function(a, b) {\n this.trigger(\"uiNavigate\", {\n href: b.href\n });\n }, this.createNavEventName = function(a) {\n return ((((UI_SHORTCUT_NAVIGATE + a[0].toUpperCase())) + a.slice(1)));\n }, this.createNavigationShortcuts = function() {\n Object.keys(this.routeShortcuts).forEach(function(a) {\n var b = this.routeShortcuts[a];\n this.shortcutEvents[a] = {\n type: this.createNavEventName(b),\n data: {\n href: this.routes[b]\n },\n defaultFn: \"navigateTo\"\n };\n }, this);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"keydown\", this.onKeyDown), ((this.attr.routes && utils.push(this.routes, this.attr.routes))), this.createNavigationShortcuts();\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), keyMap = {\n 13: \"E\",\n 27: \"X\",\n 191: \"/\",\n 190: \".\",\n 37: \"\\u003C\",\n 39: \"\\u003E\"\n }, shiftKeyMap = {\n 191: \"?\"\n }, whiteListedElements = {\n button: !0,\n a: !0\n }, whiteListedInputs = {\n button: !0,\n submit: !0,\n file: !0\n }, textInputs = {\n password: !0,\n text: !0,\n email: !0\n }, UI_SHORTCUT_NAVIGATE = \"uiShortcutNavigate\", KeyBoardShortcuts = defineComponent(keyBoardShortcuts);\n module.exports = KeyBoardShortcuts;\n});\nprovide(\"app/ui/dialogs/keyboard_shortcuts_dialog\", function(a) {\n using(\"core/component\", \"app/ui/with_dialog\", \"app/ui/with_position\", function(b, c, d) {\n function f() {\n this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", this.close), this.JSBNG__on(JSBNG__document, \"uiOpenKeyboardShortcutsDialog\", this.open);\n });\n };\n ;\n var e = b(f, c, d);\n a(e);\n });\n});\ndefine(\"app/ui/dialogs/with_modal_tweet\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withModalTweet() {\n this.defaultAttrs({\n modalTweetSelector: \".modal-tweet\"\n }), this.addTweet = function(a) {\n this.select(\"modalTweetSelector\").show(), this.select(\"modalTweetSelector\").empty().append(a);\n }, this.removeTweet = function() {\n this.select(\"modalTweetSelector\").hide().empty();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiDialogClosed\", this.removeTweet);\n });\n };\n;\n module.exports = withModalTweet;\n});\nprovide(\"app/ui/dialogs/retweet_dialog\", function(a) {\n using(\"core/component\", \"app/ui/with_dialog\", \"app/ui/with_position\", \"app/ui/dialogs/with_modal_tweet\", function(b, c, d, e) {\n function g() {\n this.defaults = {\n cancelSelector: \".cancel-action\",\n retweetSelector: \".retweet-action\"\n }, this.openRetweet = function(a, b) {\n this.attr.sourceEventData = b, this.removeTweet(), this.addTweet($(a.target).clone()), this.open();\n }, this.retweet = function() {\n this.trigger(\"uiDidRetweet\", this.attr.sourceEventData);\n }, this.retweetSuccess = function(a, b) {\n this.trigger(\"uiDidRetweetSuccess\", this.attr.sourceEventData), this.close();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n cancelSelector: this.close,\n retweetSelector: this.retweet\n }), this.JSBNG__on(JSBNG__document, \"uiOpenRetweetDialog\", this.openRetweet), this.JSBNG__on(JSBNG__document, \"dataDidRetweet\", this.retweetSuccess);\n });\n };\n ;\n var f = b(g, c, d, e);\n a(f);\n });\n});\nprovide(\"app/ui/dialogs/delete_tweet_dialog\", function(a) {\n using(\"core/component\", \"app/ui/with_dialog\", \"app/ui/with_position\", \"app/ui/dialogs/with_modal_tweet\", function(b, c, d, e) {\n function g() {\n this.defaults = {\n cancelSelector: \".cancel-action\",\n deleteSelector: \".delete-action\"\n }, this.openDeleteTweet = function(a, b) {\n this.attr.sourceEventData = b, this.addTweet($(a.target).clone()), this.id = b.id, this.open();\n }, this.deleteTweet = function() {\n this.trigger(\"uiDidDeleteTweet\", {\n id: this.id,\n sourceEventData: this.attr.sourceEventData\n });\n }, this.deleteTweetSuccess = function(a, b) {\n this.trigger(\"uiDidDeleteTweetSuccess\", this.attr.sourceEventData), this.close();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n cancelSelector: this.close,\n deleteSelector: this.deleteTweet\n }), this.JSBNG__on(JSBNG__document, \"uiOpenDeleteDialog\", this.openDeleteTweet), this.JSBNG__on(JSBNG__document, \"dataDidDeleteTweet\", this.deleteTweetSuccess);\n });\n };\n ;\n var f = b(g, c, d, e);\n a(f);\n });\n});\nprovide(\"app/ui/dialogs/block_user_dialog\", function(a) {\n using(\"core/component\", \"app/ui/with_dialog\", \"app/ui/with_position\", \"app/ui/dialogs/with_modal_tweet\", function(b, c, d, e) {\n function g() {\n this.defaults = {\n cancelSelector: \".cancel-action\",\n blockSelector: \".block-action\",\n timeSelector: \".time\",\n dogearSelector: \".dogear\",\n tweetTextSelector: \".js-tweet-text\"\n }, this.openBlockUser = function(a, b) {\n this.attr.sourceEventData = b, this.addTweet($(a.target.children[0]).clone()), this.cleanUpTweet(), this.open();\n }, this.cleanUpTweet = function() {\n this.$node.JSBNG__find(this.attr.timeSelector).remove(), this.$node.JSBNG__find(this.attr.dogearSelector).remove(), this.$node.JSBNG__find(this.attr.tweetTextSelector).remove();\n }, this.blockUser = function() {\n this.trigger(\"uiDidBlockUser\", {\n sourceEventData: this.attr.sourceEventData\n }), this.close();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n cancelSelector: this.close,\n blockSelector: this.blockUser\n }), this.JSBNG__on(JSBNG__document, \"uiOpenBlockUserDialog\", this.openBlockUser);\n });\n };\n ;\n var f = b(g, c, d, e);\n a(f);\n });\n});\nprovide(\"app/ui/dialogs/confirm_dialog\", function(a) {\n using(\"core/component\", \"app/ui/with_dialog\", \"app/ui/with_position\", \"app/utils/with_event_params\", function(b, c, d, e) {\n function g() {\n this.defaultAttrs({\n titleSelector: \".modal-title\",\n modalBodySelector: \".modal-body\",\n bodySelector: \".modal-body-text\",\n cancelSelector: \"#confirm_dialog_cancel_button\",\n submitSelector: \"#confirm_dialog_submit_button\"\n }), this.openWithOptions = function(a, b) {\n this.attr.eventParams = {\n action: b.action\n }, this.attr.JSBNG__top = b.JSBNG__top, this.select(\"titleSelector\").text(b.titleText), ((b.bodyText ? (this.select(\"bodySelector\").text(b.bodyText), this.select(\"modalBodySelector\").show()) : this.select(\"modalBodySelector\").hide())), this.select(\"cancelSelector\").text(b.cancelText), this.select(\"submitSelector\").text(b.submitText), this.open();\n }, this.submit = function(a, b) {\n this.trigger(\"ui{{action}}Confirm\");\n }, this.cancel = function(a, b) {\n this.trigger(\"ui{{action}}Cancel\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiOpenConfirmDialog\", this.openWithOptions), this.JSBNG__on(this.select(\"submitSelector\"), \"click\", this.submit), this.JSBNG__on(this.select(\"submitSelector\"), \"click\", this.close), this.JSBNG__on(this.select(\"cancelSelector\"), \"click\", this.cancel), this.JSBNG__on(this.select(\"cancelSelector\"), \"click\", this.close), this.JSBNG__on(\"uiDialogCloseRequested\", this.cancel);\n });\n };\n ;\n var f = b(g, c, d, e);\n a(f);\n });\n});\ndefine(\"app/ui/dialogs/confirm_email_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_position\",\"app/ui/with_dialog\",], function(module, require, exports) {\n function confirmEmailDialog() {\n this.defaultAttrs({\n resendConfirmationEmailLinkSelector: \".resend-confirmation-email-link\"\n }), this.resendConfirmationEmail = function() {\n this.trigger(\"uiResendConfirmationEmail\"), this.close();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiOpenConfirmEmailDialog\", this.open), this.JSBNG__on(JSBNG__document, \"dataResendConfirmationEmailSuccess\", this.close), this.JSBNG__on(\"click\", {\n resendConfirmationEmailLinkSelector: this.resendConfirmationEmail\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withPosition = require(\"app/ui/with_position\"), withDialog = require(\"app/ui/with_dialog\");\n module.exports = defineComponent(confirmEmailDialog, withDialog, withPosition);\n});\ndefine(\"app/ui/dialogs/list_membership_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_position\",\"app/ui/with_dialog\",], function(module, require, exports) {\n function listMembershipDialog() {\n this.defaultAttrs({\n JSBNG__top: 90,\n contentSelector: \".list-membership-content\",\n createListSelector: \".create-a-list\",\n membershipSelector: \".list-membership-container li\"\n }), this.openListMembershipDialog = function(a, b) {\n this.userId = b.userId, ((this.userId && this.trigger(\"uiNeedsListMembershipContent\", {\n userId: this.userId\n }))), this.$content.empty(), this.$node.removeClass(\"has-content\"), this.open();\n }, this.addListMembershipContent = function(a, b) {\n this.$node.addClass(\"has-content\"), this.$content.html(b.html);\n }, this.handleNoListMembershipContent = function(a, b) {\n this.close(), this.trigger(\"uiShowError\", b);\n }, this.toggleListMembership = function(a, b) {\n var c = $(a.target), d = {\n userId: c.closest(\"[data-user-id]\").attr(\"data-user-id\"),\n listId: c.closest(\"[data-list-id]\").attr(\"data-list-id\")\n }, e = $(((\"#list_\" + d.listId)));\n if (!e.is(\":visible\")) {\n return;\n }\n ;\n ;\n e.closest(this.attr.membershipSelector).addClass(\"pending\"), ((e.data(\"is-checked\") ? this.trigger(\"uiRemoveUserFromList\", d) : this.trigger(\"uiAddUserToList\", d)));\n }, this.updateMembershipState = function(a) {\n return function(b, c) {\n var d = $(((\"#list_\" + c.sourceEventData.listId)));\n d.closest(this.attr.membershipSelector).removeClass(\"pending\"), d.attr(\"checked\", ((a ? \"checked\" : null))), d.data(\"is-checked\", a), d.attr(\"data-is-checked\", a);\n }.bind(this);\n }, this.openListCreateDialog = function() {\n this.close(), this.trigger(\"uiOpenCreateListDialog\", {\n userId: this.userId\n });\n }, this.after(\"initialize\", function(a) {\n this.$content = this.select(\"contentSelector\"), this.JSBNG__on(\"click\", {\n createListSelector: this.openListCreateDialog,\n membershipSelector: this.toggleListMembership\n }), this.JSBNG__on(JSBNG__document, \"uiListAction uiOpenListMembershipDialog\", this.openListMembershipDialog), this.JSBNG__on(JSBNG__document, \"dataGotListMembershipContent\", this.addListMembershipContent), this.JSBNG__on(JSBNG__document, \"dataFailedToGetListMembershipContent\", this.handleNoListMembershipContent), this.JSBNG__on(JSBNG__document, \"dataDidAddUserToList dataFailedToRemoveUserFromList\", this.updateMembershipState(!0)), this.JSBNG__on(JSBNG__document, \"dataDidRemoveUserFromList dataFailedToAddUserToList\", this.updateMembershipState(!1));\n });\n };\n;\n var defineComponent = require(\"core/component\"), withPosition = require(\"app/ui/with_position\"), withDialog = require(\"app/ui/with_dialog\"), ListMembershipDialog = defineComponent(listMembershipDialog, withDialog, withPosition);\n module.exports = ListMembershipDialog;\n});\ndefine(\"app/ui/dialogs/list_operations_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_position\",\"app/ui/with_dialog\",\"core/i18n\",\"core/utils\",], function(module, require, exports) {\n function listOperationsDialog() {\n this.defaultAttrs({\n JSBNG__top: 90,\n win: window,\n saveListSelector: \".update-list-button\",\n editorSelector: \".list-editor\",\n nameInputSelector: \".list-editor input[name='name']\",\n descriptionSelector: \".list-editor textarea[name='description']\",\n privacySelector: \".list-editor input[name='mode']\",\n modalTitleSelector: \".modal-title\"\n }), this.openListOperationsDialog = function(a, b) {\n this.userId = b.userId, ((((a.type == \"uiOpenUpdateListDialog\")) && this.modifyDialog())), this.open(), this.$nameInput.JSBNG__focus();\n }, this.modifyDialog = function() {\n this.$modalTitle = this.select(\"modalTitleSelector\"), this.originalTitle = ((this.originalTitle || this.$modalTitle.text())), this.$modalTitle.text(_(\"Edit list details\")), this.$nameInput.val($(\".follow-card h1.js-list-name\").text()), this.$descriptionInput.val($(\".follow-card p.bio\").text()), ((this.attr.is_public || (this.$privacyInput[1].checked = !0))), this.$saveButton.attr(\"data-list-id\", this.attr.list_id).attr(\"data-operation\", \"update\"), this.toggleSaveButtonDisabled(), this.modified = !0;\n }, this.revertModifications = function() {\n ((this.modified && (this.revertDialog(), this.$editor.JSBNG__find(\"input,textarea\").val(\"\"), this.modified = !1)));\n }, this.revertDialog = function() {\n this.$modalTitle.text(this.originalTitle), this.$saveButton.removeAttr(\"data-list-id\").removeAttr(\"data-operation\"), ((this.attr.is_public || (this.$privacyInput[0].checked = !0)));\n }, this.saveList = function(a, b) {\n if (this.requestInProgress) {\n return;\n }\n ;\n ;\n this.requestInProgress = !0;\n var c = $(b.el), d = ((((c.attr(\"data-operation\") == \"update\")) ? \"uiUpdateList\" : \"uiCreateList\")), e = {\n JSBNG__name: this.formValue(\"JSBNG__name\"),\n description: this.formValue(\"description\", {\n type: \"textarea\"\n }),\n mode: this.formValue(\"mode\", {\n conditions: \":checked\"\n })\n };\n ((((c.attr(\"data-operation\") == \"update\")) && (e = utils.merge(e, {\n list_id: c.attr(\"data-list-id\")\n })))), this.trigger(d, e), this.$saveButton.attr(\"disabled\", !0);\n }, this.saveListSuccess = function(a, b) {\n this.close();\n var c = _(\"List saved!\");\n ((((a.type == \"dataDidCreateList\")) ? (c = _(\"List created!\"), ((this.userId ? this.trigger(\"uiOpenListMembershipDialog\", {\n userId: this.userId\n }) : ((((b && b.slug)) && (this.attr.win.JSBNG__location = ((((((\"/\" + this.attr.screenName)) + \"/\")) + b.slug)))))))) : this.revertDialog())), this.$editor.JSBNG__find(\"input,textarea\").val(\"\"), this.trigger(\"uiShowMessage\", {\n message: c\n });\n }, this.saveListComplete = function(a, b) {\n this.requestInProgress = !1, this.toggleSaveButtonDisabled();\n }, this.toggleSaveButtonDisabled = function(a, b) {\n this.$saveButton.attr(\"disabled\", ((this.$nameInput.val() == \"\")));\n }, this.formValue = function(a, b) {\n return b = ((b || {\n })), b.type = ((b.type || \"input\")), b.conditions = ((b.conditions || \"\")), this.$editor.JSBNG__find(((((((((b.type + \"[name='\")) + a)) + \"']\")) + b.conditions))).val();\n }, this.disableSaveButton = function() {\n this.$saveButton.attr(\"disabled\", !0);\n }, this.after(\"initialize\", function(a) {\n this.$editor = this.select(\"editorSelector\"), this.$nameInput = this.select(\"nameInputSelector\"), this.$descriptionInput = this.select(\"descriptionSelector\"), this.$privacyInput = this.select(\"privacySelector\"), this.$saveButton = this.select(\"saveListSelector\"), this.JSBNG__on(\"click\", {\n saveListSelector: this.saveList\n }), this.JSBNG__on(\"focus blur keyup\", {\n nameInputSelector: this.toggleSaveButtonDisabled\n }), this.JSBNG__on(\"uiDialogOpened\", this.disableSaveButton), this.JSBNG__on(\"uiDialogClosed\", this.revertModifications), this.JSBNG__on(JSBNG__document, \"uiOpenCreateListDialog uiOpenUpdateListDialog\", this.openListOperationsDialog), this.JSBNG__on(JSBNG__document, \"dataDidCreateList dataDidUpdateList\", this.saveListSuccess), this.JSBNG__on(JSBNG__document, \"dataDidCreateList dataDidUpdateList dataFailedToCreateList dataFailedToUpdateList\", this.saveListComplete);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withPosition = require(\"app/ui/with_position\"), withDialog = require(\"app/ui/with_dialog\"), _ = require(\"core/i18n\"), utils = require(\"core/utils\"), ListOperationsDialog = defineComponent(listOperationsDialog, withDialog, withPosition);\n module.exports = ListOperationsDialog;\n});\ndefine(\"app/data/direct_messages\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",\"app/data/with_auth_token\",\"app/utils/storage/core\",\"app/utils/string\",], function(module, require, exports) {\n function directMessages() {\n var a = 0;\n this.defaultAttrs({\n noShowError: !0,\n lastReadMessageIdKey: \"lastReadMessageId\",\n latestMarkedIdKey: \"lastMarkedMessageId\",\n oldestUnreadIdKey: \"oldestUnreadMessageId\"\n }), this.pollConversationList = function(a, b) {\n this.requestConversationList(null, {\n since_id: this.lastMessageId\n });\n }, this.storeMessageId = function(a, b) {\n ((this.attr.dmReadStateSync ? (((b.last_read_id && this.saveLastReadId(b.last_read_id))), ((b.oldest_unread_dm_id && this.saveOldestUnreadDMId(b.oldest_unread_dm_id)))) : this.saveLastReceivedId(b.last_message_id)));\n }, this.saveLastReceivedId = function(a) {\n this.storage.setItem(this.attr.lastReadMessageIdKey, a), this.trigger(\"dataUserHasNoUnreadDMs\");\n }, this.saveLastReadId = function(a) {\n var b = this.attr.latestMarkedIdKey, c = this.storage.getItem(b);\n ((((!c || ((StringUtils.compare(a, c) == 1)))) && this.storage.setItem(b, a)));\n }, this.saveOldestUnreadDMId = function(a) {\n this.storage.setItem(this.attr.oldestUnreadIdKey, a);\n }, this.requestConversationList = function(a, b) {\n this.get({\n url: \"/messages\",\n data: b,\n eventData: b,\n success: \"dataDMConversationListResult\",\n error: \"dataDMError\"\n });\n }, this.requestConversation = function(a, b) {\n this.get({\n url: ((\"/messages/with/\" + b.screen_name)),\n data: {\n },\n eventData: b,\n success: \"dataDMConversationResult\",\n error: \"dataDMError\"\n });\n }, this.sendMessage = function(a, b) {\n var c = function(a) {\n a.msgAction = \"send\", this.trigger(\"dataDMSuccess\", a);\n };\n this.post({\n url: \"/direct_messages/new\",\n data: b,\n eventData: b,\n success: c.bind(this),\n error: \"dataDMError\"\n });\n }, this.deleteMessage = function(a, b) {\n var c = function(a) {\n a.msgAction = \"delete\", this.trigger(\"dataDMSuccess\", a);\n };\n this.post({\n url: \"/direct_messages/destroy\",\n data: b,\n eventData: b,\n success: c.bind(this),\n error: \"dataDMError\"\n });\n }, this.triggerUnreadCount = function(b, c) {\n if (!this.attr.dmReadStateSync) {\n return;\n }\n ;\n ;\n a = c.msgCount, ((((a > 0)) ? this.trigger(\"dataUserHasUnreadDMsWithCount\", {\n msgCount: a\n }) : this.trigger(\"dataUserHasNoUnreadDMsWithCount\")));\n }, this.dispatchUnreadNotification = function(a, b) {\n if (((!b || !b.d))) {\n return;\n }\n ;\n ;\n var c = b.d, d = this.attr.lastReadMessageIdKey, e = this.storage.getItem(d);\n if (e) {\n this.storage.removeItem(d), this.markOldDmsAsRead(!1, e);\n return;\n }\n ;\n ;\n ((((((c.JSBNG__status === \"ok\")) && ((c.response != null)))) && this.triggerUnreadCount(null, {\n msgCount: c.response\n })));\n }, this.markOldDmsAsRead = function(a, b) {\n if (((!a || ((StringUtils.compare(a, b) != 0))))) {\n this.trigger(\"dataMarkDMsAsRead\", {\n last_message_id: b,\n implicitMark: !0\n }), this.saveLastReadId(b);\n }\n ;\n ;\n }, this.checkLastReadDM = function(a, b) {\n var c = this.attr.latest_incoming_direct_message_id, d = this.storage.getItem(this.attr.lastReadMessageIdKey), e = this.storage.getItem(this.attr.latestMarkedIdKey);\n ((d ? (((((c && ((StringUtils.compare(c, d) > 0)))) && this.trigger(\"dataUserHasUnreadDMs\"))), ((((!this.attr.dmReadStateSync && this.attr.mark_old_dms_read)) && this.markOldDmsAsRead(e, d)))) : ((c && (this.saveLastReceivedId(c), this.saveLastReadId(c))))));\n }, this.markDMsAsRead = function(a, b) {\n if (!b.last_message_id) {\n throw new Error(\"Require last_message_id to mark a DM as read\");\n }\n ;\n ;\n var c = {\n last_message_id: b.last_message_id\n };\n ((b.recipient_id && (c.recipient_id = b.recipient_id))), ((b.implicitMark && (c.implicit_mark = \"true\")));\n var d = function(a) {\n ((b.implicitMark && (a.implicitMark = !0))), this.saveLastReadId(b.last_message_id), a.lastMessageId = b.last_message_id, this.trigger(\"dataDMReadSuccess\", a);\n };\n this.post({\n url: \"/i/messages/mark_read\",\n data: c,\n eventData: b,\n success: d.bind(this),\n error: \"dataDMReadError\"\n });\n }, this.checkForEnvelope = function(b, c) {\n ((((c && ((c.section == \"profile\")))) && this.triggerUnreadCount(null, {\n msgCount: a\n })));\n }, this.possiblyOpenDMDialog = function(a, b) {\n var c = this.attr.dm_options;\n if (((c && c.show_dm_dialog))) {\n var d = c.recipient;\n $(JSBNG__document).trigger(\"uiNeedsDMDialog\", {\n screen_name: d\n }), this.JSBNG__on(\"uiDialogClosed\", function() {\n this.trigger(\"uiNavigate\", {\n href: \"/\"\n });\n });\n }\n ;\n ;\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiNeedsDMConversationList\", this.requestConversationList), this.JSBNG__on(\"uiNeedsDMConversation\", this.requestConversation), this.JSBNG__on(\"uiDMDialogSendMessage\", this.sendMessage), this.JSBNG__on(\"uiDMDialogDeleteMessage\", this.deleteMessage), this.JSBNG__on(\"dataRefreshDMs\", this.pollConversationList), this.JSBNG__on(\"dataMarkDMsAsRead\", this.markDMsAsRead), this.JSBNG__on(\"dataDMConversationListResult\", this.storeMessageId), this.JSBNG__on(\"uiSwiftLoaded uiPageChanged\", this.checkLastReadDM), this.JSBNG__on(\"uiPageChanged\", this.checkForEnvelope), this.JSBNG__on(\"uiSwiftLoaded\", this.possiblyOpenDMDialog), this.JSBNG__on(\"dataNotificationsReceived\", this.dispatchUnreadNotification), this.JSBNG__on(\"uiReadStateChanged\", this.triggerUnreadCount), this.lastMessageId = (($(\"#dm_dialog_conversation_list li.dm-thread\").first().attr(\"data-last-message-id\") || 0)), this.storage = new JSBNG__Storage(\"DM\");\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), withAuthToken = require(\"app/data/with_auth_token\"), JSBNG__Storage = require(\"app/utils/storage/core\"), StringUtils = require(\"app/utils/string\"), DirectMessages = defineComponent(directMessages, withData, withAuthToken);\n module.exports = DirectMessages;\n});\ndefine(\"app/data/direct_messages_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function directMessagesScribe() {\n this.after(\"initialize\", function() {\n this.scribeOnEvent(\"uiDMDialogOpenedNewConversation\", \"open\"), this.scribeOnEvent(\"uiDMDialogOpenedConversation\", \"open\"), this.scribeOnEvent(\"uiDMDialogOpenedConversationList\", \"open\"), this.scribeOnEvent(\"uiDMDialogSendMessage\", \"send_dm\"), this.scribeOnEvent(\"uiDMDialogDeleteMessage\", \"delete\"), this.scribeOnEvent(\"uiDMDialogMarkMessage\", {\n element: \"mark_all_as_read\",\n action: \"click\"\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\"), DirectMessagesScribe = defineComponent(directMessagesScribe, withScribe);\n module.exports = DirectMessagesScribe;\n});\ndefine(\"app/ui/direct_message_link_handler\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function directMessageLinkHandler() {\n this.defaultAttrs({\n dmLinkSelector: \".js-dm-dialog, .dm-button\"\n }), this.JSBNG__openDialog = function(a, b) {\n a.preventDefault();\n var c = $(b.el);\n b = {\n screen_name: c.data(\"screen-name\"),\n JSBNG__name: c.data(\"JSBNG__name\")\n }, this.trigger(\"uiNeedsDMDialog\", b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"click\", {\n dmLinkSelector: this.JSBNG__openDialog\n });\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(directMessageLinkHandler);\n});\ndefine(\"app/ui/with_timestamp_updating\", [\"module\",\"require\",\"exports\",\"core/i18n\",], function(module, require, exports) {\n function withTimestampUpdating() {\n this.defaultAttrs({\n timestampSelector: \".js-relative-timestamp\",\n timestampClass: \"js-relative-timestamp\"\n }), this.monthLabels = [_(\"Jan\"),_(\"Feb\"),_(\"Mar\"),_(\"Apr\"),_(\"May\"),_(\"Jun\"),_(\"Jul\"),_(\"Aug\"),_(\"Sep\"),_(\"Oct\"),_(\"Nov\"),_(\"Dec\"),], this.currentTimeSecs = function() {\n return ((new JSBNG__Date / 1000));\n }, this.timestampParts = function(a) {\n return {\n year4: a.getFullYear().toString(),\n year: a.getFullYear().toString().slice(2),\n month: this.monthLabels[a.getMonth()],\n day: a.getDate(),\n hours24: a.getHours(),\n hours12: ((((a.getHours() % 12)) || 12)),\n minutes: a.getMinutes().toString().replace(/^(\\d)$/, \"0$1\"),\n amPm: ((((a.getHours() < 12)) ? _(\"AM\") : _(\"PM\"))),\n date: a.getDate()\n };\n }, this.updateTimestamps = function() {\n var a = this, b = a.currentTimeSecs();\n this.select(\"timestampSelector\").each(function() {\n var c = $(this), d = c.data(\"time\"), e = ((b - d)), f = \"\", g = !0;\n if (((e <= 2))) {\n f = _(\"now\");\n }\n else {\n if (((e < 60))) f = _(\"{{number}}s\", {\n number: parseInt(e)\n });\n else {\n var h = parseInt(((e / 60)), 10);\n if (((h < 60))) {\n f = _(\"{{number}}m\", {\n number: h\n });\n }\n else {\n if (((h < 1440))) f = _(\"{{number}}h\", {\n number: parseInt(((h / 60)), 10)\n });\n else {\n var i = a.timestampParts(new JSBNG__Date(((d * 1000))));\n g = !1, ((((h < 525600)) ? f = _(\"{{date}} {{month}}\", i) : f = _(\"{{date}} {{month}} {{year}}\", i)));\n }\n ;\n }\n ;\n ;\n }\n ;\n }\n ;\n ;\n ((g || c.removeClass(a.attr.timestampClass))), c.text(f);\n });\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(JSBNG__document, \"uiWantsToRefreshTimestamps uiPageChanged\", this.updateTimestamps);\n });\n };\n;\n var _ = require(\"core/i18n\");\n module.exports = withTimestampUpdating;\n});\ndefine(\"app/ui/direct_message_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_dialog\",\"app/ui/with_position\",\"app/ui/with_timestamp_updating\",\"app/utils/string\",], function(module, require, exports) {\n function directMessageDialog() {\n this.defaultAttrs({\n dialogSelector: \"#dm_dialog\",\n closeSelector: \".twttr-dialog-close\",\n classConversationList: \"dm-conversation-list\",\n classConversation: \"dm-conversation\",\n classNew: \"dm-new\",\n viewConversationList: \"#dm_dialog_conversation_list\",\n viewConversation: \"#dm_dialog_conversation\",\n viewNew: \"#dm_dialog_new\",\n linksForConversationListView: \"#dm_dialog_new h3 a, #dm_dialog_conversation h3 a\",\n linksForConversationView: \".dm-thread\",\n linksForNewView: \".dm-new-button\",\n contentSelector: \".twttr-dialog-content\",\n tweetBoxSelector: \".dm-tweetbox\",\n deleteSelector: \".dm-delete\",\n deleteConfirmSelector: \".dm-deleting .js-prompt-ok\",\n deleteCancelSelector: \".dm-deleting .js-prompt-cancel\",\n autocompleteImage: \"img.selected-profile\",\n autocompleteInput: \"input.twttr-directmessage-input\",\n newConversationEditor: \"#tweet-box-dm-new-conversation\",\n errorContainerSelector: \".js-dm-error\",\n errorTextSelector: \".dm-error-text\",\n errorCloseSelector: \".js-dismiss\",\n markAllReadSelector: \".mark-all-read\",\n markReadConfirmSelector: \".mark-read-confirm .js-prompt-ok\",\n markReadCancelSelector: \".mark-read-confirm .js-prompt-cancel\"\n }), this.JSBNG__openDialog = function(a, b) {\n this.trigger(\"dataRefreshDMs\"), ((((b && b.screen_name)) ? this.renderConversationView(null, b) : this.renderConversationListView())), this.open();\n }, this.renderConversationListView = function(a, b) {\n ((a && a.preventDefault())), this.renderView(this.attr.classConversationList);\n var c = this.select(\"viewConversationList\");\n if (c.hasClass(\"needs-refresh\")) {\n c.removeClass(\"needs-refresh\"), this.trigger(\"uiNeedsDMConversationList\", {\n since_id: 0\n });\n return;\n }\n ;\n ;\n this.trigger(\"uiDMDialogOpenedConversationList\");\n }, this.renderConversationView = function(a, b) {\n this.deleteCancel(), ((a && a.preventDefault()));\n var b = ((b || {\n })), c = ((b.screen_name || $(b.el).attr(\"data-thread-id\"))), d = ((b.JSBNG__name || $(b.el).JSBNG__find(\".fullname\").text()));\n this.lastMessageIdInConversation = $(b.el).attr(\"data-last-message-id\"), this.isConversationUnread = !!$(b.el).JSBNG__find(\".unread\").length, this.$node.JSBNG__find(\".dm_dialog_real_name\").text(d), this.select(\"viewConversation\").JSBNG__find(this.attr.contentSelector).empty(), this.renderView(this.attr.classConversation);\n var e = ((conversationCache[c] || {\n })), f = ((e.data && ((e.lastMessageId == this.lastMessageIdInConversation))));\n ((f ? this.updateConversation(null, e.data) : this.trigger(\"uiNeedsDMConversation\", {\n screen_name: c\n }))), this.resetDMBox();\n }, this.renderNewView = function(a, b) {\n ((a && a.preventDefault()));\n var c = this.select(\"autocompleteImage\").attr(\"data-default-img\");\n this.renderView(this.attr.classNew), this.trigger(\"uiDMDialogOpenedNewConversation\"), this.resetDMBox(), this.select(\"autocompleteImage\").attr(\"src\", c), this.select(\"autocompleteInput\").val(\"\").JSBNG__focus(), ((((b && b.recipient)) && (this.selectAutocompleteUser(null, b.recipient), this.select(\"newConversationEditor\").JSBNG__focus()))), ((this.isOpen() || (this.trigger(\"dataRefreshDMs\"), this.open())));\n }, this.renderView = function(a) {\n this.hideError(), this.markReadCancel(), this.$dialogContainer.removeClass(this.viewClasses).addClass(a), ((this.attr.eventData || (this.attr.eventData = {\n })));\n var b;\n switch (a) {\n case this.attr.classNew:\n b = \"dm_new_conversation_dialog\";\n break;\n case this.attr.classConversation:\n b = \"dm_existing_conversation_dialog\";\n break;\n case this.attr.classConversationList:\n b = \"dm_conversation_list_dialog\";\n };\n ;\n this.attr.eventData.scribeContext = {\n component: b\n };\n }, this.updateConversationList = function(a, b) {\n var c = this.select(\"viewConversationList\"), d = c.JSBNG__find(\"li\");\n ((b.sourceEventData.since_id ? d.filter(function() {\n return (($.inArray($(this).data(\"thread-id\"), b.threads) > -1));\n }).remove() : d.remove()));\n var e = ((b.html || \"\"));\n c.JSBNG__find(((this.attr.contentSelector + \" ul\"))).prepend(e);\n var f = c.JSBNG__find(\".dm-no-messages\");\n ((((c.JSBNG__find(\"li\").length == 0)) ? (f.addClass(\"show\"), this.select(\"markAllReadSelector\").addClass(\"disabled\").attr(\"disabled\", !0)) : (f.removeClass(\"show\"), this.select(\"markAllReadSelector\").removeClass(\"disabled\").attr(\"disabled\", !1)))), this.trigger(\"uiResetDMPoll\"), this.latestMessageId = ((b.last_message_id || -1));\n }, this.updateConversation = function(a, b) {\n ((a && a.preventDefault()));\n var c = ((a && a.type)), d = b.recipient.screen_name;\n conversationCache[d] = {\n data: b,\n lastMessageId: -1\n }, this.$node.JSBNG__find(\".dm_dialog_real_name\").text(((b.recipient && b.recipient.JSBNG__name))), ((this.$dialogContainer.hasClass(this.attr.classConversation) || this.renderConversationView(null, {\n screen_name: d,\n JSBNG__name: b.recipient.JSBNG__name\n })));\n var e = this.select(\"viewConversation\").JSBNG__find(this.attr.contentSelector);\n e.html(b.html), this.trigger(\"uiResetDMPoll\");\n if (!e.JSBNG__find(\".js-dm-item\").length) {\n ((((((c === \"dataDMSuccess\")) && ((b.msgAction == \"delete\")))) ? (this.trigger(\"dataRefreshDMs\"), this.renderConversationListView()) : this.trigger(\"uiOpenNewDM\", {\n recipient: b.recipient\n })));\n return;\n }\n ;\n ;\n this.trigger(\"uiDMDialogOpenedConversation\", {\n recipient: d\n });\n var f = e.JSBNG__find(\".dm-convo\");\n if (f.length) {\n var g = f.JSBNG__find(\".dm\").last().attr(\"data-message-id\");\n conversationCache[d].lastMessageId = g, ((((((this.attr.dmReadStateSync && a)) && ((a.type == \"dataDMConversationResult\")))) && this.initMsgRead(g, b.recipient.id_str))), f.scrollTop(f[0].scrollHeight);\n }\n ;\n ;\n }, this.initMsgRead = function(a, b) {\n var c = ((this.lastMessageIdInConversation && ((StringUtils.compare(this.lastMessageIdInConversation, a) == -1))));\n if (((this.isConversationUnread || c))) {\n this.markMessages(null, {\n messageId: a,\n recipientId: b\n }), this.select(\"viewConversationList\").JSBNG__find(((((\".dm-thread[data-last-message-id=\" + a)) + \"] .dm-thread-status i\"))).removeClass(\"unread\"), this.unreadCount -= this.select(\"viewConversation\").JSBNG__find(\".js-dm-item[data-unread=true]\").length, this.trigger(\"uiReadStateChanged\", {\n msgCount: this.unreadCount\n });\n }\n ;\n ;\n }, this.sendMessage = function(a, b) {\n var c = this.$dialogContainer.hasClass(this.attr.classConversation), d = b.recipient;\n ((((!d && c)) ? d = this.select(\"viewConversation\").JSBNG__find(\"div[data-thread-id]\").data(\"thread-id\") : ((d || (d = this.select(\"viewNew\").JSBNG__find(\"input[type=text]\").val().trim())))));\n if (!d) {\n JSBNG__setTimeout(function() {\n this.sendMessage(a, b);\n }.bind(this), 100);\n return;\n }\n ;\n ;\n this.trigger(\"uiDMDialogSendMessage\", {\n tweetboxId: b.tweetboxId,\n screen_name: d.replace(/^@/, \"\"),\n text: b.tweetData.JSBNG__status\n }), this.resetDMBox(), this.select(\"viewConversationList\").addClass(\"needs-refresh\");\n }, this.selectAutocompleteUser = function(a, b) {\n var c = ((b.item ? b.item.screen_name : b.screen_name)), d = ((b.item ? b.item.JSBNG__name : b.JSBNG__name)), e = this.select(\"viewConversationList\").JSBNG__find(((((\"li[data-thread-id=\" + c)) + \"]\"))).length;\n ((e ? this.renderConversationView(null, {\n screen_name: c,\n JSBNG__name: d\n }) : (this.select(\"autocompleteInput\").val(c), this.select(\"autocompleteImage\").attr(\"src\", this.getUserAvatar(((b.item ? b.item : b)))))));\n }, this.getUserAvatar = function(a) {\n return ((a.profile_image_url_https ? a.profile_image_url_https.replace(/^https?:/, \"\").replace(/_normal(\\..*)?$/i, \"_mini$1\") : null));\n }, this.deleteMessage = function(a, b) {\n this.select(\"tweetBoxSelector\").addClass(\"dm-deleting\").JSBNG__find(\".dm-delete-confirm .js-prompt-ok\").JSBNG__focus(), this.select(\"viewConversation\").JSBNG__find(\".marked-for-deletion\").removeClass(\"marked-for-deletion\"), $(a.target).closest(\".dm\").addClass(\"marked-for-deletion\");\n }, this.deleteConfirm = function(a, b) {\n var c = this.select(\"viewConversation\").JSBNG__find(\".marked-for-deletion\");\n this.trigger(\"uiDMDialogDeleteMessage\", {\n id: c.attr(\"data-message-id\")\n }), this.select(\"viewConversationList\").addClass(\"needs-refresh\"), this.select(\"tweetBoxSelector\").removeClass(\"dm-deleting\");\n }, this.deleteCancel = function(a, b) {\n this.select(\"tweetBoxSelector\").removeClass(\"dm-deleting\"), this.select(\"viewConversation\").JSBNG__find(\".marked-for-deletion\").removeClass(\"marked-for-deletion\");\n }, this.markMessages = function(a, b) {\n this.trigger(\"dataMarkDMsAsRead\", {\n last_message_id: ((b.messageId || this.latestMessageId)),\n recipient_id: b.recipientId\n });\n }, this.markAllMessages = function(a, b) {\n this.markMessages(a, b), this.trigger(\"uiDMDialogMarkMessage\"), this.trigger(\"uiReadStateChanged\", {\n msgCount: 0\n });\n }, this.updateReadState = function(a, b) {\n if (b.implicitMark) {\n this.trigger(\"uiDMPoll\");\n return;\n }\n ;\n ;\n this.select(\"viewConversationList\").addClass(\"needs-refresh\"), ((this.$dialogContainer.hasClass(this.attr.classConversationList) && this.JSBNG__openDialog()));\n }, this.refreshDMList = function(a, b) {\n ((((((((b && b.d)) && ((b.d.JSBNG__status === \"ok\")))) && ((b.d.response != null)))) && (((((((((this.unreadCount != b.d.response)) && this.$dialogContainer.is(\":visible\"))) && this.$dialogContainer.hasClass(this.attr.classConversationList))) && this.trigger(\"dataRefreshDMs\"))), this.unreadCount = b.d.response)));\n }, this.showMarkReadConfirm = function(a, b) {\n ((a && a.preventDefault()));\n if (this.select(\"markAllReadSelector\").hasClass(\"disabled\")) {\n return;\n }\n ;\n ;\n this.select(\"viewConversationList\").addClass(\"show-mark-read\");\n }, this.markReadCancel = function(a, b) {\n this.select(\"viewConversationList\").removeClass(\"show-mark-read\");\n }, this.showError = function(a, b) {\n this.select(\"errorTextSelector\").html(((b.message || b.error))), this.select(\"errorContainerSelector\").show();\n }, this.hideError = function(a, b) {\n this.select(\"errorContainerSelector\").hide();\n }, this.resetDMBox = function() {\n this.select(\"tweetBoxSelector\").trigger(\"uiDMBoxReset\");\n }, this.after(\"initialize\", function() {\n this.$dialogContainer = this.select(\"dialogSelector\"), this.viewClasses = [this.attr.classConversationList,this.attr.classConversation,this.attr.classNew,].join(\" \"), this.JSBNG__on(JSBNG__document, \"uiNeedsDMDialog\", this.JSBNG__openDialog), this.JSBNG__on(JSBNG__document, \"uiOpenNewDM\", this.renderNewView), this.JSBNG__on(JSBNG__document, \"dataDMConversationListResult\", this.updateConversationList), this.JSBNG__on(JSBNG__document, \"dataDMSuccess dataDMConversationResult\", this.updateConversation), this.JSBNG__on(JSBNG__document, \"uiSendDM\", this.sendMessage), this.JSBNG__on(JSBNG__document, \"dataDMError\", this.showError), this.JSBNG__on(\"uiTypeaheadItemSelected uiTypeaheadItemComplete\", this.selectAutocompleteUser), this.JSBNG__on(JSBNG__document, \"dataDMReadSuccess\", this.updateReadState), this.JSBNG__on(JSBNG__document, \"dataNotificationsReceived\", this.refreshDMList), this.JSBNG__on(\"click\", {\n linksForConversationListView: this.renderConversationListView,\n linksForConversationView: this.renderConversationView,\n linksForNewView: this.renderNewView,\n deleteSelector: this.deleteMessage,\n deleteConfirmSelector: this.deleteConfirm,\n deleteCancelSelector: this.deleteCancel,\n errorCloseSelector: this.hideError,\n markAllReadSelector: this.showMarkReadConfirm,\n markReadConfirmSelector: this.markAllMessages,\n markReadCancelSelector: this.markReadCancel\n }), this.unreadCount = 0;\n });\n };\n;\n var defineComponent = require(\"core/component\"), withDialog = require(\"app/ui/with_dialog\"), withPosition = require(\"app/ui/with_position\"), withTimestampUpdating = require(\"app/ui/with_timestamp_updating\"), StringUtils = require(\"app/utils/string\"), DirectMessageDialog = defineComponent(directMessageDialog, withDialog, withPosition, withTimestampUpdating), conversationCache = {\n };\n module.exports = DirectMessageDialog;\n});\ndefine(\"app/boot/direct_messages\", [\"module\",\"require\",\"exports\",\"app/data/direct_messages\",\"app/data/direct_messages_scribe\",\"app/ui/direct_message_link_handler\",\"app/ui/typeahead/typeahead_dropdown\",\"app/ui/typeahead/typeahead_input\",\"app/ui/direct_message_dialog\",\"app/ui/tweet_box\",\"core/utils\",], function(module, require, exports) {\n function initialize(a) {\n DirectMessagesData.attachTo(JSBNG__document, a), DirectMessagesScribe.attachTo(JSBNG__document, a), DirectMessageLinkHandler.attachTo(JSBNG__document, a), DirectMessageDialog.attachTo(\"#dm_dialog\", a);\n var b = {\n scribeContext: {\n component: \"tweet_box_dm\"\n }\n };\n TweetBox.attachTo(\"#dm_dialog form.tweet-form\", {\n eventParams: {\n type: \"DM\"\n },\n suppressFlashMessage: !0,\n eventData: b\n }), TypeaheadInput.attachTo(\"#dm_dialog_new .dm-dialog-content\", {\n inputSelector: \"input.twttr-directmessage-input\",\n eventData: b\n }), TypeaheadDropdown.attachTo(\"#dm_dialog_new .dm-dialog-content\", {\n inputSelector: \"input.twttr-directmessage-input\",\n datasourceRenders: [[\"accounts\",[\"dmAccounts\",],],],\n blockLinkActions: !0,\n deciders: utils.merge(a.typeaheadData, {\n showSocialContext: a.typeaheadData.showDMAccountSocialContext\n }),\n eventData: b\n });\n };\n;\n var DirectMessagesData = require(\"app/data/direct_messages\"), DirectMessagesScribe = require(\"app/data/direct_messages_scribe\"), DirectMessageLinkHandler = require(\"app/ui/direct_message_link_handler\"), TypeaheadDropdown = require(\"app/ui/typeahead/typeahead_dropdown\"), TypeaheadInput = require(\"app/ui/typeahead/typeahead_input\"), DirectMessageDialog = require(\"app/ui/direct_message_dialog\"), TweetBox = require(\"app/ui/tweet_box\"), utils = require(\"core/utils\"), hasDialog = !!$(\"#dm_dialog\").length;\n module.exports = ((hasDialog ? initialize : $.noop));\n});\ndefine(\"app/data/profile_popup\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function profilePopupData() {\n this.defaultAttrs({\n noShowError: !0\n }), this.userCache = {\n screenNames: Object.create(null),\n ids: Object.create(null)\n }, this.socialProofCache = {\n screenNames: Object.create(null),\n ids: Object.create(null)\n }, this.saveToCache = function(a, b) {\n a.ids[b.user_id] = b, a.screenNames[b.screen_name] = b;\n }, this.retrieveFromCache = function(a, b) {\n var c;\n return ((b.userId ? c = a.ids[b.userId] : ((b.user_id ? c = a.ids[b.user_id] : ((b.screenName ? c = a.screenNames[b.screenName] : ((b.screen_name && (c = a.screenNames[b.screen_name]))))))))), c;\n }, this.invalidateCaches = function(a, b) {\n var c, d, e;\n ((b.userId ? (c = b.userId, e = this.userCache.ids[c], d = ((e && e.screen_name))) : (d = b.screenName, e = this.userCache.screenNames[d], c = ((e && e.user_id))))), ((c && delete this.userCache.ids[c])), ((c && delete this.socialProofCache.ids[c])), ((d && delete this.userCache.screenNames[d])), ((d && delete this.socialProofCache.screenNames[d]));\n }, this.getSocialProof = function(a, b) {\n if (((!this.attr.asyncSocialProof || !this.attr.loggedIn))) {\n return;\n }\n ;\n ;\n var c = function(a) {\n this.saveToCache(this.socialProofCache, a);\n var b = this.retrieveFromCache(this.userCache, a);\n ((b && this.trigger(\"dataSocialProofSuccess\", a)));\n }.bind(this), d = function(a) {\n this.trigger(\"dataSocialProofFailure\", a);\n }.bind(this), e = this.retrieveFromCache(this.socialProofCache, a);\n if (e) {\n e.sourceEventData = a, c(e);\n return;\n }\n ;\n ;\n this.get({\n url: \"/i/profiles/social_proof\",\n data: b,\n eventData: a,\n cache: !1,\n success: c,\n error: d\n });\n }, this.getProfilePopupMain = function(a, b) {\n var c = function(a) {\n this.saveToCache(this.userCache, a), this.trigger(\"dataProfilePopupSuccess\", a);\n var b = this.retrieveFromCache(this.socialProofCache, a);\n ((b && this.trigger(\"dataSocialProofSuccess\", b)));\n }.bind(this), d = function(a) {\n this.trigger(\"dataProfilePopupFailure\", a);\n }.bind(this), e = this.retrieveFromCache(this.userCache, a);\n if (e) {\n e.sourceEventData = a, c(e);\n return;\n }\n ;\n ;\n this.get({\n url: \"/i/profiles/popup\",\n data: b,\n eventData: a,\n cache: !1,\n success: c,\n error: d\n });\n }, this.getProfilePopup = function(a, b) {\n var c = {\n };\n ((b.screenName ? c.screen_name = b.screenName : ((b.userId && (c.user_id = b.userId))))), ((this.attr.asyncSocialProof && (c.async_social_proof = !0))), this.getSocialProof(b, c), this.getProfilePopupMain(b, c);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiWantsProfilePopup\", this.getProfilePopup), this.JSBNG__on(JSBNG__document, \"dataFollowStateChange dataUserActionSuccess\", this.invalidateCaches);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), ProfilePopupData = defineComponent(profilePopupData, withData);\n module.exports = ProfilePopupData;\n});\ndefine(\"app/data/profile_popup_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_interaction_data_scribe\",\"app/data/client_event\",], function(module, require, exports) {\n function profilePopupScribe() {\n this.defaultAttrs({\n scribeContext: {\n component: \"profile_dialog\"\n }\n }), this.scribeProfilePopupOpen = function(a, b) {\n if (((((this.clientEvent.scribeContext.page != \"profile\")) || !this.clientEvent.scribeData.profile_id))) {\n this.clientEvent.scribeData.profile_id = b.user_id;\n }\n ;\n ;\n var c = utils.merge(this.attr.scribeContext, {\n action: \"open\"\n });\n this.scribe(c, b);\n }, this.cleanupProfilePopupScribing = function(a, b) {\n ((((this.clientEvent.scribeData.profile_id && ((this.clientEvent.scribeContext.page != \"profile\")))) && delete this.clientEvent.scribeData.profile_id));\n }, this.scribePopupSocialProof = function(a, b) {\n var c = utils.merge(this.attr.scribeContext, {\n element: \"social_proof\",\n action: \"impression\"\n });\n this.scribe(c, b);\n }, this.after(\"initialize\", function() {\n this.clientEvent = clientEvent, this.JSBNG__on(JSBNG__document, \"dataProfilePopupSuccess\", this.scribeProfilePopupOpen), this.JSBNG__on(JSBNG__document, \"uiCloseProfilePopup\", this.cleanupProfilePopupScribing), this.JSBNG__on(JSBNG__document, \"uiHasPopupSocialProof\", this.scribePopupSocialProof);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withInteractionDataScribe = require(\"app/data/with_interaction_data_scribe\"), clientEvent = require(\"app/data/client_event\");\n module.exports = defineComponent(profilePopupScribe, withInteractionDataScribe);\n});\ndefine(\"app/ui/with_user_actions\", [\"module\",\"require\",\"exports\",\"core/compose\",\"core/i18n\",\"core/utils\",\"app/data/ddg\",\"app/ui/with_interaction_data\",\"app/utils/string\",], function(module, require, exports) {\n function withUserActions() {\n compose.mixin(this, [withInteractionData,]), this.defaultAttrs({\n followButtonSelector: \".follow-button, .follow-link\",\n emailFollowButtonSelector: \".email-follow-button\",\n userInfoSelector: \".user-actions\",\n dropdownSelector: \".user-dropdown\",\n dropdownItemSelector: \".user-dropdown li\",\n dropdownMenuSelector: \".dropdown-menu\",\n dropdownThresholdSelector: \".dropdown-threshold\",\n followStates: [\"not-following\",\"following\",\"blocked\",\"pending\",],\n userActionClassesToEvents: {\n \"mention-text\": [\"uiMentionAction\",\"mentionUser\",],\n \"dm-text\": [\"uiDmAction\",\"dmUser\",],\n \"list-text\": [\"uiListAction\",],\n \"block-text\": [\"uiBlockAction\",],\n \"unblock-text\": [\"uiUnblockAction\",],\n \"report-spam-text\": [\"uiReportSpamAction\",],\n \"hide-suggestion-text\": [\"uiHideSuggestionAction\",],\n \"retweet-on-text\": [\"uiRetweetOnAction\",],\n \"retweet-off-text\": [\"uiRetweetOffAction\",],\n \"device-notifications-on-text\": [\"uiDeviceNotificationsOnAction\",\"deviceNotificationsOn\",],\n \"device-notifications-off-text\": [\"uiDeviceNotificationsOffAction\",],\n \"embed-profile\": [\"uiEmbedProfileAction\",\"redirectToEmbedProfile\",],\n \"email-follow-text\": [\"uiEmailFollowAction\",],\n \"email-unfollow-text\": [\"uiEmailUnfollowAction\",]\n }\n }), this.getClassNameFromList = function(a, b) {\n var c = b.filter(function(b) {\n return a.hasClass(b);\n });\n return ((((c.length > 1)) && JSBNG__console.log(\"Element has more than one mutually exclusive class.\", c))), c[0];\n }, this.getUserActionEventNameAndMethod = function(a) {\n var b = this.getClassNameFromList(a, Object.keys(this.attr.userActionClassesToEvents));\n return this.attr.userActionClassesToEvents[b];\n }, this.getFollowState = function(a) {\n return this.getClassNameFromList(a, this.attr.followStates);\n }, this.getInfoElementFromEvent = function(a) {\n var b = $(a.target);\n return b.closest(this.attr.userInfoSelector);\n }, this.findInfoElementForUser = function(a) {\n var b = ((((((this.attr.userInfoSelector + \"[data-user-id=\")) + StringUtils.parseBigInt(a))) + \"]\"));\n return this.$node.JSBNG__find(b);\n }, this.getEventName = function(a) {\n var b = {\n \"not-following\": \"uiFollowAction\",\n following: \"uiUnfollowAction\",\n blocked: \"uiUnblockAction\",\n pending: \"uiCancelFollowRequestAction\"\n };\n return b[a];\n }, this.addCancelHoverStyleClass = function(a) {\n a.addClass(\"cancel-hover-style\"), a.one(\"mouseleave\", function() {\n a.removeClass(\"cancel-hover-style\");\n });\n }, this.handleFollowButtonClick = function(a) {\n a.preventDefault(), a.stopPropagation(), this.hideDropdown();\n var b = this.getInfoElementFromEvent(a), c = $(a.target).closest(this.attr.followButtonSelector);\n this.addCancelHoverStyleClass(c);\n var d = this.getFollowState(b);\n ((((((d == \"not-following\")) && ((b.attr(\"data-protected\") == \"true\")))) && this.trigger(\"uiShowMessage\", {\n message: _(\"A follow request has been sent to @{{screen_name}} and is pending their approval.\", {\n screen_name: b.attr(\"data-screen-name\")\n })\n })));\n var e = this.getEventName(d), f = {\n originalFollowState: d\n };\n this.trigger(e, this.interactionData(a, f));\n }, this.handleEmailFollowButtonClick = function(a) {\n a.preventDefault();\n var b = this.getInfoElementFromEvent(a), c = $(a.target).closest(this.attr.emailFollowButtonSelector);\n this.addCancelHoverStyleClass(c), ((b.hasClass(\"email-following\") ? this.trigger(\"uiEmailUnfollowAction\", this.interactionData(a)) : this.trigger(\"uiEmailFollowAction\", this.interactionData(a))));\n }, this.handleLoggedOutFollowButtonClick = function(a) {\n a.stopPropagation(), this.hideDropdown(), this.trigger(\"uiOpenSigninOrSignupDialog\", {\n signUpOnly: !0,\n screenName: this.getInfoElementFromEvent(a).attr(\"data-screen-name\")\n });\n }, this.handleUserAction = function(a) {\n a.stopPropagation();\n var b = $(a.target), c = this.getInfoElementFromEvent(a), d = this.getUserActionEventNameAndMethod(b), e = d[0], f = d[1], g = this.getFollowState(c), h = {\n originalFollowState: g\n };\n ((f && (h = this[f](c, e, h)))), ((h && this.trigger(e, this.interactionData(a, h))));\n }, this.deviceNotificationsOn = function(a, b, c) {\n return ((this.attr.deviceEnabled ? c : (((((this.attr.smsDeviceVerified || this.attr.hasPushDevice)) ? this.trigger(\"uiOpenConfirmDialog\", {\n titleText: _(\"Enable mobile notifications for Tweets\"),\n bodyText: _(\"Before you can receive mobile notifications for @{{screenName}}'s Tweets, you need to enable the Tweet notification setting.\", {\n screenName: a.attr(\"data-screen-name\")\n }),\n cancelText: _(\"Close\"),\n submitText: _(\"Enable Tweet notifications\"),\n action: ((this.attr.hasPushDevice ? \"ShowPushTweetsNotifications\" : \"ShowMobileNotifications\")),\n JSBNG__top: this.attr.JSBNG__top\n }) : this.trigger(\"uiOpenConfirmDialog\", {\n titleText: _(\"Setup mobile notifications\"),\n bodyText: _(\"Before you can receive mobile notifications for @{{screenName}}'s Tweets, you need to set up your phone.\", {\n screenName: a.attr(\"data-screen-name\")\n }),\n cancelText: _(\"Cancel\"),\n submitText: _(\"Set up phone\"),\n action: \"ShowMobileNotifications\",\n JSBNG__top: this.attr.JSBNG__top\n }))), !1)));\n }, this.redirectToMobileNotifications = function() {\n window.JSBNG__location = \"/settings/devices\";\n }, this.redirectToPushNotificationsHelp = function() {\n window.JSBNG__location = \"//support.twitter.com/articles/20169887\";\n }, this.redirectToEmbedProfile = function(a, b, c) {\n return this.trigger(\"uiNavigate\", {\n href: ((\"/settings/widgets/new/user?screen_name=\" + a.attr(\"data-screen-name\")))\n }), !0;\n }, this.mentionUser = function(a, b, c) {\n this.trigger(\"uiOpenTweetDialog\", {\n screenName: a.attr(\"data-screen-name\"),\n title: _(\"Tweet to {{name}}\", {\n JSBNG__name: a.attr(\"data-name\")\n })\n });\n }, this.dmUser = function(a, b, c) {\n return this.trigger(\"uiNeedsDMDialog\", {\n screen_name: a.attr(\"data-screen-name\"),\n JSBNG__name: a.attr(\"data-name\")\n }), c;\n }, this.hideSuggestion = function(a, b, c) {\n return utils.merge(c, {\n feedbackToken: a.attr(\"data-feedback-token\")\n });\n }, this.followStateChange = function(a, b) {\n this.updateFollowState(b.userId, b.newState), ((b.fromShortcut && ((((b.newState === \"not-following\")) ? this.trigger(\"uiShowMessage\", {\n message: _(\"You have unblocked {{username}}\", {\n username: b.username\n })\n }) : ((((b.newState === \"blocked\")) && this.trigger(\"uiUpdateAfterBlock\", {\n userId: b.userId\n })))))));\n }, this.updateFollowState = function(a, b) {\n var c = this.findInfoElementForUser(a), d = this.getFollowState(c);\n ((d && c.removeClass(d))), c.addClass(b);\n }, this.follow = function(a, b) {\n var c = this.findInfoElementForUser(b.userId), d = ((c.data(\"protected\") ? \"pending\" : \"following\"));\n this.updateFollowState(b.userId, d), c.addClass(\"including\");\n }, this.unfollow = function(a, b) {\n var c = this.findInfoElementForUser(b.userId);\n this.updateFollowState(b.userId, \"not-following\"), c.removeClass(\"including notifying email-following\");\n }, this.cancel = function(a, b) {\n var c = this.findInfoElementForUser(b.userId);\n this.updateFollowState(b.userId, \"not-following\");\n }, this.block = function(a, b) {\n var c = this.findInfoElementForUser(b.userId);\n this.updateFollowState(b.userId, \"blocked\"), c.removeClass(\"including notifying email-following\");\n }, this.unblock = function(a, b) {\n this.updateFollowState(b.userId, \"not-following\");\n }, this.retweetsOn = function(a, b) {\n var c = this.findInfoElementForUser(b.userId);\n c.addClass(\"including\");\n }, this.retweetsOff = function(a, b) {\n var c = this.findInfoElementForUser(b.userId);\n c.removeClass(\"including\");\n }, this.notificationsOn = function(a, b) {\n var c = this.findInfoElementForUser(b.userId);\n c.addClass(\"notifying\");\n }, this.notificationsOff = function(a, b) {\n var c = this.findInfoElementForUser(b.userId);\n c.removeClass(\"notifying\");\n }, this.toggleDropdown = function(a) {\n a.stopPropagation();\n var b = $(a.target).closest(this.attr.dropdownSelector);\n ((b.hasClass(\"open\") ? this.hideDropdown() : (ddg.impression(\"mobile_notifications_tweaks_608\"), this.showDropdown(b))));\n }, this.showDropdown = function(a) {\n this.trigger(\"click.dropdown\"), a.addClass(\"open\");\n var b = a.closest(this.attr.dropdownThresholdSelector);\n if (b.length) {\n var c = a.JSBNG__find(this.attr.dropdownMenuSelector), d = ((((c.offset().JSBNG__top + c.JSBNG__outerHeight())) - ((b.offset().JSBNG__top + b.height()))));\n ((((d > 0)) && b.animate({\n scrollTop: ((b.scrollTop() + d))\n })));\n }\n ;\n ;\n this.JSBNG__on(JSBNG__document, \"click.dropdown\", this.hideDropdown);\n }, this.hideDropdown = function() {\n var a = $(\"body\").JSBNG__find(this.attr.dropdownSelector);\n a.removeClass(\"open\"), this.off(JSBNG__document, \"click.dropdown\", this.hideDropdown);\n }, this.blockUserConfirmed = function(a, b) {\n a.stopImmediatePropagation(), this.trigger(\"uiBlockAction\", b.sourceEventData);\n }, this.emailFollow = function(a, b) {\n var c = this.findInfoElementForUser(b.userId);\n c.addClass(\"email-following\");\n }, this.emailUnfollow = function(a, b) {\n var c = this.findInfoElementForUser(b.userId);\n c.removeClass(\"email-following\");\n }, this.after(\"initialize\", function() {\n if (!this.attr.loggedIn) {\n this.JSBNG__on(\"click\", {\n followButtonSelector: this.handleLoggedOutFollowButtonClick\n });\n return;\n }\n ;\n ;\n this.JSBNG__on(\"click\", {\n followButtonSelector: this.handleFollowButtonClick,\n emailFollowButtonSelector: this.handleEmailFollowButtonClick,\n dropdownSelector: this.toggleDropdown,\n dropdownItemSelector: this.handleUserAction\n }), this.JSBNG__on(JSBNG__document, \"uiFollowStateChange dataFollowStateChange dataBulkFollowStateChange\", this.followStateChange), this.JSBNG__on(JSBNG__document, \"uiFollowAction\", this.follow), this.JSBNG__on(JSBNG__document, \"uiUnfollowAction\", this.unfollow), this.JSBNG__on(JSBNG__document, \"uiCancelFollowRequestAction\", this.cancel), this.JSBNG__on(JSBNG__document, \"uiBlockAction uiReportSpamAction\", this.block), this.JSBNG__on(JSBNG__document, \"uiUnblockAction\", this.unblock), this.JSBNG__on(JSBNG__document, \"uiRetweetOnAction dataRetweetOnAction\", this.retweetsOn), this.JSBNG__on(JSBNG__document, \"uiRetweetOffAction dataRetweetOffAction\", this.retweetsOff), this.JSBNG__on(JSBNG__document, \"uiDeviceNotificationsOnAction dataDeviceNotificationsOnAction\", this.notificationsOn), this.JSBNG__on(JSBNG__document, \"uiDeviceNotificationsOffAction dataDeviceNotificationsOffAction\", this.notificationsOff), this.JSBNG__on(JSBNG__document, \"uiShowMobileNotificationsConfirm\", this.redirectToMobileNotifications), this.JSBNG__on(JSBNG__document, \"uiShowPushTweetsNotificationsConfirm\", this.redirectToPushNotificationsHelp), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.hideDropdown), this.JSBNG__on(JSBNG__document, \"uiDidBlockUser\", this.blockUserConfirmed), this.JSBNG__on(JSBNG__document, \"uiEmailFollowAction dataEmailFollow\", this.emailFollow), this.JSBNG__on(JSBNG__document, \"uiEmailUnfollowAction dataEmailUnfollow\", this.emailUnfollow);\n });\n };\n;\n var compose = require(\"core/compose\"), _ = require(\"core/i18n\"), utils = require(\"core/utils\"), ddg = require(\"app/data/ddg\"), withInteractionData = require(\"app/ui/with_interaction_data\"), StringUtils = require(\"app/utils/string\");\n module.exports = withUserActions;\n});\ndefine(\"app/ui/with_item_actions\", [\"module\",\"require\",\"exports\",\"core/utils\",\"core/compose\",\"app/data/user_info\",\"app/data/ddg\",\"app/ui/with_interaction_data\",\"app/data/with_card_metadata\",], function(module, require, exports) {\n function withItemActions() {\n compose.mixin(this, [withInteractionData,withCardMetadata,]), this.defaultAttrs({\n pageContainer: \"#doc\",\n nestedContainerSelector: \".js-stream-item .in-reply-to, .js-expansion-container\",\n showWithScreenNameSelector: \".show-popup-with-screen-name, .twitter-atreply\",\n showWithIdSelector: \".show-popup-with-id, .js-user-profile-link\",\n searchtagSelector: \".twitter-hashtag, .twitter-cashtag\",\n cashtagSelector: \".twitter-cashtag\",\n itemLinkSelector: \".twitter-timeline-link\",\n cardInteractionLinkSelector: \".js-card2-interaction-link\",\n cardExternalLinkSelector: \".js-card2-external-link\",\n viewMoreItemSelector: \".view-more-container\"\n }), this.showProfilePopupWithScreenName = function(a, b) {\n var c = $(a.target).closest(this.attr.showWithScreenNameSelector).text();\n ((((c[0] === \"@\")) && (c = c.substring(1))));\n var d = {\n screenName: c\n }, e = this.getCardDataFromTweet($(a.target));\n b = utils.merge(this.interactionData(a, d), e), this.showProfile(a, b);\n }, this.showProfilePopupWithId = function(a, b) {\n var c = this.getCardDataFromTweet($(a.target));\n b = utils.merge(this.interactionDataWithCard(a), c), this.showProfile(a, b);\n }, this.showProfile = function(a, b) {\n ((((this.skipProfilePopup() || this.modifierKey(a))) ? this.trigger(a.target, \"uiShowProfileNewWindow\", b) : (a.preventDefault(), this.trigger(\"uiShowProfilePopup\", b))));\n }, this.searchtagClick = function(a, b) {\n var c = $(a.target), d = c.closest(this.attr.searchtagSelector), e = ((d.is(this.attr.cashtagSelector) ? \"uiCashtagClick\" : \"uiHashtagClick\")), f = {\n query: d.text()\n };\n this.trigger(e, this.interactionData(a, f));\n }, this.itemLinkClick = function(a, b) {\n var c = $(a.target).closest(this.attr.itemLinkSelector), d, e = {\n url: ((c.attr(\"data-expanded-url\") || c.attr(\"href\"))),\n tcoUrl: c.attr(\"href\"),\n text: c.text()\n };\n e = utils.merge(e, this.getCardDataFromTweet($(a.target)));\n if (((((e.cardName === \"promotion\")) || ((e.cardType === \"promotions\"))))) {\n a.preventDefault(), d = c.parents(\".stream-item\"), this.trigger(d, \"uiPromotionCardUrlClick\");\n }\n ;\n ;\n this.trigger(\"uiItemLinkClick\", this.interactionData(a, e));\n }, this.cardLinkClick = function(a, b, c) {\n var d = $(b.target).closest(this.attr.cardLinkSelector), e = this.getCardDataFromTweet($(b.target));\n this.trigger(a, this.interactionDataWithCard(b, e));\n }, this.getUserIdFromElement = function(a) {\n return ((a.length ? a.data(\"user-id\") : null));\n }, this.itemSelected = function(a, b) {\n var c = this.getCardDataFromTweet($(a.target));\n ((b.organicExpansion && this.trigger(\"uiItemSelected\", utils.merge(this.interactionData(a), c))));\n }, this.itemDeselected = function(a, b) {\n var c = this.getCardDataFromTweet($(a.target));\n this.trigger(\"uiItemDeselected\", utils.merge(this.interactionData(a), c));\n }, this.isNested = function() {\n return this.$node.closest(this.attr.nestedContainerSelector).length;\n }, this.inDisabledPopupExperiment = function(a) {\n var b = \"web_profile\", c = \"disable_profile_popup_848\", d = ((userInfo.getExperimentGroup(b) || userInfo.getExperimentGroup(c)));\n return ((((d && ((d.experiment_key == c)))) && ((d.bucket == a))));\n }, this.skipProfilePopup = function() {\n var a = ((!!window.JSBNG__history && !!JSBNG__history.pushState)), b = ((a && userInfo.getDecider(\"pushState\"))), c = $(this.attr.pageContainer), d = c.hasClass(\"route-home\"), e = ((((c.hasClass(\"route-profile\") || c.hasClass(\"route-list\"))) || c.hasClass(\"route-permalink\"))), f = ((e && ((this.inDisabledPopupExperiment(\"disabled_on_prof_and_perma\") || this.inDisabledPopupExperiment(\"disabled_on_home_prof_and_perma\"))))), g = ((((d && b)) && this.inDisabledPopupExperiment(\"disabled_on_home_prof_and_perma\")));\n return ((f || g));\n }, this.modifierKey = function(a) {\n if (((((((a.shiftKey || a.ctrlKey)) || a.metaKey)) || ((a.which > 1))))) {\n return !0;\n }\n ;\n ;\n }, this.removeTweetsFromUser = function(a, b) {\n var c = this.$node.JSBNG__find(((((\"[data-user-id=\" + b.userId)) + \"]\")));\n c.parent().remove(), this.trigger(\"uiRemovedSomeTweets\");\n }, this.navigateToViewMoreURL = function(a) {\n var b = $(a.target), c;\n ((b.JSBNG__find(this.attr.viewMoreItemSelector).length && (c = b.JSBNG__find(\".view-more-link\"), this.trigger(c, \"uiNavigate\", {\n href: c.attr(\"href\")\n }))));\n }, this.after(\"initialize\", function() {\n ((this.isNested() || (this.JSBNG__on(\"click\", {\n showWithScreenNameSelector: this.showProfilePopupWithScreenName,\n showWithIdSelector: this.showProfilePopupWithId,\n searchtagSelector: this.searchtagClick,\n itemLinkSelector: this.itemLinkClick,\n cardExternalLinkSelector: this.cardLinkClick.bind(this, \"uiCardExternalLinkClick\"),\n cardInteractionLinkSelector: this.cardLinkClick.bind(this, \"uiCardInteractionLinkClick\")\n }), this.JSBNG__on(\"uiHasExpandedTweet\", this.itemSelected), this.JSBNG__on(\"uiHasCollapsedTweet\", this.itemDeselected), this.JSBNG__on(\"uiRemoveTweetsFromUser\", this.removeTweetsFromUser), this.JSBNG__on(\"uiShortcutEnter\", this.navigateToViewMoreURL))));\n });\n };\n;\n var utils = require(\"core/utils\"), compose = require(\"core/compose\"), userInfo = require(\"app/data/user_info\"), ddg = require(\"app/data/ddg\"), withInteractionData = require(\"app/ui/with_interaction_data\"), withCardMetadata = require(\"app/data/with_card_metadata\");\n module.exports = withItemActions;\n});\ndefine(\"app/ui/with_profile_stats\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withProfileStats() {\n this.defaultAttrs({\n }), this.updateProfileStats = function(a, b) {\n if (((!b.stats || !b.stats.length))) {\n return;\n }\n ;\n ;\n $.each(b.stats, function(a, b) {\n this.$node.JSBNG__find(this.statSelector(b.user_id, b.stat)).html(b.html);\n }.bind(this));\n }, this.statSelector = function(a, b) {\n return ((((((((\".stats[data-user-id=\\\"\" + a)) + \"\\\"] a[data-element-term=\\\"\")) + b)) + \"_stats\\\"]\"));\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(JSBNG__document, \"dataGotProfileStats\", this.updateProfileStats);\n });\n };\n;\n module.exports = withProfileStats;\n});\ndefine(\"app/ui/with_handle_overflow\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withHandleOverflow() {\n this.defaultAttrs({\n heightOverflowClassName: \"height-overflow\"\n }), this.checkForOverflow = function(a) {\n a = ((a || this.$node));\n if (((!a || !a.length))) {\n return;\n }\n ;\n ;\n ((((a[0].scrollHeight > a.height())) ? a.addClass(this.attr.heightOverflowClassName) : a.removeClass(this.attr.heightOverflowClassName)));\n };\n };\n;\n module.exports = withHandleOverflow;\n});\ndefine(\"app/ui/profile_popup\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_dialog\",\"app/ui/with_position\",\"app/ui/with_user_actions\",\"app/ui/with_item_actions\",\"app/ui/with_profile_stats\",\"app/ui/with_handle_overflow\",], function(module, require, exports) {\n function profilePopup() {\n this.defaultAttrs({\n modalSelector: \".modal\",\n dialogContentSelector: \".profile-modal\",\n profileHeaderInnerSelector: \".profile-header-inner\",\n socialProofSelector: \".social-proof\",\n tweetSelector: \".simple-tweet\",\n slideDuration: 100,\n JSBNG__top: 47,\n bottom: 10,\n tweetMinimum: 2,\n itemType: \"user\"\n }), this.slideInContent = function(a) {\n var b = this.$dialog.height(), c = $(a);\n this.addHeaderImage(c), this.$contentContainer.html(c), this.$node.addClass(\"has-content\"), this.removeTweets();\n var d = this.$dialog.height();\n this.$dialog.height(b), this.$dialog.animate({\n height: d\n }, this.attr.slideDuration, this.slideInComplete.bind(this));\n }, this.removeTweets = function() {\n var a = this.select(\"tweetSelector\");\n for (var b = ((a.length - 1)); ((b > ((this.attr.tweetMinimum - 1)))); b--) {\n if (!this.isTooTall()) {\n return;\n }\n ;\n ;\n a.eq(b).remove();\n };\n ;\n }, this.getWindowHeight = function() {\n return $(window).height();\n }, this.isTooTall = function() {\n return ((((((this.$dialog.height() + this.attr.JSBNG__top)) + this.attr.bottom)) > this.getWindowHeight()));\n }, this.addHeaderImage = function(a) {\n var b = a.JSBNG__find(this.attr.profileHeaderInnerSelector);\n b.css(\"background-image\", b.attr(\"data-background-image\"));\n }, this.slideInComplete = function() {\n this.checkForOverflow(this.select(\"profileHeaderInnerSelector\"));\n }, this.clearPopup = function() {\n this.$dialog.height(\"auto\"), this.$contentContainer.empty();\n }, this.openProfilePopup = function(a, b) {\n ((b.screenName && delete b.userId));\n if (((((b.userId && ((b.userId === this.currentUserId())))) || ((b.screenName && ((b.screenName === this.currentScreenName()))))))) {\n return;\n }\n ;\n ;\n this.open(), this.clearPopup(), this.$node.removeClass(\"has-content\"), this.$node.attr(\"data-associated-tweet-id\", ((b.tweetId || null))), this.$node.attr(\"data-impression-id\", ((b.impressionId || null))), this.$node.attr(\"data-disclosure-type\", ((b.disclosureType || null))), this.$node.attr(\"data-impression-cookie\", ((b.impressionCookie || null))), this.trigger(\"uiWantsProfilePopup\", b);\n }, this.closeProfilePopup = function(a) {\n this.clearPopup(), this.trigger(\"uiCloseProfilePopup\", {\n userId: this.currentUserId(),\n screenName: this.currentScreenName()\n });\n }, this.fillProfile = function(a, b) {\n this.$node.attr(\"data-screen-name\", ((b.screen_name || null))), this.$node.attr(\"data-user-id\", ((b.user_id || null))), this.slideInContent(b.html);\n }, this.removeSocialProof = function(a, b) {\n this.select(\"socialProofSelector\").remove();\n }, this.addSocialProof = function(a, b) {\n ((b.html ? (this.select(\"socialProofSelector\").html(b.html), this.trigger(\"uiHasPopupSocialProof\")) : this.removeSocialProof()));\n }, this.showError = function(a, b) {\n var c = [\"\\u003Cdiv class=\\\"profile-modal-header error\\\"\\u003E\\u003Cp\\u003E\",b.message,\"\\u003C/p\\u003E\\u003C/div\\u003E\",].join(\"\");\n this.slideInContent(c);\n }, this.getPopupData = function(a) {\n return ((((!this.isOpen() || !this.$node.hasClass(\"has-content\"))) ? null : this.$node.attr(a)));\n }, this.currentScreenName = function() {\n return this.getPopupData(\"data-screen-name\");\n }, this.currentUserId = function() {\n return this.getPopupData(\"data-user-id\");\n }, this.after(\"initialize\", function() {\n this.$contentContainer = this.select(\"dialogContentSelector\"), this.JSBNG__on(JSBNG__document, \"uiShowProfilePopup\", this.openProfilePopup), this.JSBNG__on(JSBNG__document, \"dataProfilePopupSuccess\", this.fillProfile), this.JSBNG__on(JSBNG__document, \"dataProfilePopupFailure\", this.showError), this.JSBNG__on(JSBNG__document, \"dataSocialProofSuccess\", this.addSocialProof), this.JSBNG__on(JSBNG__document, \"dataSocialProofFailure\", this.removeSocialProof), this.JSBNG__on(JSBNG__document, \"uiOpenConfirmDialog uiOpenTweetDialog uiNeedsDMDialog uiListAction uiOpenSigninOrSignupDialog uiEmbedProfileAction\", this.close), this.JSBNG__on(\"uiDialogClosed\", this.closeProfilePopup);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withDialog = require(\"app/ui/with_dialog\"), withPosition = require(\"app/ui/with_position\"), withUserActions = require(\"app/ui/with_user_actions\"), withItemActions = require(\"app/ui/with_item_actions\"), withProfileStats = require(\"app/ui/with_profile_stats\"), withHandleOverflow = require(\"app/ui/with_handle_overflow\"), ProfilePopup = defineComponent(profilePopup, withDialog, withPosition, withUserActions, withItemActions, withProfileStats, withHandleOverflow);\n module.exports = ProfilePopup;\n});\ndefine(\"app/data/profile_edit_btn_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_scribe\",], function(module, require, exports) {\n function profileEditBtnScribe() {\n this.defaultAttrs({\n editButtonSelector: \".edit-profile-btn\",\n scribeContext: {\n }\n }), this.scribeAction = function(a) {\n var b = utils.merge(this.attr.scribeContext, {\n action: a\n });\n return function(a, c) {\n b.element = $(a.target).attr(\"data-scribe-element\"), this.scribe(b);\n };\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n editButtonSelector: this.scribeAction(\"click\")\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(profileEditBtnScribe, withScribe);\n});\ndefine(\"app/data/user\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_data\",], function(module, require, exports) {\n function userData() {\n this.updateFollowStatus = function(a, b) {\n function c(c) {\n this.trigger(\"dataFollowStateChange\", utils.merge(c, a, {\n userId: a.userId,\n newState: c.new_state,\n requestUrl: b,\n isFollowBack: c.is_follow_back\n })), this.trigger(JSBNG__document, \"dataGotProfileStats\", {\n stats: c.profile_stats\n });\n };\n ;\n function d(b) {\n var c = a.userId, d = a.originalFollowState;\n ((b.new_state && (d = b.new_state))), this.trigger(\"dataFollowStateChange\", utils.merge(b, {\n userId: c,\n newState: d\n }));\n };\n ;\n var e = ((a.disclosureType ? ((a.disclosureType == \"earned\")) : undefined));\n this.post({\n url: b,\n data: {\n user_id: a.userId,\n impression_id: a.impressionId,\n earned: e,\n fromShortcut: a.fromShortcut\n },\n eventData: a,\n success: c.bind(this),\n error: d.bind(this)\n });\n }, this.reversibleAjaxCall = function(a, b, c) {\n function d(c) {\n this.trigger(\"dataUserActionSuccess\", $.extend({\n }, c, {\n userId: a.userId,\n requestUrl: b\n })), ((c.message && this.trigger(\"uiShowMessage\", c)));\n };\n ;\n function e(b) {\n this.trigger(c, a);\n };\n ;\n this.post({\n url: b,\n data: {\n user_id: a.userId,\n impression_id: a.impressionId\n },\n eventData: a,\n success: d.bind(this),\n error: e.bind(this)\n });\n }, this.normalAjaxCall = function(a, b) {\n function c(c) {\n this.trigger(\"dataUserActionSuccess\", $.extend({\n }, c, {\n userId: a.userId,\n requestUrl: b\n })), ((c.message && this.trigger(\"uiShowMessage\", c)));\n };\n ;\n this.post({\n url: b,\n data: {\n user_id: a.userId,\n token: a.feedbackToken,\n impression_id: a.impressionId\n },\n eventData: a,\n success: c.bind(this),\n error: \"dataUserActionError\"\n });\n }, this.followAction = function(a, b) {\n var c = \"/i/user/follow\";\n this.updateFollowStatus(b, c);\n }, this.unfollowAction = function(a, b) {\n var c = \"/i/user/unfollow\";\n this.updateFollowStatus(b, c);\n }, this.cancelAction = function(a, b) {\n var c = \"/i/user/cancel\";\n this.updateFollowStatus(b, c);\n }, this.blockAction = function(a, b) {\n var c = \"/i/user/block\";\n this.updateFollowStatus(b, c);\n }, this.unblockAction = function(a, b) {\n var c = \"/i/user/unblock\";\n this.updateFollowStatus(b, c);\n }, this.reportSpamAction = function(a, b) {\n this.normalAjaxCall(b, \"/i/user/report_spam\");\n }, this.hideSuggestionAction = function(a, b) {\n this.normalAjaxCall(b, \"/i/user/hide\");\n }, this.retweetOnAction = function(a, b) {\n this.reversibleAjaxCall(b, \"/i/user/retweets_on\", \"dataRetweetOffAction\");\n }, this.retweetOffAction = function(a, b) {\n this.reversibleAjaxCall(b, \"/i/user/retweets_off\", \"dataRetweetOnAction\");\n }, this.deviceNotificationsOnAction = function(a, b) {\n this.reversibleAjaxCall(b, \"/i/user/device_notifications_on\", \"dataDeviceNotificationsOffAction\");\n }, this.deviceNotificationsOffAction = function(a, b) {\n this.reversibleAjaxCall(b, \"/i/user/device_notifications_off\", \"dataDeviceNotificationsOnAction\");\n }, this.emailFollowAction = function(a, b) {\n this.reversibleAjaxCall(b, \"/i/email_follow/email_follow\", \"dataEmailUnfollow\");\n }, this.emailUnfollowAction = function(a, b) {\n this.reversibleAjaxCall(b, \"/i/email_follow/email_unfollow\", \"dataEmailFollow\");\n }, this.enableEmailFollowAction = function(a, b) {\n this.reversibleAjaxCall(b, \"/i/email_follow/enable\", \"dataDisableEmailFollow\");\n }, this.disableEmailFollowAction = function(a, b) {\n this.reversibleAjaxCall(b, \"/i/email_follow/disable\", \"dataEnableEmailFollow\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiFollowAction\", this.followAction), this.JSBNG__on(JSBNG__document, \"uiUnfollowAction\", this.unfollowAction), this.JSBNG__on(JSBNG__document, \"uiCancelFollowRequestAction\", this.cancelAction), this.JSBNG__on(JSBNG__document, \"uiBlockAction\", this.blockAction), this.JSBNG__on(JSBNG__document, \"uiUnblockAction\", this.unblockAction), this.JSBNG__on(JSBNG__document, \"uiReportSpamAction\", this.reportSpamAction), this.JSBNG__on(JSBNG__document, \"uiHideSuggestionAction\", this.hideSuggestionAction), this.JSBNG__on(JSBNG__document, \"uiRetweetOnAction\", this.retweetOnAction), this.JSBNG__on(JSBNG__document, \"uiRetweetOffAction\", this.retweetOffAction), this.JSBNG__on(JSBNG__document, \"uiDeviceNotificationsOnAction\", this.deviceNotificationsOnAction), this.JSBNG__on(JSBNG__document, \"uiDeviceNotificationsOffAction\", this.deviceNotificationsOffAction), this.JSBNG__on(JSBNG__document, \"uiEmailFollowAction\", this.emailFollowAction), this.JSBNG__on(JSBNG__document, \"uiEmailUnfollowAction\", this.emailUnfollowAction), this.JSBNG__on(JSBNG__document, \"uiEnableEmailFollowAction\", this.enableEmailFollowAction), this.JSBNG__on(JSBNG__document, \"uiDisableEmailFollowAction\", this.disableEmailFollowAction);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withData = require(\"app/data/with_data\"), UserData = defineComponent(userData, withData);\n module.exports = UserData;\n});\ndefine(\"app/data/lists\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function listsData() {\n this.listMembershipContent = function(a, b) {\n this.get({\n url: ((((\"/i/\" + b.userId)) + \"/lists\")),\n dataType: \"json\",\n data: {\n },\n eventData: b,\n success: \"dataGotListMembershipContent\",\n error: \"dataFailedToGetListMembershipContent\"\n });\n }, this.addUserToList = function(a, b) {\n this.post({\n url: ((((((((\"/i/\" + b.userId)) + \"/lists/\")) + b.listId)) + \"/members\")),\n dataType: \"json\",\n data: {\n },\n eventData: b,\n success: \"dataDidAddUserToList\",\n error: \"dataFailedToAddUserToList\"\n });\n }, this.removeUserFromList = function(a, b) {\n this.destroy({\n url: ((((((((\"/i/\" + b.userId)) + \"/lists/\")) + b.listId)) + \"/members\")),\n dataType: \"json\",\n data: {\n },\n eventData: b,\n success: \"dataDidRemoveUserFromList\",\n error: \"dataFailedToRemoveUserFromList\"\n });\n }, this.createList = function(a, b) {\n this.post({\n url: \"/i/lists/create\",\n dataType: \"json\",\n data: b,\n eventData: b,\n success: \"dataDidCreateList\",\n error: \"dataFailedToCreateList\"\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiNeedsListMembershipContent\", this.listMembershipContent), this.JSBNG__on(\"uiAddUserToList\", this.addUserToList), this.JSBNG__on(\"uiRemoveUserFromList\", this.removeUserFromList), this.JSBNG__on(\"uiCreateList\", this.createList);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(listsData, withData);\n});\ndefine(\"app/boot/profile_popup\", [\"module\",\"require\",\"exports\",\"core/utils\",\"app/data/profile_popup\",\"app/data/profile_popup_scribe\",\"app/ui/profile_popup\",\"app/data/profile_edit_btn_scribe\",\"app/data/user\",\"app/data/lists\",], function(module, require, exports) {\n function initialize(a) {\n ProfilePopupData.attachTo(JSBNG__document, utils.merge(a, {\n eventData: {\n scribeContext: {\n component: \"profile_dialog\"\n }\n }\n })), UserData.attachTo(JSBNG__document, a), Lists.attachTo(JSBNG__document, a), ProfilePopup.attachTo(\"#profile_popup\", utils.merge(a, {\n eventData: {\n scribeContext: {\n component: \"profile_dialog\"\n }\n }\n })), ProfileEditBtnScribe.attachTo(\"#profile_popup\", {\n scribeContext: {\n component: \"profile_dialog\"\n }\n }), ProfilePopupScribe.attachTo(JSBNG__document, a);\n };\n;\n var utils = require(\"core/utils\"), ProfilePopupData = require(\"app/data/profile_popup\"), ProfilePopupScribe = require(\"app/data/profile_popup_scribe\"), ProfilePopup = require(\"app/ui/profile_popup\"), ProfileEditBtnScribe = require(\"app/data/profile_edit_btn_scribe\"), UserData = require(\"app/data/user\"), Lists = require(\"app/data/lists\"), hasPopup = (($(\"#profile_popup\").length > 0));\n module.exports = ((hasPopup ? initialize : $.noop));\n});\ndefine(\"app/data/typeahead/with_cache\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function WithCache() {\n this.defaultAttrs({\n cache_limit: 10\n }), this.getCachedSuggestions = function(a) {\n return ((this.cache[a] ? this.cache[a].value : null));\n }, this.clearCache = function() {\n this.cache = {\n NEWEST: null,\n OLDEST: null,\n COUNT: 0,\n LIMIT: this.attr.cache_limit\n };\n }, this.deleteCachedSuggestions = function(a) {\n return ((this.cache[a] ? (((((this.cache.COUNT > 1)) && ((((a == this.cache.NEWEST.query)) ? (this.cache.NEWEST = this.cache.NEWEST.before, this.cache.NEWEST.after = null) : ((((a == this.cache.OLDEST.query)) ? (this.cache.OLDEST = this.cache.OLDEST.after, this.cache.OLDEST.before = null) : (this.cache[a].after.before = this.cache[a].before, this.cache[a].before.after = this.cache[a].after))))))), delete this.cache[a], this.cache.COUNT -= 1, !0) : !1));\n }, this.setCachedSuggestions = function(a, b) {\n if (((this.cache.LIMIT === 0))) {\n return;\n }\n ;\n ;\n this.deleteCachedSuggestions(a), ((((this.cache.COUNT >= this.cache.LIMIT)) && this.deleteCachedSuggestions(this.cache.OLDEST.query))), ((((this.cache.COUNT == 0)) ? (this.cache[a] = {\n query: a,\n value: b,\n before: null,\n after: null\n }, this.cache.NEWEST = this.cache[a], this.cache.OLDEST = this.cache[a]) : (this.cache[a] = {\n query: a,\n value: b,\n before: this.cache.NEWEST,\n after: null\n }, this.cache.NEWEST.after = this.cache[a], this.cache.NEWEST = this.cache[a]))), this.cache.COUNT += 1;\n }, this.aroundGetSuggestions = function(a, b, c) {\n var d = ((((c.id + \":\")) + c.query)), e = this.getCachedSuggestions(d);\n if (e) {\n this.triggerSuggestionsEvent(c.id, c.query, e);\n return;\n }\n ;\n ;\n a(b, c);\n }, this.afterTriggerSuggestionsEvent = function(a, b, c, d) {\n if (d) {\n return;\n }\n ;\n ;\n var e = ((((a + \":\")) + b));\n this.setCachedSuggestions(e, c);\n }, this.after(\"triggerSuggestionsEvent\", this.afterTriggerSuggestionsEvent), this.around(\"getSuggestions\", this.aroundGetSuggestions), this.after(\"initialize\", function(a) {\n this.clearCache(), this.JSBNG__on(\"uiTypeaheadDeleteRecentSearch\", this.clearCache);\n });\n };\n;\n module.exports = WithCache;\n});\ndefine(\"app/utils/typeahead_helpers\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function tokenizeText(a) {\n return a.trim().toLowerCase().split(/[\\s_,.-]+/);\n };\n;\n function getFirstChar(a) {\n var b;\n return ((multiByteRegex.test(a.substr(0, 1)) ? b = a.substr(0, 2) : b = a.charAt(0))), b;\n };\n;\n var multiByteRegex = /[\\uD800-\\uDFFF]/;\n module.exports = {\n tokenizeText: tokenizeText,\n getFirstChar: getFirstChar\n };\n});\ndefine(\"app/data/with_datasource_helpers\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n function withDatasourceHelpers() {\n this.prefetch = function(a, b) {\n var c = {\n prefetch: !0,\n result_type: b,\n count: this.getPrefetchCount()\n };\n c[((b + \"_cache_age\"))] = this.storage.getCacheAge(this.attr.storageHash, this.attr.ttl_ms), this.get({\n url: a,\n headers: {\n \"X-Phx\": !0\n },\n data: c,\n eventData: {\n },\n success: this.processResults.bind(this),\n error: this.useStaleData.bind(this)\n });\n }, this.useStaleData = function() {\n this.extendTTL(), this.getDataFromLocalStorage();\n }, this.extendTTL = function() {\n var a = this.getStorageKeys();\n for (var b = 0; ((b < a.length)); b++) {\n this.storage.updateTTL(a[b], this.attr.ttl_ms);\n ;\n };\n ;\n }, this.loadData = function(a, b) {\n var c = this.getStorageKeys().some(function(a) {\n return this.storage.isExpired(a);\n }, this);\n ((((c || this.isMetadataExpired())) ? this.prefetch(a, b) : this.getDataFromLocalStorage()));\n }, this.isIE8 = function() {\n return (($.browser.msie && ((parseInt($.browser.version, 10) === 8))));\n }, this.getProtocol = function() {\n return window.JSBNG__location.protocol;\n };\n };\n;\n module.exports = withDatasourceHelpers;\n});\ndefine(\"app/data/typeahead/accounts_datasource\", [\"module\",\"require\",\"exports\",\"app/utils/typeahead_helpers\",\"app/utils/storage/custom\",\"app/data/with_data\",\"core/compose\",\"core/utils\",\"app/data/with_datasource_helpers\",], function(module, require, exports) {\n function accountsDatasource(a) {\n this.attr = {\n id: null,\n ttl_ms: 259200000,\n localStorageCount: 1200,\n ie8LocalStorageCount: 1000,\n limit: 6,\n version: 4,\n localQueriesEnabled: !1,\n remoteQueriesEnabled: !1,\n onlyDMable: !1,\n storageAdjacencyList: \"userAdjacencyList\",\n storageHash: \"userHash\",\n storageProtocol: \"protocol\",\n storageVersion: \"userVersion\",\n remotePath: \"/i/search/typeahead.json\",\n remoteType: \"users\",\n prefetchPath: \"/i/search/typeahead.json\",\n prefetchType: \"users\",\n storageBlackList: \"userBlackList\",\n maxLengthBlacklist: 100\n }, this.attr = util.merge(this.attr, a), this.after = function() {\n \n }, compose.mixin(this, [withData,withDatasourceHelpers,]), this.getPrefetchCount = function() {\n return ((((this.isIE8() && ((this.attr.localStorageCount > this.attr.ie8LocalStorageCount)))) ? this.attr.ie8LocalStorageCount : this.attr.localStorageCount));\n }, this.isMetadataExpired = function() {\n var a = this.storage.getItem(this.attr.storageVersion), b = this.storage.getItem(this.attr.storageProtocol);\n return ((((((a == this.attr.version)) && ((b == this.getProtocol())))) ? !1 : !0));\n }, this.getStorageKeys = function() {\n return [this.attr.storageVersion,this.attr.storageHash,this.attr.storageAdjacencyList,this.attr.storageProtocol,];\n }, this.getDataFromLocalStorage = function() {\n this.userHash = ((this.storage.getItem(this.attr.storageHash) || this.userHash)), this.adjacencyList = ((this.storage.getItem(this.attr.storageAdjacencyList) || this.adjacencyList));\n }, this.processResults = function(a) {\n if (((!a || !a[this.attr.prefetchType]))) {\n this.useStaleData();\n return;\n }\n ;\n ;\n a[this.attr.prefetchType].forEach(function(a) {\n a.tokens = a.tokens.map(function(a) {\n return ((((typeof a == \"string\")) ? a : a.token));\n }), this.userHash[a.id] = a, a.tokens.forEach(function(b) {\n var c = helpers.getFirstChar(b);\n ((((this.adjacencyList[c] === undefined)) && (this.adjacencyList[c] = []))), ((((this.adjacencyList[c].indexOf(a.id) === -1)) && this.adjacencyList[c].push(a.id)));\n }, this);\n }, this), this.storage.setItem(this.attr.storageHash, this.userHash, this.attr.ttl_ms), this.storage.setItem(this.attr.storageAdjacencyList, this.adjacencyList, this.attr.ttl_ms), this.storage.setItem(this.attr.storageVersion, this.attr.version, this.attr.ttl_ms), this.storage.setItem(this.attr.storageProtocol, this.getProtocol(), this.attr.ttl_ms);\n }, this.getLocalSuggestions = function(a) {\n if (!this.attr.localQueriesEnabled) {\n return [];\n }\n ;\n ;\n var b = helpers.tokenizeText(a.replace(\"@\", \"\")), c = this.getPotentiallyMatchingIds(b), d = this.getAccountsFromIds(c), e = d.filter(this.matcher(b));\n return e.sort(this.sorter), e = e.slice(0, this.attr.limit), e;\n }, this.getPotentiallyMatchingIds = function(a) {\n var b = [];\n return a.map(function(a) {\n var c = this.adjacencyList[helpers.getFirstChar(a)];\n ((c && (b = b.concat(c))));\n }, this), b = util.uniqueArray(b), b;\n }, this.getAccountsFromIds = function(a) {\n var b = [];\n return a.forEach(function(a) {\n var c = this.userHash[a];\n ((c && b.push(c)));\n }, this), b;\n }, this.matcher = function(a) {\n return function(b) {\n var c = b.tokens, d = [];\n if (((this.attr.onlyDMable && !b.is_dm_able))) {\n return !1;\n }\n ;\n ;\n var e = a.every(function(a) {\n var b = c.filter(function(b) {\n return ((b.indexOf(a) === 0));\n });\n return b.length;\n });\n if (e) {\n return b;\n }\n ;\n ;\n }.bind(this);\n }, this.sorter = function(a, b) {\n function e(a, b, c) {\n var d = ((a.score_boost ? a.score_boost : 0)), e = ((b.score_boost ? b.score_boost : 0)), f = ((a.rounded_score ? a.rounded_score : 0)), g = ((b.rounded_score ? b.rounded_score : 0));\n return ((c ? ((((b.rounded_graph_weight + e)) - ((a.rounded_graph_weight + d)))) : ((((g + e)) - ((f + d))))));\n };\n ;\n var c = ((a.rounded_graph_weight && ((a.rounded_graph_weight !== 0)))), d = ((b.rounded_graph_weight && ((b.rounded_graph_weight !== 0))));\n return ((((c && !d)) ? -1 : ((((d && !c)) ? 1 : ((((c && d)) ? e(a, b, !0) : e(a, b, !1)))))));\n }, this.processRemoteSuggestions = function(a, b, c) {\n var d = ((c[this.attr.id] || [])), e = {\n };\n return d.forEach(function(a) {\n e[a.id] = !0;\n }, this), ((((this.attr.remoteQueriesEnabled && b[this.attr.remoteType])) && b[this.attr.remoteType].forEach(function(a) {\n ((((!e[a.id] && ((!this.attr.onlyDMable || a.is_dm_able)))) && d.push(a)));\n }, this))), c[this.attr.id] = d.slice(0, this.attr.limit), c[this.attr.id].forEach(function(a) {\n this.removeBlacklistSocialContext(a);\n }, this), c;\n }, this.removeBlacklistSocialContext = function(a) {\n ((((a.first_connecting_user_id in this.socialContextBlackList)) && (a.first_connecting_user_name = undefined, a.first_connecting_user_id = undefined)));\n }, this.requiresRemoteSuggestions = function() {\n return this.attr.remoteQueriesEnabled;\n }, this.initialize = function() {\n var a = customStorage({\n withExpiry: !0\n });\n this.storage = new a(\"typeahead\"), this.adjacencyList = {\n }, this.userHash = {\n }, this.loadData(this.attr.prefetchPath, this.attr.prefetchType), this.socialContextBlackList = ((this.storage.getItem(this.attr.storageBlackList) || {\n }));\n }, this.initialize();\n };\n;\n var helpers = require(\"app/utils/typeahead_helpers\"), customStorage = require(\"app/utils/storage/custom\"), withData = require(\"app/data/with_data\"), compose = require(\"core/compose\"), util = require(\"core/utils\"), withDatasourceHelpers = require(\"app/data/with_datasource_helpers\");\n module.exports = accountsDatasource;\n});\ndefine(\"app/data/typeahead/saved_searches_datasource\", [\"module\",\"require\",\"exports\",\"core/utils\",], function(module, require, exports) {\n function savedSearchesDatasource(a) {\n this.attr = {\n id: null,\n items: [],\n limit: 0,\n searchPathWithQuery: \"/search?src=savs&q=\",\n querySource: \"saved_search_click\"\n }, this.attr = util.merge(this.attr, a), this.getRemoteSuggestions = function(a, b, c) {\n return c;\n }, this.requiresRemoteSuggestions = function() {\n return !1;\n }, this.getLocalSuggestions = function(a) {\n return ((a ? ((((this.attr.limit === 0)) ? [] : this.attr.items.filter(function(b) {\n return ((b.JSBNG__name.indexOf(a) == 0));\n }).slice(0, this.attr.limit))) : this.attr.items));\n }, this.addSavedSearch = function(a) {\n if (((!a || !a.query))) {\n return;\n }\n ;\n ;\n this.attr.items.push({\n id: a.id,\n id_str: a.id_str,\n JSBNG__name: a.JSBNG__name,\n query: a.query,\n saved_search_path: ((this.attr.searchPathWithQuery + encodeURIComponent(a.query))),\n search_query_source: this.attr.querySource\n });\n }, this.removeSavedSearch = function(a) {\n if (((!a || !a.query))) {\n return;\n }\n ;\n ;\n var b = this.attr.items;\n for (var c = 0; ((c < b.length)); c++) {\n if (((((b[c].query === a.query)) || ((b[c].JSBNG__name === a.query))))) {\n b.splice(c, 1);\n return;\n }\n ;\n ;\n };\n ;\n };\n };\n;\n var util = require(\"core/utils\");\n module.exports = savedSearchesDatasource;\n});\ndefine(\"app/data/typeahead/recent_searches_datasource\", [\"module\",\"require\",\"exports\",\"core/utils\",\"app/utils/storage/custom\",\"app/data/with_datasource_helpers\",], function(module, require, exports) {\n function recentSearchesDatasource(a) {\n this.attr = {\n id: null,\n limit: 4,\n storageList: \"recentSearchesList\",\n maxLength: 100,\n ttl_ms: 1209600000,\n searchPathWithQuery: \"/search?src=rec&q=\",\n querySource: \"recent_search_click\"\n }, this.attr = util.merge(this.attr, a), this.getRemoteSuggestions = function(a, b, c) {\n return c;\n }, this.requiresRemoteSuggestions = function() {\n return !1;\n }, this.removeAllRecentSearches = function() {\n this.items = [], this.updateStorage();\n }, this.getLocalSuggestions = function(a) {\n return ((((a === \"\")) ? this.items.slice(0, this.attr.limit) : this.items.filter(function(b) {\n return ((b.JSBNG__name.indexOf(a) == 0));\n }).slice(0, this.attr.limit)));\n }, this.updateStorage = function() {\n this.storage.setItem(this.attr.storageList, this.items, this.attr.ttl_ms);\n }, this.removeOneRecentSearch = function(a) {\n this.removeRecentSearchFromList(a.query), this.updateStorage();\n }, this.addRecentSearch = function(a) {\n if (((!a || !a.query))) {\n return;\n }\n ;\n ;\n a.query = a.query.trim(), this.updateRecentSearchList(a), this.updateStorage();\n }, this.updateRecentSearchList = function(a) {\n var b = this.items, c = {\n JSBNG__name: a.query,\n recent_search_path: ((this.attr.searchPathWithQuery + encodeURIComponent(a.query))),\n search_query_source: this.attr.querySource\n };\n this.removeRecentSearchFromList(a.query), b.unshift(c), ((((b.length > this.attr.maxLength)) && b.pop()));\n }, this.removeRecentSearchFromList = function(a) {\n var b = this.items, c = -1;\n for (var d = 0; ((d < b.length)); d++) {\n if (((b[d].JSBNG__name === a))) {\n c = d;\n break;\n }\n ;\n ;\n };\n ;\n ((((c !== -1)) && b.splice(c, 1)));\n }, this.initialize = function() {\n var a = customStorage({\n withExpiry: !0\n });\n this.storage = new a(\"typeahead\"), this.items = ((this.storage.getItem(this.attr.storageList) || []));\n }, this.initialize();\n };\n;\n var util = require(\"core/utils\"), customStorage = require(\"app/utils/storage/custom\"), withDatasourceHelpers = require(\"app/data/with_datasource_helpers\");\n module.exports = recentSearchesDatasource;\n});\ndefine(\"app/data/typeahead/with_external_event_listeners\", [\"module\",\"require\",\"exports\",\"app/utils/typeahead_helpers\",], function(module, require, exports) {\n function WithExternalEventListeners() {\n this.defaultAttrs({\n weights: {\n CACHED_PROFILE_VISIT: 10,\n UNCACHED_PROFILE_VISIT: 75,\n FOLLOW: 100\n }\n }), this.cleanupUserData = function(a) {\n this.removeAccount(a), this.addToUserBlacklist(a);\n }, this.onFollowStateChange = function(a, b) {\n if (((!b.user || !b.userId))) {\n return;\n }\n ;\n ;\n switch (b.newState) {\n case \"blocked\":\n this.cleanupUserData(b.userId);\n break;\n case \"not-following\":\n this.cleanupUserData(b.userId);\n break;\n case \"following\":\n this.adjustScoreBoost(b.user, this.attr.weights.FOLLOW), this.addAccount(b.user, \"following\"), this.removeUserFromBlacklist(b.userId);\n };\n ;\n this.updateLocalStorage();\n }, this.onProfileVisit = function(a, b) {\n var c = this.datasources.accounts.userHash[b.id];\n ((c ? this.adjustScoreBoost(c, this.attr.weights.CACHED_PROFILE_VISIT) : (this.adjustScoreBoost(b, this.attr.weights.UNCACHED_PROFILE_VISIT), this.addAccount(b, \"visit\")))), this.updateLocalStorage();\n }, this.updateLocalStorage = function() {\n this.datasources.accounts.storage.setItem(\"userHash\", this.datasources.accounts.userHash, this.datasources.accounts.attr.ttl), this.datasources.accounts.storage.setItem(\"adjacencyList\", this.datasources.accounts.adjacencyList, this.datasources.accounts.attr.ttl), this.datasources.accounts.storage.setItem(\"version\", this.datasources.accounts.attr.version, this.datasources.accounts.attr.ttl);\n }, this.removeAccount = function(a) {\n if (!this.datasources.accounts.userHash[a]) {\n return;\n }\n ;\n ;\n var b = this.datasources.accounts.userHash[a].tokens;\n b.forEach(function(b) {\n var c = this.datasources.accounts.adjacencyList[b.charAt(0)];\n if (!c) {\n return;\n }\n ;\n ;\n var d = c.indexOf(a);\n if (((d === -1))) {\n return;\n }\n ;\n ;\n c.splice(d, 1);\n }, this), delete this.datasources.accounts.userHash[a];\n }, this.adjustScoreBoost = function(a, b) {\n ((a.score_boost ? a.score_boost += b : a.score_boost = b));\n }, this.addAccount = function(a, b) {\n this.datasources.accounts.userHash[a.id] = a, a.tokens = [((\"@\" + a.screen_name)),a.screen_name,].concat(helpers.tokenizeText(a.JSBNG__name)), a.social_proof = ((((b === \"following\")) ? 1 : 0)), a.tokens.forEach(function(b) {\n var c = b.charAt(0);\n if (!this.datasources.accounts.adjacencyList[c]) {\n this.datasources.accounts.adjacencyList[c] = [a.id,];\n return;\n }\n ;\n ;\n ((((this.datasources.accounts.adjacencyList[c].indexOf(a.id) === -1)) && this.datasources.accounts.adjacencyList[c].push(a.id)));\n }, this);\n }, this.removeOldAccountsInBlackList = function() {\n var a, b, c = 0, d = ((this.datasources.accounts.attr.maxLengthBlacklist || 100)), e = this.datasources.accounts.socialContextBlackList, f = (new JSBNG__Date).getTime(), g = this.datasources.accounts.attr.ttl_ms;\n {\n var fin67keys = ((window.top.JSBNG_Replay.forInKeys)((e))), fin67i = (0);\n (0);\n for (; (fin67i < fin67keys.length); (fin67i++)) {\n ((b) = (fin67keys[fin67i]));\n {\n var h = ((e[b] + g));\n ((((h < f)) ? delete e[b] : (a = ((a || b)), a = ((((e[a] > e[b])) ? b : a)), c += 1)));\n };\n };\n };\n ;\n ((((d < c)) && delete e[a]));\n }, this.updateBlacklistLocalStorage = function(a) {\n this.datasources.accounts.storage.setItem(\"userBlackList\", a, this.attr.ttl);\n }, this.addToUserBlacklist = function(a) {\n var b = this.datasources.accounts.socialContextBlackList;\n b[a] = (new JSBNG__Date).getTime(), this.removeOldAccountsInBlackList(), this.updateBlacklistLocalStorage(b);\n }, this.removeUserFromBlacklist = function(a) {\n var b = this.datasources.accounts.socialContextBlackList;\n this.removeOldAccountsInBlackList(), ((b[a] && (delete b[a], this.updateBlacklistLocalStorage(b))));\n }, this.checkItemTypeForRecentSearch = function(a) {\n return ((((((((a === \"saved_search\")) || ((a === \"topics\")))) || ((a === \"recent_search\")))) ? !0 : !1));\n }, this.addSavedSearch = function(a, b) {\n this.datasources.savedSearches.addSavedSearch(b);\n }, this.removeSavedSearch = function(a, b) {\n this.datasources.savedSearches.removeSavedSearch(b);\n }, this.addRecentSearch = function(a, b) {\n ((((b.source === \"search\")) ? this.datasources.recentSearches.addRecentSearch({\n query: b.query\n }) : ((((this.checkItemTypeForRecentSearch(b.source) && b.isSearchInput)) && this.datasources.recentSearches.addRecentSearch({\n query: b.query\n })))));\n }, this.removeRecentSearch = function(a, b) {\n ((b.deleteAll ? this.datasources.recentSearches.removeAllRecentSearches() : this.datasources.recentSearches.removeOneRecentSearch(b)));\n }, this.setTrendLocations = function(a, b) {\n this.datasources.trendLocations.setTrendLocations(b);\n }, this.setPageContext = function(a, b) {\n this.datasources.contextHelpers.updatePageContext(b.init_data.typeaheadData.contextHelpers);\n }, this.setupEventListeners = function(a) {\n switch (a) {\n case \"accounts\":\n this.JSBNG__on(\"dataFollowStateChange\", this.onFollowStateChange), this.JSBNG__on(\"profileVisit\", this.onProfileVisit);\n break;\n case \"savedSearches\":\n this.JSBNG__on(JSBNG__document, \"dataAddedSavedSearch\", this.addSavedSearch), this.JSBNG__on(JSBNG__document, \"dataRemovedSavedSearch\", this.removeSavedSearch);\n break;\n case \"recentSearches\":\n this.JSBNG__on(\"uiSearchQuery uiTypeaheadItemSelected\", this.addRecentSearch), this.JSBNG__on(\"uiTypeaheadDeleteRecentSearch\", this.removeRecentSearch);\n break;\n case \"contextHelpers\":\n this.JSBNG__on(\"uiPageChanged\", this.setPageContext);\n break;\n case \"trendLocations\":\n this.JSBNG__on(JSBNG__document, \"dataLoadedTrendLocations\", this.setTrendLocations);\n };\n ;\n };\n };\n;\n var helpers = require(\"app/utils/typeahead_helpers\");\n module.exports = WithExternalEventListeners;\n});\ndefine(\"app/data/typeahead/topics_datasource\", [\"module\",\"require\",\"exports\",\"app/utils/typeahead_helpers\",\"app/utils/storage/custom\",\"app/data/with_data\",\"core/compose\",\"core/utils\",\"app/data/with_datasource_helpers\",], function(module, require, exports) {\n function topicsDatasource(a) {\n this.attr = {\n id: null,\n ttl_ms: 21600000,\n limit: 4,\n version: 3,\n storageAdjacencyList: \"topicsAdjacencyList\",\n storageHash: \"topicsHash\",\n storageVersion: \"topicsVersion\",\n prefetchLimit: 500,\n localQueriesEnabled: !1,\n remoteQueriesEnabled: !1,\n remoteQueriesOverrideLocal: !1,\n remotePath: \"/i/search/typeahead.json\",\n remoteType: \"topics\",\n prefetchPath: \"/i/search/typeahead.json\",\n prefetchType: \"topics\"\n }, this.attr = util.merge(this.attr, a), this.after = function() {\n \n }, compose.mixin(this, [withData,withDatasourceHelpers,]), this.getStorageKeys = function() {\n return [this.attr.storageVersion,this.attr.storageHash,this.attr.storageAdjacencyList,];\n }, this.getPrefetchCount = function() {\n return this.attr.prefetchLimit;\n }, this.isMetadataExpired = function() {\n var a = this.storage.getItem(this.attr.storageVersion);\n return ((((a == this.attr.version)) ? !1 : !0));\n }, this.getDataFromLocalStorage = function() {\n this.topicsHash = ((this.storage.getItem(this.attr.storageHash) || this.topicsHash)), this.adjacencyList = ((this.storage.getItem(this.attr.storageAdjacencyList) || this.adjacencyList));\n }, this.processResults = function(a) {\n if (((!a || !a[this.attr.prefetchType]))) {\n this.useStaleData();\n return;\n }\n ;\n ;\n a[this.attr.prefetchType].forEach(function(a) {\n var b = a.topic;\n this.topicsHash[b] = a, a.tokens.forEach(function(a) {\n var c = helpers.getFirstChar(a.token);\n ((((this.adjacencyList[c] === undefined)) && (this.adjacencyList[c] = []))), ((((this.adjacencyList[c].indexOf(b) === -1)) && this.adjacencyList[c].push(b)));\n }, this);\n }, this), this.storage.setItem(this.attr.storageHash, this.topicsHash, this.attr.ttl_ms), this.storage.setItem(this.attr.storageAdjacencyList, this.adjacencyList, this.attr.ttl_ms), this.storage.setItem(this.attr.storageVersion, this.attr.version, this.attr.ttl_ms);\n }, this.getLocalSuggestions = function(a) {\n if (!this.attr.localQueriesEnabled) {\n return [];\n }\n ;\n ;\n a = a.toLowerCase();\n var b = helpers.getFirstChar(a);\n if (((((this.attr.remoteType == \"hashtags\")) && (([\"$\",\"#\",].indexOf(b) === -1))))) {\n return [];\n }\n ;\n ;\n var c = ((this.adjacencyList[b] || []));\n c = this.getTopicObjectsFromStrings(c);\n var d = c.filter(function(b) {\n return ((b.topic.toLowerCase().indexOf(a) === 0));\n }, this);\n return d.sort(function(a, b) {\n return ((b.rounded_score - a.rounded_score));\n }.bind(this)), d = d.slice(0, this.attr.limit), d;\n }, this.getTopicObjectsFromStrings = function(a) {\n var b = [];\n return a.forEach(function(a) {\n var c = this.topicsHash[a];\n ((c && b.push(c)));\n }, this), b;\n }, this.requiresRemoteSuggestions = function() {\n return this.attr.remoteQueriesEnabled;\n }, this.processRemoteSuggestions = function(a, b, c) {\n var d = ((c[this.attr.id] || [])), e = {\n };\n return d.forEach(function(a) {\n e[((a.topic || a.hashtag))] = !0;\n }, this), ((((b[this.attr.remoteType] && this.attr.remoteQueriesOverrideLocal)) ? d = b[this.attr.remoteType] : ((b[this.attr.remoteType] && b[this.attr.remoteType].forEach(function(a) {\n ((e[((a.topic || a.hashtag))] || d.push(a)));\n }, this))))), c[this.attr.id] = d.slice(0, this.attr.limit), c;\n }, this.initialize = function() {\n var a = customStorage({\n withExpiry: !0\n });\n this.storage = new a(\"typeahead\"), this.topicsHash = {\n }, this.adjacencyList = {\n }, this.loadData(this.attr.prefetchPath, this.attr.prefetchType);\n }, this.initialize();\n };\n;\n var helpers = require(\"app/utils/typeahead_helpers\"), customStorage = require(\"app/utils/storage/custom\"), withData = require(\"app/data/with_data\"), compose = require(\"core/compose\"), util = require(\"core/utils\"), withDatasourceHelpers = require(\"app/data/with_datasource_helpers\");\n module.exports = topicsDatasource;\n});\ndefine(\"app/data/typeahead/context_helper_datasource\", [\"module\",\"require\",\"exports\",\"app/utils/typeahead_helpers\",\"core/utils\",\"core/i18n\",], function(module, require, exports) {\n function contextHelperDatasource(a) {\n this.attr = {\n id: null,\n limit: 4,\n version: 1\n }, this.attr = util.merge(this.attr, a), this.processResults = function(a) {\n return [];\n }, this.getLocalSuggestions = function(a) {\n if (((a == \"\"))) {\n return [];\n }\n ;\n ;\n var b;\n return ((((this.currentPage == \"JSBNG__home\")) ? b = {\n text: _(\"Search for {{strong_query}} from people you follow\"),\n query: a,\n rewrittenQuery: a,\n mode: \"timeline\"\n } : ((((this.currentPage == \"profile\")) ? b = {\n text: _(\"Search for {{strong_query}} in {{screen_name}}'s timeline\", {\n strong_query: \"{{strong_query}}\",\n screen_name: this.currentProfileUser\n }),\n query: a,\n rewrittenQuery: ((((a + \" from:\")) + this.currentProfileUser))\n } : ((((this.currentPage == \"me\")) && (b = {\n text: _(\"Search for {{strong_query}} in your timeline\"),\n query: a,\n rewrittenQuery: ((((a + \" from:\")) + this.currentProfileUser))\n }))))))), ((b ? [b,] : []));\n }, this.requiresRemoteSuggestions = function() {\n return !1;\n }, this.processRemoteSuggestions = function(a, b, c) {\n return c;\n }, this.updatePageContext = function(a) {\n this.currentPage = a.page_name, this.currentSection = a.section_name, this.currentProfileUser = ((((((this.currentPage == \"profile\")) || ((this.currentPage == \"me\")))) ? a.screen_name : null));\n }, this.initialize = function() {\n this.updatePageContext(a);\n }, this.initialize();\n };\n;\n var helpers = require(\"app/utils/typeahead_helpers\"), util = require(\"core/utils\"), _ = require(\"core/i18n\");\n module.exports = contextHelperDatasource;\n});\ndefine(\"app/data/typeahead/trend_locations_datasource\", [\"module\",\"require\",\"exports\",\"core/utils\",\"core/i18n\",], function(module, require, exports) {\n function trendLocationsDatasource(a) {\n var b = {\n woeid: -1,\n placeTypeCode: -1,\n JSBNG__name: _(\"No results were found. Try selecting from a list.\")\n };\n this.attr = {\n id: null,\n items: [],\n limit: 10\n }, this.attr = util.merge(this.attr, a), this.getRemoteSuggestions = function(a, b, c) {\n return c;\n }, this.requiresRemoteSuggestions = function() {\n return !1;\n }, this.getLocalSuggestions = function(a) {\n var c = this.attr.items, d = function(a) {\n return a.replace(/\\s+/g, \"\").toLowerCase();\n }, e = d(a);\n return ((a && (c = this.attr.items.filter(function(a) {\n return ((d(a.JSBNG__name).indexOf(e) == 0));\n })))), ((c.length ? c.slice(0, this.attr.limit) : [b,]));\n }, this.setTrendLocations = function(a) {\n this.attr.items = a.trendLocations;\n };\n };\n;\n var util = require(\"core/utils\"), _ = require(\"core/i18n\");\n module.exports = trendLocationsDatasource;\n});\ndefine(\"app/data/typeahead/typeahead\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"app/data/with_data\",\"app/data/typeahead/with_cache\",\"app/data/typeahead/accounts_datasource\",\"app/data/typeahead/saved_searches_datasource\",\"app/data/typeahead/recent_searches_datasource\",\"app/data/typeahead/with_external_event_listeners\",\"app/data/typeahead/topics_datasource\",\"app/data/typeahead/context_helper_datasource\",\"app/data/typeahead/trend_locations_datasource\",], function(module, require, exports) {\n function typeahead() {\n this.defaultAttrs({\n limit: 10,\n remoteDebounceInterval: 300,\n remoteThrottleInterval: 300,\n outstandingRemoteRequestCount: 0,\n queuedRequestData: !1,\n outstandingRemoteRequestMax: 6,\n useThrottle: !1,\n tweetContextEnabled: !1\n }), this.triggerSuggestionsEvent = function(a, b, c, d) {\n this.trigger(\"dataTypeaheadSuggestionsResults\", {\n suggestions: c,\n query: b,\n id: a\n });\n }, this.getLocalSuggestions = function(a, b) {\n var c = {\n };\n return b.forEach(function(b) {\n if (!this.datasources[b]) {\n return;\n }\n ;\n ;\n var d = this.datasources[b].getLocalSuggestions(a);\n ((d.length && (d.forEach(function(a) {\n a.origin = \"prefetched\";\n }), c[b] = d)));\n }, this), c;\n }, this.processRemoteSuggestions = function(a) {\n this.adjustRequestCount(-1);\n var b = a.sourceEventData, c = ((b.suggestions || {\n }));\n b.datasources.forEach(function(d) {\n var e = d.processRemoteSuggestions(b.query, a, c);\n if (((e[d.attr.id] && e[d.attr.id].length))) {\n {\n var fin68keys = ((window.top.JSBNG_Replay.forInKeys)((e))), fin68i = (0);\n var f;\n for (; (fin68i < fin68keys.length); (fin68i++)) {\n ((f) = (fin68keys[fin68i]));\n {\n e[f].forEach(function(a) {\n a.origin = ((a.origin || \"remote\"));\n });\n ;\n };\n };\n };\n ;\n b.suggestions[d.attr.id] = e[d.attr.id];\n }\n ;\n ;\n }, this), this.dedupSuggestions(\"recentSearches\", [\"topics\",], c), this.truncateTopicsWithRecentSearches(c), this.triggerSuggestionsEvent(b.id, b.query, c, !1), this.makeQueuedRemoteRequestIfPossible();\n }, this.getRemoteSuggestions = function(a, b, c, d, e) {\n var f = e.some(function(a) {\n return ((((this.datasources[a] && this.datasources[a].requiresRemoteSuggestions)) && this.datasources[a].requiresRemoteSuggestions(b)));\n }, this);\n if (((!f || !b))) {\n return;\n }\n ;\n ;\n ((this.request[a] || ((this.attr.useThrottle ? this.request[a] = utils.throttle(this.splitRemoteRequests.bind(this), this.attr.remoteThrottleInterval) : this.request[a] = utils.debounce(this.splitRemoteRequests.bind(this), this.attr.remoteDebounceInterval))))), this.request[a](a, b, c, d, e);\n }, this.makeQueuedRemoteRequestIfPossible = function() {\n if (((((this.attr.outstandingRemoteRequestCount === ((this.attr.outstandingRemoteRequestMax - 1)))) && this.attr.queuedRequestData))) {\n var a = this.attr.queuedRequestData;\n this.getRemoteSuggestions(a.id, a.query, a.suggestions, a.datasources), this.attr.queuedRequestData = !1;\n }\n ;\n ;\n }, this.adjustRequestCount = function(a) {\n this.attr.outstandingRemoteRequestCount += a;\n }, this.canMakeRemoteRequest = function(a) {\n return ((((this.attr.outstandingRemoteRequestCount < this.attr.outstandingRemoteRequestMax)) ? !0 : (this.attr.queuedRequestData = a, !1)));\n }, this.processRemoteRequestError = function() {\n this.adjustRequestCount(-1), this.makeQueuedRemoteRequestIfPossible();\n }, this.splitRemoteRequests = function(a, b, c, d, e) {\n var f = {\n };\n e.forEach(function(a) {\n if (((((this[a] && this[a].requiresRemoteSuggestions)) && this[a].requiresRemoteSuggestions(b)))) {\n var c = this[a];\n ((f[c.attr.remotePath] ? f[c.attr.remotePath].push(c) : f[c.attr.remotePath] = [c,]));\n }\n ;\n ;\n }, this.datasources);\n {\n var fin69keys = ((window.top.JSBNG_Replay.forInKeys)((f))), fin69i = (0);\n var g;\n for (; (fin69i < fin69keys.length); (fin69i++)) {\n ((g) = (fin69keys[fin69i]));\n {\n this.executeRemoteRequest(a, b, c, d, f[g]);\n break;\n };\n };\n };\n ;\n }, this.executeRemoteRequest = function(a, b, c, d, e) {\n var f = {\n id: a,\n query: b,\n suggestions: d,\n datasources: e\n };\n if (!this.canMakeRemoteRequest(f)) {\n return;\n }\n ;\n ;\n if (((!this.attr.tweetContextEnabled || ((c && ((c.length > 1000))))))) {\n c = undefined;\n }\n ;\n ;\n this.adjustRequestCount(1), this.get({\n url: e[0].attr.remotePath,\n headers: {\n \"X-Phx\": !0\n },\n data: {\n q: b,\n tweet_context: c,\n count: this.attr.limit,\n result_type: e.map(function(a) {\n return a.attr.remoteType;\n }).join(\",\")\n },\n eventData: f,\n success: this.processRemoteSuggestions.bind(this),\n error: this.processRemoteRequestError.bind(this)\n });\n }, this.truncateTopicsWithRecentSearches = function(a) {\n if (((!a.topics || !a.recentSearches))) {\n return;\n }\n ;\n ;\n var b = a.recentSearches.length, c = ((4 - b));\n a.topics = a.topics.slice(0, c);\n }, this.dedupSuggestions = function(a, b, c) {\n function e() {\n return b.some(function(a) {\n return ((a in c));\n });\n };\n ;\n function f(a) {\n return !d[((a.topic || a.JSBNG__name))];\n };\n ;\n if (((!c[a] || !e()))) {\n return;\n }\n ;\n ;\n var d = {\n };\n c[a].forEach(function(a) {\n d[((a.JSBNG__name || a.topic))] = !0;\n }), b.forEach(function(a) {\n ((((a in c)) && (c[a] = c[a].filter(f))));\n });\n }, this.getSuggestions = function(a, b) {\n if (((typeof b == \"undefined\"))) {\n throw \"No parameters specified\";\n }\n ;\n ;\n if (!b.datasources) {\n throw \"No datasources specified\";\n }\n ;\n ;\n if (((typeof b.query == \"undefined\"))) {\n throw \"No query specified\";\n }\n ;\n ;\n if (!b.id) {\n throw \"No id specified\";\n }\n ;\n ;\n var c = this.getLocalSuggestions(b.query, b.datasources);\n this.dedupSuggestions(\"recentSearches\", [\"topics\",], c), this.truncateTopicsWithRecentSearches(c), this.triggerSuggestionsEvent(b.id, b.query, c, !0);\n if (((((b.query === \"@\")) || ((b.localOnly === !0))))) {\n return;\n }\n ;\n ;\n this.getRemoteSuggestions(b.id, b.query, b.tweetContext, c, b.datasources);\n }, this.addDatasource = function(a, b, c) {\n var d = ((c[b] || {\n }));\n if (!d.enabled) {\n return;\n }\n ;\n ;\n ((globalDataSources.hasOwnProperty(b) ? this.datasources[b] = globalDataSources[b] : globalDataSources[b] = this.datasources[b] = new a(utils.merge(d, {\n id: b\n })))), this.setupEventListeners(b);\n }, this.after(\"initialize\", function(a) {\n this.datasources = {\n }, this.request = {\n }, this.addDatasource(accountsDatasource, \"accounts\", a), this.addDatasource(accountsDatasource, \"dmAccounts\", a), this.addDatasource(savedSearchesDatasource, \"savedSearches\", a), this.addDatasource(recentSearchesDatasource, \"recentSearches\", a), this.addDatasource(topicsDatasource, \"topics\", a), this.addDatasource(topicsDatasource, \"hashtags\", utils.merge(a, {\n hashtags: {\n remoteType: \"hashtags\"\n }\n }, !0)), this.addDatasource(contextHelperDatasource, \"contextHelpers\", a), this.addDatasource(trendLocationsDatasource, \"trendLocations\", a), this.JSBNG__on(\"uiNeedsTypeaheadSuggestions\", this.getSuggestions);\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), withData = require(\"app/data/with_data\"), withCache = require(\"app/data/typeahead/with_cache\"), accountsDatasource = require(\"app/data/typeahead/accounts_datasource\"), savedSearchesDatasource = require(\"app/data/typeahead/saved_searches_datasource\"), recentSearchesDatasource = require(\"app/data/typeahead/recent_searches_datasource\"), withExternalEventListeners = require(\"app/data/typeahead/with_external_event_listeners\"), topicsDatasource = require(\"app/data/typeahead/topics_datasource\"), contextHelperDatasource = require(\"app/data/typeahead/context_helper_datasource\"), trendLocationsDatasource = require(\"app/data/typeahead/trend_locations_datasource\");\n module.exports = defineComponent(typeahead, withData, withCache, withExternalEventListeners);\n var globalDataSources = {\n };\n});\ndefine(\"app/data/typeahead_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",\"lib/twitter-text\",\"app/utils/scribe_item_types\",], function(module, require, exports) {\n function typeaheadScribe() {\n this.defaultAttrs({\n tweetboxSelector: \".tweet-box-shadow\"\n }), this.storeCompletionData = function(a, b) {\n if (((b.scribeContext && ((b.scribeContext.component == \"tweet_box\"))))) {\n var c = ((((b.source == \"account\")) ? ((\"@\" + b.display)) : b.display));\n this.completions.push(c);\n }\n ;\n ;\n }, this.handleTweetCompletion = function(a, b) {\n if (((b.scribeContext.component != \"tweet_box\"))) {\n return;\n }\n ;\n ;\n var c = $(a.target).JSBNG__find(this.attr.tweetboxSelector).val(), d = twitterText.extractEntitiesWithIndices(c).filter(function(a) {\n return ((((a.screenName || a.cashtag)) || a.hashtag));\n });\n d = d.map(function(a) {\n return c.slice(a.indices[0], a.indices[1]);\n });\n var e = d.filter(function(a) {\n return ((this.completions.indexOf(a) >= 0));\n }, this);\n this.completions = [];\n if (((d.length == 0))) {\n return;\n }\n ;\n ;\n var f = {\n query: b.query,\n message: d.length,\n event_info: e.length,\n format_version: 2\n };\n this.scribe(\"entities\", b, f);\n }, this.scribeSelection = function(a, b) {\n if (((b.fromSelectionEvent && ((a.type == \"uiTypeaheadItemComplete\"))))) {\n return;\n }\n ;\n ;\n var c = {\n element: ((\"typeahead_\" + b.source)),\n action: \"select\"\n }, d;\n ((((a.type == \"uiTypeaheadItemComplete\")) ? d = \"autocomplete\" : ((b.isClick ? d = \"click\" : ((((a.type == \"uiTypeaheadItemSelected\")) && (d = \"key_select\")))))));\n var e = {\n position: b.index,\n description: d\n };\n ((((b.source == \"account\")) ? (e.item_type = itemTypes.user, e.id = b.query) : ((((b.source == \"topics\")) ? (e.item_type = itemTypes.search, e.item_query = b.query) : ((((b.source == \"saved_search\")) ? (e.item_type = itemTypes.savedSearch, e.item_query = b.query) : ((((b.source == \"recent_search\")) ? (e.item_type = itemTypes.search, e.item_query = b.query) : ((((b.source == \"trend_location\")) && (e.item_type = itemTypes.trend, e.item_query = b.item.woeid, ((((b.item.woeid == -1)) && (c.action = \"no_results\"))))))))))))));\n var f = {\n message: b.input,\n items: [e,],\n format_version: 2,\n event_info: b.item.origin\n };\n this.scribe(c, b, f);\n }, this.after(\"initialize\", function() {\n this.completions = [], this.JSBNG__on(\"uiTypeaheadItemComplete uiTypeaheadItemSelected\", this.storeCompletionData), this.JSBNG__on(\"uiTypeaheadItemComplete uiTypeaheadItemSelected\", this.scribeSelection), this.JSBNG__on(\"uiTweetboxTweetSuccess uiTweetboxReplySuccess\", this.handleTweetCompletion);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\"), twitterText = require(\"lib/twitter-text\"), itemTypes = require(\"app/utils/scribe_item_types\");\n module.exports = defineComponent(typeaheadScribe, withScribe);\n});\ndefine(\"app/ui/dialogs/goto_user_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/typeahead/typeahead_dropdown\",\"app/ui/typeahead/typeahead_input\",\"app/ui/with_position\",\"app/ui/with_dialog\",], function(module, require, exports) {\n function gotoUserDialog() {\n this.defaultAttrs({\n dropdownId: \"swift_autocomplete_dropdown_goto_user\",\n inputSelector: \"input.username-input\",\n usernameFormSelector: \"form.goto-user-form\"\n }), this.JSBNG__focus = function() {\n this.select(\"inputSelector\").JSBNG__focus();\n }, this.gotoUser = function(a, b) {\n if (((((b && b.dropdownId)) && ((b.dropdownId != this.attr.dropdownId))))) {\n return;\n }\n ;\n ;\n a.preventDefault();\n if (((b && b.item))) {\n this.select(\"inputSelector\").val(b.item.screen_name), this.trigger(\"uiNavigate\", {\n href: b.href\n });\n return;\n }\n ;\n ;\n var c = this.select(\"inputSelector\").val().trim();\n ((((c.substr(0, 1) == \"@\")) && (c = c.substr(1)))), this.trigger(\"uiNavigate\", {\n href: ((\"/\" + c))\n });\n }, this.reset = function() {\n this.select(\"inputSelector\").val(\"\"), this.select(\"inputSelector\").JSBNG__blur(), this.trigger(this.select(\"inputSelector\"), \"uiHideAutocomplete\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiShortcutShowGotoUser\", this.open), this.JSBNG__on(\"uiDialogOpened\", this.JSBNG__focus), this.JSBNG__on(\"uiDialogClosed\", this.reset), this.JSBNG__on(this.select(\"usernameFormSelector\"), \"submit\", this.gotoUser), this.JSBNG__on(\"uiTypeaheadItemSelected uiTypeaheadSubmitQuery\", this.gotoUser), TypeaheadInput.attachTo(this.$node, {\n inputSelector: this.attr.inputSelector\n }), TypeaheadDropdown.attachTo(this.$node, {\n inputSelector: this.attr.inputSelector,\n autocompleteAccounts: !1,\n datasourceRenders: [[\"accounts\",[\"accounts\",],],],\n deciders: this.attr.typeaheadData,\n eventData: {\n scribeContext: {\n component: \"goto_user_dialog\"\n }\n }\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), TypeaheadDropdown = require(\"app/ui/typeahead/typeahead_dropdown\"), TypeaheadInput = require(\"app/ui/typeahead/typeahead_input\"), withPosition = require(\"app/ui/with_position\"), withDialog = require(\"app/ui/with_dialog\"), GotoUserDialog = defineComponent(gotoUserDialog, withDialog, withPosition);\n module.exports = GotoUserDialog;\n});\ndefine(\"app/utils/setup_polling_with_backoff\", [\"module\",\"require\",\"exports\",\"core/clock\",\"core/utils\",], function(module, require, exports) {\n function setupPollingWithBackoff(a, b, c) {\n var d = {\n focusedInterval: 30000,\n blurredInterval: 90000,\n backoffFactor: 2\n };\n c = utils.merge(d, c);\n var e = clock.setIntervalEvent(a, c.focusedInterval, c.eventData);\n return b = ((b || $(window))), b.JSBNG__on(\"JSBNG__focus\", e.cancelBackoff.bind(e)).JSBNG__on(\"JSBNG__blur\", e.backoff.bind(e, c.blurredInterval, c.backoffFactor)), e;\n };\n;\n var clock = require(\"core/clock\"), utils = require(\"core/utils\");\n module.exports = setupPollingWithBackoff;\n});\ndefine(\"app/ui/page_title\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function pageTitle() {\n this.addCount = function(a, b) {\n ((b.count && (JSBNG__document.title = ((((((\"(\" + b.count)) + \") \")) + this.title)))));\n }, this.removeCount = function(a, b) {\n JSBNG__document.title = this.title;\n }, this.setTitle = function(a, b) {\n var c = ((b || a.originalEvent.state));\n ((c && (JSBNG__document.title = this.title = c.title)));\n }, this.after(\"initialize\", function() {\n this.title = JSBNG__document.title, this.JSBNG__on(\"uiAddPageCount\", this.addCount), this.JSBNG__on(\"uiHasInjectedNewTimeline\", this.removeCount), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.setTitle);\n });\n };\n;\n var defineComponent = require(\"core/component\"), PageTitle = defineComponent(pageTitle);\n module.exports = PageTitle;\n});\ndefine(\"app/ui/feedback/with_feedback_tweet\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/ui/dialogs/with_modal_tweet\",], function(module, require, exports) {\n function withFeedbackTweet() {\n compose.mixin(this, [withModalTweet,]), this.defaultAttrs({\n tweetItemSelector: \"div.tweet\",\n streamSelector: \"div.stream-container\"\n }), this.insertTweetIntoDialog = function() {\n if (((this.selectedKey.indexOf(\"stream_status_\") == -1))) {\n return;\n }\n ;\n ;\n var a = this.attr.tweetItemSelector.split(\",\").map(function(a) {\n return ((((((a + \"[data-feedback-key=\")) + this.selectedKey)) + \"]\"));\n }.bind(this)).join(\",\"), b = $(this.attr.streamSelector).JSBNG__find(a);\n this.addTweet(b.clone().removeClass(\"retweeted favorited\"));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiInsertElementIntoFeedbackDialog\", this.insertTweetIntoDialog);\n });\n };\n;\n var compose = require(\"core/compose\"), withModalTweet = require(\"app/ui/dialogs/with_modal_tweet\");\n module.exports = withFeedbackTweet;\n});\ndefine(\"app/ui/feedback/feedback_stories\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function feedbackStories() {\n this.defaultAttrs({\n debugStringToggle: \".toggle-debug\",\n debugStringSelector: \".debug-string\",\n storyDataSelector: \".story-data\"\n }), this.toggleDebugData = function(a) {\n this.select(\"storyDataSelector\").toggleClass(\"expanded\");\n }, this.convertDebugToHTML = function() {\n var a = this.select(\"debugStringSelector\").text(), b = a.replace(/\\n/g, \"\\u003Cbr\\u003E\");\n this.select(\"debugStringSelector\").html(b);\n }, this.after(\"initialize\", function() {\n this.convertDebugToHTML(), this.JSBNG__on(\"click\", {\n debugStringToggle: this.toggleDebugData\n });\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(feedbackStories);\n});\ndefine(\"app/ui/feedback/with_feedback_discover\", [\"module\",\"require\",\"exports\",\"app/ui/feedback/feedback_stories\",], function(module, require, exports) {\n function withFeedbackDiscover() {\n this.defaultAttrs({\n storyItemSelector: \"div.tweet\",\n storyStreamSelector: \"div.stream-container\",\n debugStorySelector: \".debug-story.expanded\",\n inlinedStorySelector: \".debug-story.inlined\"\n }), this.insertStoryIntoDialog = function() {\n if (((this.selectedKey.indexOf(\"story_status_\") == -1))) {\n return;\n }\n ;\n ;\n var a = ((((((this.attr.storyItemSelector + \"[data-feedback-key=\\\"\")) + this.selectedKey)) + \"\\\"]\")), b = $(this.attr.storyStreamSelector).JSBNG__find(a);\n this.select(\"debugStorySelector\").append(b.clone().removeClass(\"retweeted favorited\"));\n }, this.insertFeedbackStories = function() {\n if (((this.selectedKey != \"discover_stories_debug\"))) {\n return;\n }\n ;\n ;\n var a = $(this.attr.storyStreamSelector).JSBNG__find(this.attr.storyItemSelector), b = this.select(\"contentContainerSelector\");\n b.empty(), a.each(function(a, c) {\n var d = $(c).data(\"feedback-key\");\n ((this.debugData[d] && this.debugData[d].forEach(function(a) {\n b.append(a.html);\n })));\n }.bind(this)), this.select(\"inlinedStorySelector\").show(), FeedbackStories.attachTo(this.attr.inlinedStorySelector);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiInsertElementIntoFeedbackDialog\", this.insertStoryIntoDialog), this.JSBNG__on(JSBNG__document, \"uiInsertElementIntoFeedbackDialog\", this.insertFeedbackStories);\n });\n };\n;\n var FeedbackStories = require(\"app/ui/feedback/feedback_stories\");\n module.exports = withFeedbackDiscover;\n});\ndefine(\"app/ui/feedback/feedback_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/cookie\",\"app/ui/with_position\",\"app/ui/with_dialog\",\"app/ui/feedback/with_feedback_tweet\",\"app/ui/feedback/with_feedback_discover\",\"core/i18n\",], function(module, require, exports) {\n function feedbackDialog() {\n this.defaultAttrs({\n contentContainerSelector: \".sample-content\",\n debugContainerSelector: \".modal-inner.debug\",\n cancelSelector: \".cancel\",\n reportLinkSelector: \".report-link\",\n spinnerSelector: \".loading-spinner\",\n pastedContentSelector: \".feedback-json-output\",\n selectPasteSelector: \"#select-paste-text\",\n formSelector: \"form\",\n navBarSelector: \".nav-tabs\",\n navBarTabSelector: \".nav-tabs li:not(.tab-disabled):not(.active)\",\n debugKeySelectorSelector: \"select[name=debug-key]\",\n summaryInputSelector: \"input[name=summary]\",\n descriptionInputSelector: \"textarea[name=comments]\",\n screenshotInputSelector: \"input[name=includeScreenshot]\",\n screenshotPreviewLink: \"#feedback-preview-screenshot\",\n summaryErrorSelector: \".summary-error\",\n descriptionErrorSelector: \".description-error\",\n lastTabCookie: \"last_feedback_tab\",\n reportEmail: null,\n reportScreenshotProxyUrl: null,\n debugDataText: \"\",\n debugDataKey: \"\",\n feedbackSuccessText: \"\",\n dialogToggleSelector: \".feedback-dialog .feedback-data-toggle\"\n }), this.takeScreenshot = function() {\n using(\"$lib/html2canvas.js\", function() {\n var a = function(a) {\n ((this.imageCanvas || (this.imageCanvas = a, this.select(\"screenshotPreviewLink\").attr(\"href\", this.imageCanvas.toDataURL()), this.trigger(\"uiNeedsFeedbackData\"))));\n };\n html2canvas($(\"body\"), {\n proxy: null,\n onrendered: a.bind(this),\n timeout: 1000\n });\n }.bind(this));\n }, this.setErrorState = function(a, b) {\n ((b ? this.select(a).show() : this.select(a).hide()));\n }, this.resetParams = function(a) {\n this.selectedKey = this.debugKey, this.selectedProject = this.projectKey, this.debugKey = null, this.projectKey = null, this.debugData = a;\n }, this.toggleDebugEnabled = function(a, b) {\n this.trigger(\"uiToggleDebugFeedback\", {\n enabled: $(b.el).is(\".off\")\n });\n }, this.prepareDialog = function(a, b) {\n this.debugKey = b.debugKey, this.projectKey = b.projectKey, this.imageCanvas = null, this.takeScreenshot();\n }, this.JSBNG__openDialog = function(a, b) {\n this.showTabFromName(((cookie(this.attr.lastTabCookie) || \"report\")));\n var c = \"\";\n ((((((this.debugKey && b[this.debugKey])) && ((b[this.debugKey].length > 0)))) && b[this.debugKey].forEach(function(a) {\n ((a.html && (c += a.html)));\n }))), this.select(\"contentContainerSelector\").html(c), this.select(\"screenshotInputSelector\").attr(\"checked\", !0), this.select(\"reportLinkSelector\").JSBNG__find(\"button\").removeClass(\"disabled\"), this.select(\"spinnerSelector\").css(\"visibility\", \"hidden\"), this.trigger(\"uiCheckFeedbackBackendAvailable\"), this.resetParams(b), this.resetErrorStatus(), ((this.selectedKey && this.trigger(\"uiInsertElementIntoFeedbackDialog\"))), this.refreshAvailableDataKeys(), this.reportToConsole(b), this.open();\n }, this.showTabFromName = function(a) {\n this.select(\"navBarSelector\").JSBNG__find(\"li\").removeClass(\"active\"), this.select(\"navBarSelector\").JSBNG__find(((((\"li[data-tab-name=\" + a)) + \"]\"))).addClass(\"active\"), this.$node.JSBNG__find(\".modal-inner\").hide(), this.$node.JSBNG__find(((\".modal-inner.\" + a))).show(), cookie(this.attr.lastTabCookie, a);\n }, this.refreshAvailableDataKeys = function() {\n var a = this.select(\"debugKeySelectorSelector\");\n a.empty();\n var b = this.selectedKey;\n Object.keys(this.debugData).forEach(function(c) {\n var d = $(((((\"\\u003Coption\\u003E\" + c)) + \"\\u003C/option\\u003E\")));\n ((((b == c)) && (d = $(((((((((\"\\u003Coption value=\" + c)) + \"\\u003E\")) + c)) + \" (selected)\\u003C/option\\u003E\")))))), a.append(d);\n }), a.val(this.selectedKey), this.refreshDebugJSON();\n }, this.refreshDebugJSON = function(a) {\n var b = ((this.select(\"debugKeySelectorSelector\").val() || this.selectedKey));\n if (((!b || !this.debugData[b]))) {\n return;\n }\n ;\n ;\n var c = this.debugData[b].map(function(a) {\n return a.data;\n });\n this.select(\"pastedContentSelector\").html(JSON.stringify(c, undefined, 2));\n }, this.resetErrorStatus = function() {\n this.setErrorState(\"summaryErrorSelector\", !1), this.setErrorState(\"descriptionErrorSelector\", !1);\n }, this.reportToConsole = function(a) {\n if (((!window.JSBNG__console || !Object.keys(a).length))) {\n return;\n }\n ;\n ;\n ((JSBNG__console.log && JSBNG__console.log(this.attr.debugDataText))), ((JSBNG__console.dir && JSBNG__console.dir(this.debugData)));\n }, this.reportFeedback = function(a, b) {\n a.preventDefault(), this.resetErrorStatus();\n var c = {\n };\n this.select(\"formSelector\").serializeArray().map(function(a) {\n ((((c[a.JSBNG__name] && $.isArray(c[a.JSBNG__name]))) ? c[a.JSBNG__name].push(a.value) : ((c[a.JSBNG__name] ? c[a.JSBNG__name] = [c[a.JSBNG__name],a.value,] : c[a.JSBNG__name] = a.value))));\n });\n var d = this.select(\"summaryInputSelector\").val(), e = this.select(\"descriptionInputSelector\").val();\n if (((!d || !e))) {\n ((d || this.setErrorState(\"summaryErrorSelector\", !0))), ((e || this.setErrorState(\"descriptionErrorSelector\", !0)));\n return;\n }\n ;\n ;\n ((((this.imageCanvas && c.includeScreenshot)) && (c.screenshotData = this.imageCanvas.toDataURL()))), ((this.selectedProject && (c.project = this.selectedProject))), ((this.selectedKey && (c.key = this.selectedKey))), (($.isEmptyObject(this.debugData) || (c.debug_text = JSON.stringify(this.debugData, undefined, 2), ((this.debugData.initial_pageload && (basicData = this.debugData.initial_pageload[0].data, c.basic_info = ((((((((((((((\"Screen Name: \" + basicData.screen_name)) + \"\\u000a\")) + \"URL: \")) + basicData.url)) + \"\\u000a\")) + \"User Agent: \")) + basicData.userAgent)))))))), this.select(\"reportLinkSelector\").JSBNG__find(\"button\").addClass(\"disabled\"), this.select(\"spinnerSelector\").css(\"visibility\", \"visible\"), this.trigger(\"uiFeedbackBackendPost\", c);\n }, this.handleBackendSuccess = function(a, b) {\n this.close(), this.select(\"formSelector\")[0].reset(), this.trigger(\"uiShowError\", {\n message: _(\"Successfully created Jira ticket: {{ticketId}}\", {\n ticketId: ((((((((\"\\u003Ca target='_blank' href='\" + b.link)) + \"'\\u003E\")) + b.ticketId)) + \"\\u003C/a\\u003E\"))\n })\n });\n }, this.triggerEmail = function(a, b) {\n this.close(), this.select(\"formSelector\")[0].reset(), window.open(b.link, \"_blank\"), this.trigger(\"uiShowError\", {\n message: _(\"Failed to create Jira ticket. Please see the popup to send an email instead.\")\n });\n }, this.switchTab = function(a, b) {\n a.preventDefault(), this.showTabFromName($(a.target).closest(\"li\").data(\"tab-name\"));\n }, this.selectText = function(a, b) {\n this.select(\"debugContainerSelector\").JSBNG__find(\"textarea\")[0].select();\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataFeedback\", this.JSBNG__openDialog), this.JSBNG__on(JSBNG__document, \"dataFeedbackBackendSuccess\", this.handleBackendSuccess), this.JSBNG__on(JSBNG__document, \"dataFeedbackBackendFailure\", this.triggerEmail), this.JSBNG__on(JSBNG__document, \"uiPrepareFeedbackDialog\", this.prepareDialog), this.JSBNG__on(\"change\", {\n debugKeySelectorSelector: this.refreshDebugJSON\n }), this.JSBNG__on(\"click\", {\n dialogToggleSelector: this.toggleDebugEnabled,\n navBarTabSelector: this.switchTab,\n cancelSelector: this.close,\n reportLinkSelector: this.reportFeedback,\n selectPasteSelector: this.selectText\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), cookie = require(\"app/utils/cookie\"), withPosition = require(\"app/ui/with_position\"), withDialog = require(\"app/ui/with_dialog\"), withFeedbackTweet = require(\"app/ui/feedback/with_feedback_tweet\"), withFeedbackDiscover = require(\"app/ui/feedback/with_feedback_discover\"), _ = require(\"core/i18n\");\n module.exports = defineComponent(feedbackDialog, withDialog, withPosition, withFeedbackTweet, withFeedbackDiscover);\n});\ndefine(\"app/ui/feedback/feedback_report_link_handler\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function feedbackReportLinkHandler() {\n this.defaultAttrs({\n reportElementLinkSelector: \".feedback-btn[data-feedback-key]\"\n }), this.JSBNG__openDialog = function(a, b) {\n a.preventDefault();\n var c = $(b.el);\n b = {\n }, b.debugKey = c.data(\"feedback-key\"), b.projectKey = c.data(\"team-key\"), this.trigger(\"uiPrepareFeedbackDialog\", b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"click\", {\n reportElementLinkSelector: this.JSBNG__openDialog\n });\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(feedbackReportLinkHandler);\n});\ndefine(\"app/data/feedback/feedback\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/cookie\",\"app/data/with_data\",], function(module, require, exports) {\n function feedbackData() {\n var a = !0;\n this.defaultAttrs({\n feedbackCookie: \"debug_data\",\n data: {\n },\n reportEmail: undefined,\n reportBackendPingUrl: undefined,\n reportBackendPostUrl: undefined,\n reportBackendGetUrl: undefined\n }), this.isBackendAvailable = function() {\n return a;\n }, this.getFeedbackData = function(a, b) {\n this.trigger(\"dataFeedback\", this.attr.data);\n }, this.toggleFeedbackCookie = function(a, b) {\n var c = ((b.enabled ? !0 : null));\n cookie(this.attr.feedbackCookie, c), this.refreshPage(), this.checkDebugEnabled();\n }, this.refreshPage = function() {\n JSBNG__document.JSBNG__location.reload(!0);\n }, this.checkDebugEnabled = function() {\n this.trigger(\"dataDebugFeedbackChanged\", {\n enabled: !!cookie(this.attr.feedbackCookie)\n });\n }, this.addFeedbackData = function(a, b) {\n var c = this.attr.data;\n {\n var fin70keys = ((window.top.JSBNG_Replay.forInKeys)((b))), fin70i = (0);\n var d;\n for (; (fin70i < fin70keys.length); (fin70i++)) {\n ((d) = (fin70keys[fin70i]));\n {\n ((c[d] ? c[d] = [].concat.apply(c[d], b[d]) : c[d] = b[d]));\n ;\n };\n };\n };\n ;\n }, this.pingBackend = function(b, c) {\n if (((this.attr.reportBackendPingUrl == null))) {\n a = !1;\n return;\n }\n ;\n ;\n var d = function(b) {\n a = !0;\n }, e = function(b) {\n a = !1;\n };\n this.get({\n url: this.attr.reportBackendPingUrl,\n success: d.bind(this),\n error: e.bind(this)\n });\n }, this.backendPost = function(b, c) {\n if (!this.isBackendAvailable()) {\n this.fallbackToEmail(b, c);\n return;\n }\n ;\n ;\n var d = function(a) {\n var b = ((this.attr.reportBackendGetUrl + a.key));\n this.trigger(\"dataFeedbackBackendSuccess\", {\n link: b,\n ticketId: a.key\n });\n }, e = function(d) {\n a = !1, this.fallbackToEmail(b, c);\n };\n this.post({\n url: this.attr.reportBackendPostUrl,\n data: c,\n isMutation: !1,\n success: d.bind(this),\n error: e.bind(this)\n });\n }, this.fallbackToEmail = function(a, b) {\n var c = ((((((((\"mailto:\" + this.attr.reportEmail)) + \"?subject=\")) + b.summary)) + \"&body=\")), d = [\"summary\",\"debug_data\",\"debug_text\",\"screenshotData\",];\n {\n var fin71keys = ((window.top.JSBNG_Replay.forInKeys)((b))), fin71i = (0);\n var e;\n for (; (fin71i < fin71keys.length); (fin71i++)) {\n ((e) = (fin71keys[fin71i]));\n {\n ((((d.indexOf(e) < 0)) && (c += ((((((e.toString() + \": \")) + b[e].toString())) + \"%0D%0A\")))));\n ;\n };\n };\n };\n ;\n this.trigger(\"dataFeedbackBackendFailure\", {\n link: c,\n data: b\n });\n }, this.logNavigation = function(a, b) {\n this.trigger(\"dataSetDebugData\", {\n pushState: [{\n data: {\n href: b.href,\n \"module\": b.module,\n title: b.title\n }\n },]\n });\n }, this.after(\"initialize\", function(a) {\n this.data = ((a.data || {\n })), this.JSBNG__on(\"uiNeedsFeedbackData\", this.getFeedbackData), this.JSBNG__on(\"uiToggleDebugFeedback\", this.toggleFeedbackCookie), this.JSBNG__on(\"dataSetDebugData\", this.addFeedbackData), this.JSBNG__on(\"uiCheckFeedbackBackendAvailable\", this.pingBackend), this.JSBNG__on(\"uiFeedbackBackendPost\", this.backendPost), this.JSBNG__on(\"uiPageChanged\", this.logNavigation), this.checkDebugEnabled();\n });\n };\n;\n var defineComponent = require(\"core/component\"), cookie = require(\"app/utils/cookie\"), withData = require(\"app/data/with_data\");\n module.exports = defineComponent(feedbackData, withData);\n});\ndefine(\"app/ui/search_query_source\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/storage/custom\",], function(module, require, exports) {\n function searchQuerySource() {\n this.defaultAttrs({\n querySourceLinkSelector: \"a[data-query-source]\",\n querySourceDataAttr: \"data-query-source\",\n storageExpiration: 60000\n }), this.saveQuerySource = function(a) {\n this.storage.setItem(\"source\", {\n source: {\n value: a,\n expire: ((JSBNG__Date.now() + this.attr.storageExpiration))\n }\n }, this.attr.storageExpiration);\n }, this.catchLinkClick = function(a, b) {\n var c = $(b.el).attr(this.attr.querySourceDataAttr);\n ((c && this.saveQuerySource(c)));\n }, this.saveTypedQuery = function(a, b) {\n if (((b.source !== \"search\"))) {\n return;\n }\n ;\n ;\n this.saveQuerySource(\"typed_query\");\n }, this.after(\"initialize\", function() {\n var a = customStorage({\n withExpiry: !0\n });\n this.storage = new a(\"searchQuerySource\"), this.JSBNG__on(\"click\", {\n querySourceLinkSelector: this.catchLinkClick\n }), this.JSBNG__on(\"uiSearchQuery\", this.saveTypedQuery);\n });\n };\n;\n var defineComponent = require(\"core/component\"), customStorage = require(\"app/utils/storage/custom\");\n module.exports = defineComponent(searchQuerySource);\n});\ndefine(\"app/ui/banners/email_banner\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function emailBanner() {\n this.defaultAttrs({\n resendConfirmationEmailLinkSelector: \".resend-confirmation-email-link\",\n resetBounceLinkSelector: \".reset-bounce-link\"\n }), this.resendConfirmationEmail = function() {\n this.trigger(\"uiResendConfirmationEmail\");\n }, this.resetBounceLink = function() {\n this.trigger(\"uiResetBounceLink\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n resendConfirmationEmailLinkSelector: this.resendConfirmationEmail,\n resetBounceLinkSelector: this.resetBounceLink\n });\n });\n };\n;\n var defineComponent = require(\"core/component\");\n module.exports = defineComponent(emailBanner);\n});\ndefine(\"app/data/email_banner\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",\"core/i18n\",], function(module, require, exports) {\n function emailBannerData() {\n this.resendConfirmationEmail = function() {\n var a = function(a) {\n this.trigger(\"uiShowMessage\", {\n message: a.messageForFlash\n });\n }, b = function() {\n this.trigger(\"uiShowMessage\", {\n message: _(\"Oops! There was an error sending the confirmation email.\")\n });\n };\n this.post({\n url: \"/account/resend_confirmation_email\",\n eventData: null,\n data: null,\n success: a.bind(this),\n error: b.bind(this)\n });\n }, this.resetBounceScore = function() {\n var a = function() {\n this.trigger(\"uiShowMessage\", {\n message: _(\"Your email notifications should resume shortly.\")\n });\n }, b = function() {\n this.trigger(\"uiShowMessage\", {\n message: _(\"Oops! There was an error sending email notifications.\")\n });\n };\n this.post({\n url: \"/bouncers/reset\",\n eventData: null,\n data: null,\n success: a.bind(this),\n error: b.bind(this)\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiResendConfirmationEmail\", this.resendConfirmationEmail), this.JSBNG__on(\"uiResetBounceLink\", this.resetBounceScore);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), _ = require(\"core/i18n\");\n module.exports = defineComponent(emailBannerData, withData);\n});\nprovide(\"app/ui/media/phoenix_shim\", function(a) {\n using(\"core/parameterize\", \"core/utils\", function(b, c) {\n var d = {\n }, e = {\n }, f = [], g = {\n send: function() {\n throw Error(\"you have to define sandboxedAjax.send\");\n }\n }, h = function(a, b) {\n return b = ((b || \"\")), ((((typeof a != \"string\")) && (((a.global && (b += \"g\"))), ((a.ignoreCase && (b += \"i\"))), ((a.multiline && (b += \"m\"))), a = a.source))), new RegExp(a.replace(/#\\{(\\w+)\\}/g, function(a, b) {\n var c = ((e[b] || \"\"));\n return ((((typeof c != \"string\")) && (c = c.source))), c;\n }), b);\n }, i = {\n media: {\n types: {\n }\n },\n bind: function(a, b, c) {\n return function() {\n return b.apply(a, ((c ? c.concat(Array.prototype.slice.apply(arguments)) : arguments)));\n };\n },\n each: function(a, b, c) {\n for (var d = 0, e = a.length; ((d < e)); ++d) {\n ((c ? b.call(c, a[d], d, a) : b(a[d], d, a)));\n ;\n };\n ;\n },\n merge: function() {\n var a = $.makeArray(arguments);\n return ((((a.length === 1)) ? a[0] : (((((typeof a[((a.length - 1))] == \"boolean\")) && a.unshift(a.pop()))), $.extend.apply(null, a))));\n },\n proto: JSBNG__location.protocol.slice(0, -1),\n provide: function(_, a) {\n e = a;\n },\n isSSL: function() {\n \n },\n mediaType: function(a, b) {\n d[a] = b, ((b.title || (d[a].title = a)));\n {\n var fin72keys = ((window.top.JSBNG_Replay.forInKeys)((b.matchers))), fin72i = (0);\n var e;\n for (; (fin72i < fin72keys.length); (fin72i++)) {\n ((e) = (fin72keys[fin72i]));\n {\n var g = h(b.matchers[e]);\n b.matchers[e] = g, b._name = a, f.push([g,a,e,]);\n };\n };\n };\n ;\n return i.media.types[a] = {\n matchers: b.matchers\n }, {\n statics: function(b) {\n return d[a].statics = b, d[a] = c.merge(d[a], b), i.media.types[a].templates = b.templates, this;\n },\n methods: function(b) {\n return d[a].methods = b, d[a] = c.merge(d[a], b), this;\n }\n };\n },\n constants: {\n imageSizes: {\n small: \"small\",\n medium: \"medium\",\n large: \"large\",\n original: \"original\"\n }\n },\n helpers: {\n truncate: function(a, b, c) {\n return ((a.slice(0, b) + c));\n }\n },\n util: {\n joinPath: function(a, b) {\n var c = ((((a.substr(-1) === \"/\")) ? \"\" : \"/\"));\n return ((((a + c)) + b));\n },\n supplant: function(a, c) {\n return b(a.replace(/\\{/g, \"{{\").replace(/\\}/g, \"}}\"), c);\n },\n paramsFromUrl: function(a) {\n if (((!a || ((a.indexOf(\"?\") < 0))))) {\n return null;\n }\n ;\n ;\n var b = {\n };\n return a.slice(1).split(\"&\").forEach(function(a) {\n var c = a.split(\"=\");\n b[c[0]] = c[1];\n }), b;\n }\n },\n sandboxedAjax: g\n };\n a({\n Mustache: {\n to_html: b\n },\n twttr: i,\n mediaTypes: d,\n matchers: f,\n sandboxedAjax: g\n });\n });\n});\nprovide(\"app/utils/twt\", function(a) {\n using(\"//platform.twitter.com/js/vendor/twt/dist/twt.all.min.js\", \"css!//platform.twitter.com/twt/twt.css\", function() {\n var b = window.twt;\n try {\n delete window.twt;\n } catch (c) {\n window.twt = undefined;\n };\n ;\n a(b);\n });\n});\nprovide(\"app/ui/media/types\", function(a) {\n using(\"app/ui/media/phoenix_shim\", function(b) {\n function e(a) {\n return ((c.isSSL() ? a.replace(/^http:/, \"https:\") : a));\n };\n ;\n var c = phx = b.twttr, d = b.Mustache;\n c.provide(\"twttr.regexps\", {\n protocol: /(?:https?\\:\\/\\/)/,\n protocol_no_ssl: /(?:http\\:\\/\\/)/,\n optional_protocol: /(?:(?:https?\\:\\/\\/)?(?:www\\.)?)/,\n protocol_subdomain: /(?:(?:https?\\:\\/\\/)?(?:[\\w\\-]+\\.))/,\n optional_protocol_subdomain: /(?:(?:https?\\:\\/\\/)?(?:[\\w\\-]+\\.)?)/,\n wildcard: /[a-zA-Z0-9_#\\.\\-\\?\\&\\=\\/]+/,\n itunes_protocol: /(?:https?\\:\\/\\/)?(?:[a-z]\\.)?itunes\\.apple\\.com(?:\\/[a-z][a-z])?/\n }), c.mediaType(\"Twitter\", {\n icon: \"tweet\",\n domain: \"//twitter.com\",\n ssl: !0,\n skipAttributionInDiscovery: !0,\n matchers: {\n permalink: /^#{optional_protocol}?twitter\\.com\\/(?:#!?\\/)?\\w{1,20}\\/status\\/(\\d+)[\\/]?$/i\n },\n process: function(a) {\n var b = this;\n using(\"app/utils/twt\", function(d) {\n if (!d) {\n return;\n }\n ;\n ;\n d.settings.lang = $(\"html\").attr(\"lang\"), c.sandboxedAjax.send({\n url: \"//cdn.api.twitter.com/1/statuses/show.json\",\n dataType: \"jsonp\",\n data: {\n include_entities: !0,\n contributor_details: !0,\n id: b.slug\n },\n success: function(c) {\n b.tweetHtml = d.tweet(c).html(), a();\n }\n });\n });\n },\n render: function(a) {\n $(a).append(((((\"\\u003Cdiv class='tweet-embed'\\u003E\" + this.tweetHtml)) + \"\\u003C/div\\u003E\")));\n }\n }), c.mediaType(\"Apple\", {\n icon: function() {\n switch (this.label) {\n case \"song\":\n return \"song\";\n case \"album\":\n return \"album\";\n case \"music_video\":\n \n case \"video\":\n \n case \"movie\":\n \n case \"tv\":\n return \"video\";\n case \"software\":\n return \"software\";\n case \"JSBNG__event\":\n \n case \"preorder\":\n \n case \"playlist\":\n \n case \"ping_playlist\":\n \n case \"podcast\":\n \n case \"book\":\n \n default:\n return \"generic\";\n };\n ;\n },\n domain: \"http://itunes.apple.com\",\n deciderKey: \"phoenix_apple_itunes\",\n matchers: {\n song: /^#{itunes_protocol}(?:\\/album)\\/.*\\?i=/i,\n album: /^#{itunes_protocol}(?:\\/album)\\//i,\n JSBNG__event: /^#{itunes_protocol}\\/event\\//i,\n music_video: /^#{itunes_protocol}(?:\\/music-video)\\//i,\n video: /^#{itunes_protocol}(?:\\/video)\\//i,\n software: /^#{itunes_protocol}(?:\\/app)\\//i,\n playlist: /^#{itunes_protocol}(?:\\/imix)\\//i,\n ping_playlist: /^#{itunes_protocol}(?:\\/imixes)\\?/i,\n preorder: /^#{itunes_protocol}(?:\\/preorder)\\//i\n },\n ssl: !1,\n getImageURL: function(a, b) {\n var c = this;\n this.process(function() {\n ((((c.data && c.data.src)) ? b(c.data.src) : b(null)));\n });\n },\n enableAPI: !1,\n validActions: {\n resizeFrame: !0,\n bind: !0,\n unbind: !0\n },\n process: function(a, b) {\n var d = this;\n b = ((b || {\n })), c.sandboxedAjax.send({\n url: \"http://itunes.apple.com/WebObjects/MZStore.woa/wa/remotePreview\",\n type: \"GET\",\n dataType: \"jsonp\",\n data: {\n url: this.url,\n maxwidth: b.maxwidth\n },\n success: function(b) {\n ((b.error || (d.data.src = b.src, d.data.attribution_icon = b.attribution_icon, d.data.attribution_url = b.attribution_url, d.data.attribution_title = \"iTunes\", ((b.favicon && (d.data.attribution_icon = b.favicon))), ((b.faviconLink && (d.data.attribution_url = b.faviconLink))), ((b.height && (d.data.height = b.height))), a())));\n }\n });\n },\n render: function(a) {\n this.renderEmbeddedApplication(a, this.data.src);\n }\n }), a(b);\n });\n});\ndeferred(\"$lib/easyXDM.js\", function() {\n (function(a, b, c, d, e, f) {\n function s(a, b) {\n var c = typeof a[b];\n return ((((((c == \"function\")) || ((((c == \"object\")) && !!a[b])))) || ((c == \"unknown\"))));\n };\n ;\n function t(a, b) {\n return ((((typeof a[b] == \"object\")) && !!a[b]));\n };\n ;\n function u(a) {\n return ((Object.prototype.toString.call(a) === \"[object Array]\"));\n };\n ;\n function v(a) {\n try {\n var b = new ActiveXObject(a);\n return b = null, !0;\n } catch (c) {\n return !1;\n };\n ;\n };\n ;\n function B() {\n B = i, y = !0;\n for (var a = 0; ((a < z.length)); a++) {\n z[a]();\n ;\n };\n ;\n z.length = 0;\n };\n ;\n function D(a, b) {\n if (y) {\n a.call(b);\n return;\n }\n ;\n ;\n z.push(function() {\n a.call(b);\n });\n };\n ;\n function E() {\n var a = parent;\n if (((m !== \"\"))) {\n for (var b = 0, c = m.split(\".\"); ((b < c.length)); b++) {\n a = a[c[b]];\n ;\n };\n }\n ;\n ;\n return a.easyXDM;\n };\n ;\n function F(b) {\n return a.easyXDM = o, m = b, ((m && (p = ((((\"easyXDM_\" + m.replace(\".\", \"_\"))) + \"_\"))))), n;\n };\n ;\n function G(a) {\n return a.match(j)[3];\n };\n ;\n function H(a) {\n var b = a.match(j), c = b[2], d = b[3], e = ((b[4] || \"\"));\n if (((((((c == \"http:\")) && ((e == \":80\")))) || ((((c == \"https:\")) && ((e == \":443\"))))))) {\n e = \"\";\n }\n ;\n ;\n return ((((((c + \"//\")) + d)) + e));\n };\n ;\n function I(a) {\n a = a.replace(l, \"$1/\");\n if (!a.match(/^(http||https):\\/\\//)) {\n var b = ((((a.substring(0, 1) === \"/\")) ? \"\" : c.pathname));\n ((((b.substring(((b.length - 1))) !== \"/\")) && (b = b.substring(0, ((b.lastIndexOf(\"/\") + 1)))))), a = ((((((((c.protocol + \"//\")) + c.host)) + b)) + a));\n }\n ;\n ;\n while (k.test(a)) {\n a = a.replace(k, \"\");\n ;\n };\n ;\n return a;\n };\n ;\n function J(a, b) {\n var c = \"\", d = a.indexOf(\"#\");\n ((((d !== -1)) && (c = a.substring(d), a = a.substring(0, d))));\n var e = [];\n {\n var fin73keys = ((window.top.JSBNG_Replay.forInKeys)((b))), fin73i = (0);\n var g;\n for (; (fin73i < fin73keys.length); (fin73i++)) {\n ((g) = (fin73keys[fin73i]));\n {\n ((b.hasOwnProperty(g) && e.push(((((g + \"=\")) + f(b[g]))))));\n ;\n };\n };\n };\n ;\n return ((((((a + ((r ? \"#\" : ((((a.indexOf(\"?\") == -1)) ? \"?\" : \"&\")))))) + e.join(\"&\"))) + c));\n };\n ;\n function L(a) {\n return ((typeof a == \"undefined\"));\n };\n ;\n function M() {\n var a = {\n }, b = {\n a: [1,2,3,]\n }, c = \"{\\\"a\\\":[1,2,3]}\";\n return ((((((((typeof JSON != \"undefined\")) && ((typeof JSON.stringify == \"function\")))) && ((JSON.stringify(b).replace(/\\s/g, \"\") === c)))) ? JSON : (((((Object.toJSON && ((Object.toJSON(b).replace(/\\s/g, \"\") === c)))) && (a.stringify = Object.toJSON))), ((((typeof String.prototype.evalJSON == \"function\")) && (b = c.evalJSON(), ((((((b.a && ((b.a.length === 3)))) && ((b.a[2] === 3)))) && (a.parse = function(a) {\n return a.evalJSON();\n })))))), ((((a.stringify && a.parse)) ? (M = function() {\n return a;\n }, a) : null)))));\n };\n ;\n function N(a, b, c) {\n var d;\n {\n var fin74keys = ((window.top.JSBNG_Replay.forInKeys)((b))), fin74i = (0);\n var e;\n for (; (fin74i < fin74keys.length); (fin74i++)) {\n ((e) = (fin74keys[fin74i]));\n {\n ((b.hasOwnProperty(e) && ((((e in a)) ? (d = b[e], ((((typeof d == \"object\")) ? N(a[e], d, c) : ((c || (a[e] = b[e])))))) : a[e] = b[e]))));\n ;\n };\n };\n };\n ;\n return a;\n };\n ;\n function O() {\n var c = b.createElement(\"div\");\n c.JSBNG__name = ((p + \"TEST\")), N(c.style, {\n position: \"absolute\",\n left: \"-2000px\",\n JSBNG__top: \"0px\"\n }), b.body.appendChild(c), q = ((c.contentWindow !== a.JSBNG__frames[c.JSBNG__name])), b.body.removeChild(c);\n };\n ;\n function P(a) {\n ((L(q) && O()));\n var c;\n ((q ? c = b.createElement(((((\"\\u003Ciframe name='\" + a.props.JSBNG__name)) + \"' frameborder='0' allowtransparency='false' tabindex='-1', role='presentation' scrolling='no' /\\u003E\"))) : (c = b.createElement(\"div\"), c.JSBNG__name = a.props.JSBNG__name, c.setAttribute(\"frameborder\", \"0\"), c.setAttribute(\"allowtransparency\", \"false\"), c.setAttribute(\"tabindex\", \"-1\"), c.setAttribute(\"role\", \"presentation\"), c.setAttribute(\"scrolling\", \"no\")))), c.id = c.JSBNG__name = a.props.JSBNG__name, delete a.props.JSBNG__name, ((a.onLoad && w(c, \"load\", a.onLoad))), ((((typeof a.container == \"string\")) && (a.container = b.getElementById(a.container)))), ((a.container || (c.style.position = \"absolute\", c.style.JSBNG__top = \"-2000px\", a.container = b.body)));\n var d = a.props.src;\n return delete a.props.src, N(c, a.props), c.border = c.frameBorder = 0, a.container.appendChild(c), c.src = d, a.props.src = d, c;\n };\n ;\n function Q(a, b) {\n ((((typeof a == \"string\")) && (a = [a,])));\n var c, d = a.length;\n while (d--) {\n c = a[d], c = new RegExp(((((c.substr(0, 1) == \"^\")) ? c : ((((\"^\" + c.replace(/(\\*)/g, \".$1\").replace(/\\?/g, \".\"))) + \"$\")))));\n if (c.test(b)) {\n return !0;\n }\n ;\n ;\n };\n ;\n return !1;\n };\n ;\n function R(d) {\n var e = d.protocol, f;\n d.isHost = ((d.isHost || L(K.xdm_p))), r = ((d.hash || !1)), ((d.props || (d.props = {\n })));\n if (!d.isHost) {\n d.channel = K.xdm_c, d.secret = K.xdm_s, d.remote = K.xdm_e, e = K.xdm_p;\n if (((d.acl && !Q(d.acl, d.remote)))) {\n throw new Error(((\"Access denied for \" + d.remote)));\n }\n ;\n ;\n }\n else d.remote = I(d.remote), d.channel = ((d.channel || ((\"default\" + h++)))), d.secret = Math.JSBNG__random().toString(16).substring(2), ((L(e) && ((((H(c.href) == H(d.remote))) ? e = \"4\" : ((((s(a, \"JSBNG__postMessage\") || s(b, \"JSBNG__postMessage\"))) ? e = \"1\" : ((((s(a, \"ActiveXObject\") && v(\"ShockwaveFlash.ShockwaveFlash\"))) ? e = \"6\" : ((((((((JSBNG__navigator.product === \"Gecko\")) && ((\"JSBNG__frameElement\" in a)))) && ((JSBNG__navigator.userAgent.indexOf(\"WebKit\") == -1)))) ? e = \"5\" : ((d.remoteHelper ? (d.remoteHelper = I(d.remoteHelper), e = \"2\") : e = \"0\"))))))))))));\n ;\n ;\n switch (e) {\n case \"0\":\n N(d, {\n interval: 100,\n delay: 2000,\n useResize: !0,\n useParent: !1,\n usePolling: !1\n }, !0);\n if (d.isHost) {\n if (!d.local) {\n var g = ((((c.protocol + \"//\")) + c.host)), i = b.body.getElementsByTagName(\"img\"), j, k = i.length;\n while (k--) {\n j = i[k];\n if (((j.src.substring(0, g.length) === g))) {\n d.local = j.src;\n break;\n }\n ;\n ;\n };\n ;\n ((d.local || (d.local = a)));\n }\n ;\n ;\n var l = {\n xdm_c: d.channel,\n xdm_p: 0\n };\n ((((d.local === a)) ? (d.usePolling = !0, d.useParent = !0, d.local = ((((((((c.protocol + \"//\")) + c.host)) + c.pathname)) + c.search)), l.xdm_e = d.local, l.xdm_pa = 1) : l.xdm_e = I(d.local))), ((d.container && (d.useResize = !1, l.xdm_po = 1))), d.remote = J(d.remote, l);\n }\n else N(d, {\n channel: K.xdm_c,\n remote: K.xdm_e,\n useParent: !L(K.xdm_pa),\n usePolling: !L(K.xdm_po),\n useResize: ((d.useParent ? !1 : d.useResize))\n });\n ;\n ;\n f = [new n.stack.HashTransport(d),new n.stack.ReliableBehavior({\n }),new n.stack.QueueBehavior({\n encode: !0,\n maxLength: ((4000 - d.remote.length))\n }),new n.stack.VerifyBehavior({\n initiate: d.isHost\n }),];\n break;\n case \"1\":\n f = [new n.stack.PostMessageTransport(d),];\n break;\n case \"2\":\n f = [new n.stack.NameTransport(d),new n.stack.QueueBehavior,new n.stack.VerifyBehavior({\n initiate: d.isHost\n }),];\n break;\n case \"3\":\n f = [new n.stack.NixTransport(d),];\n break;\n case \"4\":\n f = [new n.stack.SameOriginTransport(d),];\n break;\n case \"5\":\n f = [new n.stack.FrameElementTransport(d),];\n break;\n case \"6\":\n ((d.swf || (d.swf = \"../../tools/easyxdm.swf\"))), f = [new n.stack.FlashTransport(d),];\n };\n ;\n return f.push(new n.stack.QueueBehavior({\n lazy: d.lazy,\n remove: !0\n })), f;\n };\n ;\n function S(a) {\n var b, c = {\n incoming: function(a, b) {\n this.up.incoming(a, b);\n },\n outgoing: function(a, b) {\n this.down.outgoing(a, b);\n },\n callback: function(a) {\n this.up.callback(a);\n },\n init: function() {\n this.down.init();\n },\n destroy: function() {\n this.down.destroy();\n }\n };\n for (var d = 0, e = a.length; ((d < e)); d++) {\n b = a[d], N(b, c, !0), ((((d !== 0)) && (b.down = a[((d - 1))]))), ((((d !== ((e - 1)))) && (b.up = a[((d + 1))])));\n ;\n };\n ;\n return b;\n };\n ;\n function T(a) {\n a.up.down = a.down, a.down.up = a.up, a.up = a.down = null;\n };\n ;\n var g = this, h = Math.floor(((Math.JSBNG__random() * 10000))), i = Function.prototype, j = /^((http.?:)\\/\\/([^:\\/\\s]+)(:\\d+)*)/, k = /[\\-\\w]+\\/\\.\\.\\//, l = /([^:])\\/\\//g, m = \"\", n = {\n }, o = a.easyXDM, p = \"easyXDM_\", q, r = !1, w, x;\n if (s(a, \"JSBNG__addEventListener\")) w = function(a, b, c) {\n a.JSBNG__addEventListener(b, c, !1);\n }, x = function(a, b, c) {\n a.JSBNG__removeEventListener(b, c, !1);\n };\n else {\n if (!s(a, \"JSBNG__attachEvent\")) {\n throw new Error(\"Browser not supported\");\n }\n ;\n ;\n w = function(a, b, c) {\n a.JSBNG__attachEvent(((\"JSBNG__on\" + b)), c);\n }, x = function(a, b, c) {\n a.JSBNG__detachEvent(((\"JSBNG__on\" + b)), c);\n };\n }\n ;\n ;\n var y = !1, z = [], A;\n ((((\"readyState\" in b)) ? (A = b.readyState, y = ((((A == \"complete\")) || ((~JSBNG__navigator.userAgent.indexOf(\"AppleWebKit/\") && ((((A == \"loaded\")) || ((A == \"interactive\"))))))))) : y = !!b.body));\n if (!y) {\n if (s(a, \"JSBNG__addEventListener\")) w(b, \"DOMContentLoaded\", B);\n else {\n w(b, \"readystatechange\", function() {\n ((((b.readyState == \"complete\")) && B()));\n });\n if (((b.documentElement.doScroll && ((a === JSBNG__top))))) {\n var C = function() {\n if (y) {\n return;\n }\n ;\n ;\n try {\n b.documentElement.doScroll(\"left\");\n } catch (a) {\n d(C, 1);\n return;\n };\n ;\n B();\n };\n C();\n }\n ;\n ;\n }\n ;\n ;\n w(a, \"load\", B);\n }\n ;\n ;\n var K = function(a) {\n a = a.substring(1).split(\"&\");\n var b = {\n }, c, d = a.length;\n while (d--) {\n c = a[d].split(\"=\"), b[c[0]] = e(c[1]);\n ;\n };\n ;\n return b;\n }(((/xdm_e=/.test(c.search) ? c.search : c.hash)));\n N(n, {\n version: \"2.4.12.108\",\n query: K,\n stack: {\n },\n apply: N,\n getJSONObject: M,\n whenReady: D,\n noConflict: F\n }), n.DomHelper = {\n JSBNG__on: w,\n un: x,\n requiresJSON: function(c) {\n ((t(a, \"JSON\") || b.write(((((((\"\\u003Cscript type=\\\"text/javascript\\\" src=\\\"\" + c)) + \"\\\"\\u003E\\u003C\")) + \"/script\\u003E\")))));\n }\n }, function() {\n var a = {\n };\n n.Fn = {\n set: function(b, c) {\n a[b] = c;\n },\n get: function(b, c) {\n var d = a[b];\n return ((c && delete a[b])), d;\n }\n };\n }(), n.Socket = function(a) {\n var b = S(R(a).concat([{\n incoming: function(b, c) {\n a.onMessage(b, c);\n },\n callback: function(b) {\n ((a.onReady && a.onReady(b)));\n }\n },])), c = H(a.remote);\n this.origin = H(a.remote), this.destroy = function() {\n b.destroy();\n }, this.JSBNG__postMessage = function(a) {\n b.outgoing(a, c);\n }, b.init();\n }, n.Rpc = function(a, b) {\n if (b.local) {\n {\n var fin75keys = ((window.top.JSBNG_Replay.forInKeys)((b.local))), fin75i = (0);\n var c;\n for (; (fin75i < fin75keys.length); (fin75i++)) {\n ((c) = (fin75keys[fin75i]));\n {\n if (b.local.hasOwnProperty(c)) {\n var d = b.local[c];\n ((((typeof d == \"function\")) && (b.local[c] = {\n method: d\n })));\n }\n ;\n ;\n };\n };\n };\n }\n ;\n ;\n var e = S(R(a).concat([new n.stack.RpcBehavior(this, b),{\n callback: function(b) {\n ((a.onReady && a.onReady(b)));\n }\n },]));\n this.origin = H(a.remote), this.destroy = function() {\n e.destroy();\n }, e.init();\n }, n.stack.SameOriginTransport = function(a) {\n var b, e, f, g;\n return b = {\n outgoing: function(a, b, c) {\n f(a), ((c && c()));\n },\n destroy: function() {\n ((e && (e.parentNode.removeChild(e), e = null)));\n },\n onDOMReady: function() {\n g = H(a.remote), ((a.isHost ? (N(a.props, {\n src: J(a.remote, {\n xdm_e: ((((((c.protocol + \"//\")) + c.host)) + c.pathname)),\n xdm_c: a.channel,\n xdm_p: 4\n }),\n JSBNG__name: ((((p + a.channel)) + \"_provider\"))\n }), e = P(a), n.Fn.set(a.channel, function(a) {\n return f = a, d(function() {\n b.up.callback(!0);\n }, 0), function(a) {\n b.up.incoming(a, g);\n };\n })) : (f = E().Fn.get(a.channel, !0)(function(a) {\n b.up.incoming(a, g);\n }), d(function() {\n b.up.callback(!0);\n }, 0))));\n },\n init: function() {\n D(b.onDOMReady, b);\n }\n };\n }, n.stack.FlashTransport = function(a) {\n function l(a) {\n d(function() {\n e.up.incoming(a, h);\n }, 0);\n };\n ;\n function o(d) {\n var e = a.swf, f = ((\"easyXDM_swf_\" + Math.floor(((Math.JSBNG__random() * 10000))))), g = ((((((k + \"easyXDM.Fn.get(\\\"flash_\")) + f)) + \"_init\\\")\"));\n n.Fn.set(((((\"flash_\" + f)) + \"_init\")), function() {\n n.stack.FlashTransport.__swf = i = j.firstChild, d();\n }), j = b.createElement(\"div\"), N(j.style, {\n height: \"1px\",\n width: \"1px\",\n postition: \"abosolute\",\n left: 0,\n JSBNG__top: 0\n }), b.body.appendChild(j);\n var h = ((((((((((\"proto=\" + c.protocol)) + \"&domain=\")) + G(c.href))) + \"&init=\")) + g));\n j.innerHTML = ((((((((((((((((((((((((((((((((((((\"\\u003Cobject height='1' width='1' type='application/x-shockwave-flash' id='\" + f)) + \"' data='\")) + e)) + \"'\\u003E\")) + \"\\u003Cparam name='allowScriptAccess' value='always'\\u003E\\u003C/param\\u003E\")) + \"\\u003Cparam name='wmode' value='transparent'\\u003E\")) + \"\\u003Cparam name='movie' value='\")) + e)) + \"'\\u003E\\u003C/param\\u003E\")) + \"\\u003Cparam name='flashvars' value='\")) + h)) + \"'\\u003E\\u003C/param\\u003E\")) + \"\\u003Cembed type='application/x-shockwave-flash' FlashVars='\")) + h)) + \"' allowScriptAccess='always' wmode='transparent' src='\")) + e)) + \"' height='1' width='1'\\u003E\\u003C/embed\\u003E\")) + \"\\u003C/object\\u003E\"));\n };\n ;\n var e, f, g, h, i, j, k = ((m ? ((m + \".\")) : \"\"));\n return e = {\n outgoing: function(b, c, d) {\n i.JSBNG__postMessage(a.channel, b), ((d && d()));\n },\n destroy: function() {\n try {\n i.destroyChannel(a.channel);\n } catch (b) {\n \n };\n ;\n i = null, ((f && (f.parentNode.removeChild(f), f = null)));\n },\n onDOMReady: function() {\n h = H(a.remote), i = n.stack.FlashTransport.__swf;\n var b = function() {\n ((a.isHost ? n.Fn.set(((((\"flash_\" + a.channel)) + \"_onMessage\")), function(b) {\n ((((b == ((a.channel + \"-ready\")))) && (n.Fn.set(((((\"flash_\" + a.channel)) + \"_onMessage\")), l), d(function() {\n e.up.callback(!0);\n }, 0))));\n }) : n.Fn.set(((((\"flash_\" + a.channel)) + \"_onMessage\")), l))), i.createChannel(a.channel, a.remote, a.isHost, ((((((k + \"easyXDM.Fn.get(\\\"flash_\")) + a.channel)) + \"_onMessage\\\")\")), a.secret), ((a.isHost ? (N(a.props, {\n src: J(a.remote, {\n xdm_e: H(c.href),\n xdm_c: a.channel,\n xdm_s: a.secret,\n xdm_p: 6\n }),\n JSBNG__name: ((((p + a.channel)) + \"_provider\"))\n }), f = P(a)) : (i.JSBNG__postMessage(a.channel, ((a.channel + \"-ready\"))), d(function() {\n e.up.callback(!0);\n }, 0))));\n };\n ((i ? b() : o(b)));\n },\n init: function() {\n D(e.onDOMReady, e);\n }\n };\n }, n.stack.PostMessageTransport = function(b) {\n function i(a) {\n if (a.origin) {\n return H(a.origin);\n }\n ;\n ;\n if (a.uri) {\n return H(a.uri);\n }\n ;\n ;\n if (a.domain) {\n return ((((c.protocol + \"//\")) + a.domain));\n }\n ;\n ;\n throw \"Unable to retrieve the origin of the event\";\n };\n ;\n function j(a) {\n var c = i(a);\n ((((((c == h)) && ((a.data.substring(0, ((b.channel.length + 1))) == ((b.channel + \" \")))))) && e.up.incoming(a.data.substring(((b.channel.length + 1))), c)));\n };\n ;\n var e, f, g, h;\n return e = {\n outgoing: function(a, c, d) {\n g.JSBNG__postMessage(((((b.channel + \" \")) + a)), ((c || h))), ((d && d()));\n },\n destroy: function() {\n x(a, \"message\", j), ((f && (g = null, f.parentNode.removeChild(f), f = null)));\n },\n onDOMReady: function() {\n h = H(b.remote), ((b.isHost ? (w(a, \"message\", function i(c) {\n ((((c.data == ((b.channel + \"-ready\")))) && (g = ((((\"JSBNG__postMessage\" in f.contentWindow)) ? f.contentWindow : f.contentWindow.JSBNG__document)), x(a, \"message\", i), w(a, \"message\", j), d(function() {\n e.up.callback(!0);\n }, 0))));\n }), N(b.props, {\n src: J(b.remote, {\n xdm_e: H(c.href),\n xdm_c: b.channel,\n xdm_p: 1\n }),\n JSBNG__name: ((((p + b.channel)) + \"_provider\"))\n }), f = P(b)) : (w(a, \"message\", j), g = ((((\"JSBNG__postMessage\" in a.parent)) ? a.parent : a.parent.JSBNG__document)), g.JSBNG__postMessage(((b.channel + \"-ready\")), h), d(function() {\n e.up.callback(!0);\n }, 0))));\n },\n init: function() {\n D(e.onDOMReady, e);\n }\n };\n }, n.stack.FrameElementTransport = function(e) {\n var f, g, h, i;\n return f = {\n outgoing: function(a, b, c) {\n h.call(this, a), ((c && c()));\n },\n destroy: function() {\n ((g && (g.parentNode.removeChild(g), g = null)));\n },\n onDOMReady: function() {\n i = H(e.remote), ((e.isHost ? (N(e.props, {\n src: J(e.remote, {\n xdm_e: H(c.href),\n xdm_c: e.channel,\n xdm_p: 5\n }),\n JSBNG__name: ((((p + e.channel)) + \"_provider\"))\n }), g = P(e), g.fn = function(a) {\n return delete g.fn, h = a, d(function() {\n f.up.callback(!0);\n }, 0), function(a) {\n f.up.incoming(a, i);\n };\n }) : (((((b.referrer && ((H(b.referrer) != K.xdm_e)))) && (a.JSBNG__top.JSBNG__location = K.xdm_e))), h = a.JSBNG__frameElement.fn(function(a) {\n f.up.incoming(a, i);\n }), f.up.callback(!0))));\n },\n init: function() {\n D(f.onDOMReady, f);\n }\n };\n }, n.stack.NixTransport = function(e) {\n var f, h, i, j, k;\n return f = {\n outgoing: function(a, b, c) {\n i(a), ((c && c()));\n },\n destroy: function() {\n k = null, ((h && (h.parentNode.removeChild(h), h = null)));\n },\n onDOMReady: function() {\n j = H(e.remote);\n if (e.isHost) {\n try {\n ((s(a, \"getNixProxy\") || a.execScript(\"Class NixProxy\\u000a Private m_parent, m_child, m_Auth\\u000a\\u000a Public Sub SetParent(obj, auth)\\u000a If isEmpty(m_Auth) Then m_Auth = auth\\u000a SET m_parent = obj\\u000a End Sub\\u000a Public Sub SetChild(obj)\\u000a SET m_child = obj\\u000a m_parent.ready()\\u000a End Sub\\u000a\\u000a Public Sub SendToParent(data, auth)\\u000a If m_Auth = auth Then m_parent.send(CStr(data))\\u000a End Sub\\u000a Public Sub SendToChild(data, auth)\\u000a If m_Auth = auth Then m_child.send(CStr(data))\\u000a End Sub\\u000aEnd Class\\u000aFunction getNixProxy()\\u000a Set GetNixProxy = New NixProxy\\u000aEnd Function\\u000a\", \"vbscript\"))), k = getNixProxy(), k.SetParent({\n send: function(a) {\n f.up.incoming(a, j);\n },\n ready: function() {\n d(function() {\n f.up.callback(!0);\n }, 0);\n }\n }, e.secret), i = function(a) {\n k.SendToChild(a, e.secret);\n };\n } catch (l) {\n throw new Error(((\"Could not set up VBScript NixProxy:\" + l.message)));\n };\n ;\n N(e.props, {\n src: J(e.remote, {\n xdm_e: H(c.href),\n xdm_c: e.channel,\n xdm_s: e.secret,\n xdm_p: 3\n }),\n JSBNG__name: ((((p + e.channel)) + \"_provider\"))\n }), h = P(e), h.contentWindow.JSBNG__opener = k;\n }\n else {\n ((((b.referrer && ((H(b.referrer) != K.xdm_e)))) && (a.JSBNG__top.JSBNG__location = K.xdm_e)));\n try {\n k = a.JSBNG__opener;\n } catch (m) {\n throw new Error(\"Cannot access window.JSBNG__opener\");\n };\n ;\n k.SetChild({\n send: function(a) {\n g.JSBNG__setTimeout(function() {\n f.up.incoming(a, j);\n }, 0);\n }\n }), i = function(a) {\n k.SendToParent(a, e.secret);\n }, d(function() {\n f.up.callback(!0);\n }, 0);\n }\n ;\n ;\n },\n init: function() {\n D(f.onDOMReady, f);\n }\n };\n }, n.stack.NameTransport = function(a) {\n function k(b) {\n var d = ((((a.remoteHelper + ((c ? \"#_3\" : \"#_2\")))) + a.channel));\n e.contentWindow.sendMessage(b, d);\n };\n ;\n function l() {\n ((c ? ((((((++g === 2)) || !c)) && b.up.callback(!0))) : (k(\"ready\"), b.up.callback(!0))));\n };\n ;\n function m(a) {\n b.up.incoming(a, i);\n };\n ;\n function o() {\n ((h && d(function() {\n h(!0);\n }, 0)));\n };\n ;\n var b, c, e, f, g, h, i, j;\n return b = {\n outgoing: function(a, b, c) {\n h = c, k(a);\n },\n destroy: function() {\n e.parentNode.removeChild(e), e = null, ((c && (f.parentNode.removeChild(f), f = null)));\n },\n onDOMReady: function() {\n c = a.isHost, g = 0, i = H(a.remote), a.local = I(a.local), ((c ? (n.Fn.set(a.channel, function(b) {\n ((((c && ((b === \"ready\")))) && (n.Fn.set(a.channel, m), l())));\n }), j = J(a.remote, {\n xdm_e: a.local,\n xdm_c: a.channel,\n xdm_p: 2\n }), N(a.props, {\n src: ((((j + \"#\")) + a.channel)),\n JSBNG__name: ((((p + a.channel)) + \"_provider\"))\n }), f = P(a)) : (a.remoteHelper = a.remote, n.Fn.set(a.channel, m)))), e = P({\n props: {\n src: ((((a.local + \"#_4\")) + a.channel))\n },\n onLoad: function b() {\n var c = ((e || this));\n x(c, \"load\", b), n.Fn.set(((a.channel + \"_load\")), o), function f() {\n ((((typeof c.contentWindow.sendMessage == \"function\")) ? l() : d(f, 50)));\n }();\n }\n });\n },\n init: function() {\n D(b.onDOMReady, b);\n }\n };\n }, n.stack.HashTransport = function(b) {\n function o(a) {\n if (!l) {\n return;\n }\n ;\n ;\n var c = ((((((((b.remote + \"#\")) + j++)) + \"_\")) + a));\n ((((f || !m)) ? l.contentWindow : l)).JSBNG__location = c;\n };\n ;\n function q(a) {\n i = a, c.up.incoming(i.substring(((i.indexOf(\"_\") + 1))), n);\n };\n ;\n function r() {\n if (!k) {\n return;\n }\n ;\n ;\n var a = k.JSBNG__location.href, b = \"\", c = a.indexOf(\"#\");\n ((((c != -1)) && (b = a.substring(c)))), ((((b && ((b != i)))) && q(b)));\n };\n ;\n function s() {\n g = JSBNG__setInterval(r, h);\n };\n ;\n var c, e = this, f, g, h, i, j, k, l, m, n;\n return c = {\n outgoing: function(a, b) {\n o(a);\n },\n destroy: function() {\n a.JSBNG__clearInterval(g), ((((f || !m)) && l.parentNode.removeChild(l))), l = null;\n },\n onDOMReady: function() {\n f = b.isHost, h = b.interval, i = ((\"#\" + b.channel)), j = 0, m = b.useParent, n = H(b.remote);\n if (f) {\n b.props = {\n src: b.remote,\n JSBNG__name: ((((p + b.channel)) + \"_provider\"))\n };\n if (m) b.onLoad = function() {\n k = a, s(), c.up.callback(!0);\n };\n else {\n var e = 0, g = ((b.delay / 50));\n (function o() {\n if (((++e > g))) {\n throw new Error(\"Unable to reference listenerwindow\");\n }\n ;\n ;\n try {\n k = l.contentWindow.JSBNG__frames[((((p + b.channel)) + \"_consumer\"))];\n } catch (a) {\n \n };\n ;\n ((k ? (s(), c.up.callback(!0)) : d(o, 50)));\n })();\n }\n ;\n ;\n l = P(b);\n }\n else k = a, s(), ((m ? (l = parent, c.up.callback(!0)) : (N(b, {\n props: {\n src: ((((((b.remote + \"#\")) + b.channel)) + new JSBNG__Date)),\n JSBNG__name: ((((p + b.channel)) + \"_consumer\"))\n },\n onLoad: function() {\n c.up.callback(!0);\n }\n }), l = P(b))));\n ;\n ;\n },\n init: function() {\n D(c.onDOMReady, c);\n }\n };\n }, n.stack.ReliableBehavior = function(a) {\n var b, c, d = 0, e = 0, f = \"\";\n return b = {\n incoming: function(a, g) {\n var h = a.indexOf(\"_\"), i = a.substring(0, h).split(\",\");\n a = a.substring(((h + 1))), ((((i[0] == d)) && (f = \"\", ((c && c(!0)))))), ((((a.length > 0)) && (b.down.outgoing(((((((((i[1] + \",\")) + d)) + \"_\")) + f)), g), ((((e != i[1])) && (e = i[1], b.up.incoming(a, g)))))));\n },\n outgoing: function(a, g, h) {\n f = a, c = h, b.down.outgoing(((((((((e + \",\")) + ++d)) + \"_\")) + a)), g);\n }\n };\n }, n.stack.QueueBehavior = function(a) {\n function m() {\n if (((a.remove && ((c.length === 0))))) {\n T(b);\n return;\n }\n ;\n ;\n if (((((g || ((c.length === 0)))) || i))) {\n return;\n }\n ;\n ;\n g = !0;\n var e = c.shift();\n b.down.outgoing(e.data, e.origin, function(a) {\n g = !1, ((e.callback && d(function() {\n e.callback(a);\n }, 0))), m();\n });\n };\n ;\n var b, c = [], g = !0, h = \"\", i, j = 0, k = !1, l = !1;\n return b = {\n init: function() {\n ((L(a) && (a = {\n }))), ((a.maxLength && (j = a.maxLength, l = !0))), ((a.lazy ? k = !0 : b.down.init()));\n },\n callback: function(a) {\n g = !1;\n var c = b.up;\n m(), c.callback(a);\n },\n incoming: function(c, d) {\n if (l) {\n var f = c.indexOf(\"_\"), g = parseInt(c.substring(0, f), 10);\n h += c.substring(((f + 1))), ((((g === 0)) && (((a.encode && (h = e(h)))), b.up.incoming(h, d), h = \"\")));\n }\n else b.up.incoming(c, d);\n ;\n ;\n },\n outgoing: function(d, e, g) {\n ((a.encode && (d = f(d))));\n var h = [], i;\n if (l) {\n while (((d.length !== 0))) {\n i = d.substring(0, j), d = d.substring(i.length), h.push(i);\n ;\n };\n ;\n while (i = h.shift()) {\n c.push({\n data: ((((h.length + \"_\")) + i)),\n origin: e,\n callback: ((((h.length === 0)) ? g : null))\n });\n ;\n };\n ;\n }\n else c.push({\n data: d,\n origin: e,\n callback: g\n });\n ;\n ;\n ((k ? b.down.init() : m()));\n },\n destroy: function() {\n i = !0, b.down.destroy();\n }\n };\n }, n.stack.VerifyBehavior = function(a) {\n function f() {\n c = Math.JSBNG__random().toString(16).substring(2), b.down.outgoing(c);\n };\n ;\n var b, c, d, e = !1;\n return b = {\n incoming: function(e, g) {\n var h = e.indexOf(\"_\");\n ((((h === -1)) ? ((((e === c)) ? b.up.callback(!0) : ((d || (d = e, ((a.initiate || f())), b.down.outgoing(e)))))) : ((((e.substring(0, h) === d)) && b.up.incoming(e.substring(((h + 1))), g)))));\n },\n outgoing: function(a, d, e) {\n b.down.outgoing(((((c + \"_\")) + a)), d, e);\n },\n callback: function(b) {\n ((a.initiate && f()));\n }\n };\n }, n.stack.RpcBehavior = function(a, b) {\n function g(a) {\n a.jsonrpc = \"2.0\", c.down.outgoing(d.stringify(a));\n };\n ;\n function h(a, b) {\n var c = Array.prototype.slice;\n return function() {\n var d = arguments.length, h, i = {\n method: b\n };\n ((((((d > 0)) && ((typeof arguments[((d - 1))] == \"function\")))) ? (((((((d > 1)) && ((typeof arguments[((d - 2))] == \"function\")))) ? (h = {\n success: arguments[((d - 2))],\n error: arguments[((d - 1))]\n }, i.params = c.call(arguments, 0, ((d - 2)))) : (h = {\n success: arguments[((d - 1))]\n }, i.params = c.call(arguments, 0, ((d - 1)))))), f[((\"\" + ++e))] = h, i.id = e) : i.params = c.call(arguments, 0))), ((((a.namedParams && ((i.params.length === 1)))) && (i.params = i.params[0]))), g(i);\n };\n };\n ;\n function j(a, b, c, d) {\n if (!c) {\n ((b && g({\n id: b,\n error: {\n code: -32601,\n message: \"Procedure not found.\"\n }\n })));\n return;\n }\n ;\n ;\n var e, f;\n ((b ? (e = function(a) {\n e = i, g({\n id: b,\n result: a\n });\n }, f = function(a, c) {\n f = i;\n var d = {\n id: b,\n error: {\n code: -32099,\n message: a\n }\n };\n ((c && (d.error.data = c))), g(d);\n }) : e = f = i)), ((u(d) || (d = [d,])));\n try {\n var h = c.method.apply(c.scope, d.concat([e,f,]));\n ((L(h) || e(h)));\n } catch (j) {\n f(j.message);\n };\n ;\n };\n ;\n var c, d = ((b.serializer || M())), e = 0, f = {\n };\n return c = {\n incoming: function(a, c) {\n var e = d.parse(a);\n if (e.method) ((b.handle ? b.handle(e, g) : j(e.method, e.id, b.local[e.method], e.params)));\n else {\n var h = f[e.id];\n ((e.error ? ((h.error && h.error(e.error))) : ((h.success && h.success(e.result))))), delete f[e.id];\n }\n ;\n ;\n },\n init: function() {\n if (b.remote) {\n {\n var fin76keys = ((window.top.JSBNG_Replay.forInKeys)((b.remote))), fin76i = (0);\n var d;\n for (; (fin76i < fin76keys.length); (fin76i++)) {\n ((d) = (fin76keys[fin76i]));\n {\n ((b.remote.hasOwnProperty(d) && (a[d] = h(b.remote[d], d))));\n ;\n };\n };\n };\n }\n ;\n ;\n c.down.init();\n },\n destroy: function() {\n {\n var fin77keys = ((window.top.JSBNG_Replay.forInKeys)((b.remote))), fin77i = (0);\n var d;\n for (; (fin77i < fin77keys.length); (fin77i++)) {\n ((d) = (fin77keys[fin77i]));\n {\n ((((b.remote.hasOwnProperty(d) && a.hasOwnProperty(d))) && delete a[d]));\n ;\n };\n };\n };\n ;\n c.down.destroy();\n }\n };\n }, g.easyXDM = n;\n })(window, JSBNG__document, JSBNG__location, window.JSBNG__setTimeout, decodeURIComponent, encodeURIComponent);\n});\ndefine(\"app/utils/easy_xdm\", [\"module\",\"require\",\"exports\",\"$lib/easyXDM.js\",], function(module, require, exports) {\n require(\"$lib/easyXDM.js\"), module.exports = window.easyXDM.noConflict();\n});\ndefine(\"app/utils/sandboxed_ajax\", [\"module\",\"require\",\"exports\",\"core/utils\",\"app/utils/easy_xdm\",], function(module, require, exports) {\n function remoteUrl(a, b) {\n var c = a.split(\"/\").slice(-1);\n return ((/localhost/.test(window.JSBNG__location.hostname) ? ((((((\"http://localhost.twitter.com:\" + ((window.cdnGoosePort || \"1867\")))) + \"/\")) + c)) : ((b ? a : a.replace(\"https:\", \"http:\")))));\n };\n;\n function generateSocket(a) {\n return new easyXDM.Socket({\n remote: a,\n onMessage: function(a, b) {\n var c = JSON.parse(a), d = requests[c.id];\n ((((d && d.callbacks[c.callbackName])) && d.callbacks[c.callbackName].apply(null, c.callbackArgs))), ((((c.callbackName === \"complete\")) && delete requests[c.id]));\n }\n });\n };\n;\n function generateSandboxRequest(a) {\n var b = ++nextRequestId;\n a = utils.merge({\n }, a);\n var c = {\n id: b,\n callbacks: {\n success: a.success,\n error: a.error,\n before: a.before,\n complete: a.complete\n },\n request: {\n id: b,\n data: a\n }\n };\n return delete a.success, delete a.error, delete a.complete, delete a.before, requests[b] = c, c.request;\n };\n;\n var utils = require(\"core/utils\"), easyXDM = require(\"app/utils/easy_xdm\"), TIMEOUT = 5000, nextRequestId = 0, requests = {\n }, sockets = [null,null,], sandbox = {\n send: function(a, b) {\n var c = ((!!/^https:|^\\/\\//.test(b.url) || !!$.browser.msie)), d = ((c ? 0 : 1));\n ((sockets[d] || (sockets[d] = generateSocket(remoteUrl(a, c)))));\n var e = generateSandboxRequest(b);\n sockets[d].JSBNG__postMessage(JSON.stringify(e));\n },\n easyXDM: easyXDM\n };\n module.exports = sandbox;\n});\nprovide(\"app/ui/media/with_legacy_icons\", function(a) {\n using(\"core/i18n\", function(_) {\n function b() {\n this.defaultAttrs({\n iconClass: \"js-sm-icon\",\n viewDetailsSelector: \"span.js-view-details\",\n hideDetailsSelector: \"span.js-hide-details\",\n iconContainerSelector: \"span.js-icon-container\"\n }), this.iconMap = {\n photo: [\"sm-image\",_(\"View photo\"),_(\"Hide photo\"),],\n video: [\"sm-video\",_(\"View video\"),_(\"Hide video\"),],\n song: [\"sm-audio\",_(\"View song\"),_(\"Hide song\"),],\n album: [\"sm-audio\",_(\"View album\"),_(\"Hide album\"),],\n tweet: [\"sm-embed\",_(\"View tweet\"),_(\"Hide tweet\"),],\n generic: [\"sm-embed\",_(\"View media\"),_(\"Hide media\"),],\n software: [\"sm-embed\",_(\"View app\"),_(\"Hide app\"),]\n }, this.makeIcon = function(a, b) {\n var c = b.type.icon;\n ((((typeof c == \"function\")) && (c = c.call(b))));\n var d = this.iconMap[c], e = a.JSBNG__find(this.attr.iconContainerSelector), f = $(\"\\u003Ci/\\u003E\", {\n class: ((((this.attr.iconClass + \" \")) + d[0]))\n });\n ((((e.JSBNG__find(((\".\" + d[0]))).length === 0)) && e.append(f))), a.JSBNG__find(this.attr.viewDetailsSelector).text(d[1]).end().JSBNG__find(this.attr.hideDetailsSelector).text(d[2]).end();\n }, this.addMediaIconsAndText = function(a, b) {\n b.forEach(this.makeIcon.bind(this, a));\n };\n };\n ;\n a(b);\n });\n});\ndefine(\"app/utils/third_party_application\", [\"module\",\"require\",\"exports\",\"app/utils/easy_xdm\",], function(module, require, exports) {\n function getUserLinkColor() {\n if (!userLinkColor) {\n var a = $(\"\\u003Ca\\u003Ex\\u003C/a\\u003E\").appendTo($(\"body\"));\n userLinkColor = a.css(\"color\"), a.remove();\n }\n ;\n ;\n return userLinkColor;\n };\n;\n function socket(a, b, c) {\n var d = new easyXDM.Rpc({\n remote: b,\n container: a,\n props: {\n width: ((c.width || \"100%\")),\n height: ((c.height || 0))\n },\n onReady: function() {\n d.initialize({\n htmlContent: ((((\"\\u003Cdiv class='tweet-media'\\u003E\" + c.htmlContent)) + \"\\u003C/div\\u003E\")),\n styles: [[\"a\",[\"color\",getUserLinkColor(),],],]\n });\n }\n }, {\n local: {\n ui: function(b, c) {\n ((((b === \"resizeFrame\")) && $(a).JSBNG__find(\"div\").height(c)));\n }\n },\n remote: {\n trigger: {\n },\n initialize: {\n }\n }\n });\n return d;\n };\n;\n function embedded(a, b, c) {\n return socket(a, b, c);\n };\n;\n function sandboxed(a, b, c) {\n return ((/localhost/.test(b) && (b = b.replace(\"localhost.twitter.com\", \"localhost\")))), socket(a, b, c);\n };\n;\n var easyXDM = require(\"app/utils/easy_xdm\"), userLinkColor;\n module.exports = {\n embedded: embedded,\n sandboxed: sandboxed,\n easyXDM: easyXDM\n };\n});\nprovide(\"app/ui/media/legacy_embed\", function(a) {\n using(\"core/parameterize\", \"app/utils/third_party_application\", function(b, c) {\n function d(a) {\n this.data = {\n }, this.url = a.url, this.slug = a.slug, this._name = a.type._name, this.constructor = a.type, this.process = this.constructor.process, this.getImageURL = this.constructor.getImageURL, this.metadata = this.constructor.metadata, this.icon = this.constructor.icon, this.calcHeight = function(a) {\n return Math.round(((277814 * a)));\n };\n {\n var fin78keys = ((window.top.JSBNG_Replay.forInKeys)((this.constructor.methods))), fin78i = (0);\n var d;\n for (; (fin78i < fin78keys.length); (fin78i++)) {\n ((d) = (fin78keys[fin78i]));\n {\n ((((typeof this.constructor.methods[d] == \"function\")) && (this[d] = this.constructor.methods[d])));\n ;\n };\n };\n };\n ;\n this.renderIframe = function(a, c) {\n var d = ((((\"\\u003Ciframe src='\" + c)) + \"' width='{{width}}' height='{{height}}'\\u003E\\u003C/iframe\\u003E\"));\n a.append(b(d, this.data));\n }, this.renderEmbeddedApplication = function(a, b) {\n c.embedded(a.get(0), b, {\n height: this.data.height,\n width: this.data.width\n });\n }, this.type = function() {\n return ((((typeof this.icon == \"function\")) ? this.icon(this.url) : this.icon));\n }, this.useOpaqueModeForFlash = function(a) {\n return a.replace(/(<\\/object>)/, \"\\u003Cparam name=\\\"wmode\\\" value=\\\"opaque\\\"\\u003E$1\").replace(/(<embed .*?)(\\/?>)/, \"$1 wmode=\\\"opaque\\\"$2\");\n }, this.resizeHtmlEmbed = function(a, b, c, d) {\n if (((((((a && b)) && b.maxwidth)) && ((b.maxwidth < c))))) {\n var e = Math.round(((((b.maxwidth * d)) / c)));\n a = a.replace(new RegExp(((((\"width=(\\\"?)\" + c)) + \"(?=\\\\D|$)\")), \"g\"), ((\"width=$1\" + b.maxwidth))).replace(new RegExp(((((\"height=(\\\"?)\" + d)) + \"(?=\\\\D|$)\")), \"g\"), ((\"height=$1\" + e)));\n }\n ;\n ;\n return a;\n };\n };\n ;\n a(d);\n });\n});\nprovide(\"app/ui/media/with_legacy_embeds\", function(a) {\n using(\"core/i18n\", \"core/parameterize\", \"app/ui/media/legacy_embed\", \"app/utils/third_party_application\", function(_, b, c, d) {\n function e() {\n this.defaultAttrs({\n tweetMedia: \".tweet-media\",\n landingArea: \".js-landing-area\"\n });\n var a = {\n attribution: \" \\u003Cdiv class=\\\"media-attribution\\\"\\u003E \\u003Cimg src=\\\"{{iconUrl}}\\\"\\u003E \\u003Ca href=\\\"{{href}}\\\" class=\\\"media-attribution-link\\\" target=\\\"_blank\\\"\\u003E{{typeName}}\\u003C/a\\u003E \\u003C/div\\u003E\",\n embedWrapper: \" \\u003Cdiv class=\\\"tweet-media\\\"\\u003E \\u003Cdiv class=\\\"media-instance-container\\\"\\u003E \\u003Cdiv class=\\\"js-landing-area\\\" style=\\\"min-height:{{minHeight}}px\\\"\\u003E\\u003C/div\\u003E {{flagAction}} {{attribution}} \\u003C/div\\u003E \\u003C/div\\u003E\",\n flagAction: \" \\u003Cspan class=\\\"flag-container\\\"\\u003E \\u003Cbutton type=\\\"button\\\" class=\\\"flaggable btn-link\\\"\\u003E {{flagThisMedia}} \\u003C/button\\u003E \\u003Cspan class=\\\"flagged hidden\\\"\\u003E {{flagged}} \\u003Cspan\\u003E \\u003Ca target=\\\"_blank\\\" href=\\\"//support.twitter.com/articles/20069937\\\"\\u003E {{learnMore}} \\u003C/a\\u003E \\u003C/span\\u003E \\u003C/span\\u003E \\u003C/span\\u003E\"\n };\n this.assetPath = function(a) {\n return ((this.attr.assetsBasePath ? (((((((a.charAt(0) == \"/\")) && ((this.attr.assetsBasePath.charAt(((this.attr.assetsBasePath.length - 1))) == \"/\")))) ? a = a.substring(1) : ((((((a.charAt(0) != \"/\")) && ((this.attr.assetsBasePath.charAt(((this.attr.assetsBasePath.length - 1))) != \"/\")))) && (a = ((\"/\" + a))))))), ((this.attr.assetsBasePath + a))) : a));\n }, this.attributionIconUrl = function(a) {\n return ((a.attribution_icon || this.assetPath(((((\"/images/partner-favicons/\" + a._name)) + \".png\")))));\n }, this.isFlaggable = function(a) {\n return ((this.attr.loggedIn && a.type.flaggable));\n }, this.assembleEmbedContainerHtml = function(c, d) {\n var e = ((this.isFlaggable(c) ? b(a.flagAction, {\n flagThisMedia: _(\"Flag this media\"),\n flagged: _(\"Flagged\"),\n learnMore: _(\"(learn more)\")\n }) : \"\")), f = b(a.attribution, {\n iconUrl: this.attributionIconUrl(d),\n typeName: d._name,\n href: c.type.domain\n });\n return b(a.embedWrapper, {\n minHeight: ((c.type.height || 100)),\n attribution: f,\n flagAction: e,\n mediaClass: d._name.toLowerCase()\n });\n }, this.renderThirdPartyApplication = function(a, b) {\n d.sandboxed(a.get(0), this.embedSandboxPath, {\n htmlContent: b\n });\n }, this.assembleEmbedInnerHtml = function(a, b, c) {\n ((b.JSBNG__content ? this.renderThirdPartyApplication(a, b.JSBNG__content.call(c)) : b.render.call(c, a)));\n }, this.renderMediaType = function(a, b) {\n var d = new c(a), e = $(this.assembleEmbedContainerHtml(a, d)), f = function() {\n var b = $(\"\\u003Cdiv/\\u003E\");\n e.JSBNG__find(this.attr.landingArea).append(b), this.assembleEmbedInnerHtml(b, a.type, d), ((this.mediaTypeIsInteractive(a.type.icon) && e.data(\"interactive\", !0).data(\"completeRender\", f)));\n }.bind(this);\n return a.type.process.call(d, f, b), e;\n }, this.buildEmbeddedMediaNodes = function(a, b) {\n return a.map(function(a) {\n return this.renderMediaType(a, b);\n }, this);\n }, this.mediaTypeIsInteractive = function(a) {\n return ((((a === \"video\")) || ((a === \"song\"))));\n }, this.rerenderInteractiveEmbed = function(a) {\n var b = $(a.target), c = b.JSBNG__find(this.attr.tweetMedia).data(\"completeRender\");\n ((((c && b.JSBNG__find(this.attr.landingArea).is(\":empty\"))) && c()));\n }, this.after(\"initialize\", function(a) {\n this.embedSandboxPath = ((a.sandboxes && a.sandboxes.detailsPane));\n if (!this.embedSandboxPath) {\n throw new Error(\"WithLegacyEmbeds requires options.sandboxes to be set\");\n }\n ;\n ;\n this.JSBNG__on(\"uiHasExpandedTweet\", this.rerenderInteractiveEmbed);\n });\n };\n ;\n a(e);\n });\n});\ndefine(\"app/ui/media/with_flag_action\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = function() {\n this.defaultAttrs({\n flagContainerSelector: \".flag-container\",\n flaggableSelector: \".flaggable\",\n flaggedSelector: \".flagged\",\n tweetWithIdSelector: \".tweet[data-tweet-id]\"\n }), this.flagMedia = function(a) {\n var b = $(a.target).closest(this.attr.flagContainerSelector), c = b.JSBNG__find(this.attr.flaggableSelector);\n if (!c.hasClass(\"hidden\")) {\n var d = b.closest(this.attr.tweetWithIdSelector);\n ((d.attr(\"data-possibly-sensitive\") ? this.trigger(\"uiFlagConfirmation\", {\n id: d.attr(\"data-tweet-id\")\n }) : (this.trigger(\"uiFlagMedia\", {\n id: d.attr(\"data-tweet-id\")\n }), b.JSBNG__find(this.attr.flaggableSelector).addClass(\"hidden\"), b.JSBNG__find(this.attr.flaggedSelector).removeClass(\"hidden\"))));\n }\n ;\n ;\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n flagContainerSelector: this.flagMedia\n });\n });\n };\n});\ndefine(\"app/ui/media/with_hidden_display\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n module.exports = function() {\n this.defaultAttrs({\n mediaNotDisplayedSelector: \".media-not-displayed\",\n displayMediaSelector: \".display-this-media\",\n alwaysDisplaySelector: \".always-display-media\",\n entitiesContainerSelector: \".entities-media-container\",\n cardsContainerSelector: \".cards-media-container\",\n cards2ContainerSelector: \".card2\",\n detailsFixerSelector: \".js-tweet-details-fixer\"\n }), this.showMedia = function(a) {\n var b = $(a.target).closest(this.attr.detailsFixerSelector), c = [];\n ((this.attr.mediaContainerSelector && c.push(this.attr.mediaContainerSelector))), ((this.attr.entitiesContainerSelector && c.push(this.attr.entitiesContainerSelector))), ((this.attr.cardsContainerSelector && c.push(this.attr.cardsContainerSelector))), ((this.attr.cards2ContainerSelector && c.push(this.attr.cards2ContainerSelector))), b.JSBNG__find(this.attr.mediaNotDisplayedSelector).hide(), b.JSBNG__find(c.join(\",\")).removeClass(\"hidden\");\n }, this.updateMediaSettings = function(a) {\n this.trigger(\"uiUpdateViewPossiblySensitive\", {\n do_show: !0\n }), this.showMedia(a);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"click\", {\n displayMediaSelector: this.showMedia,\n alwaysDisplaySelector: this.updateMediaSettings\n });\n });\n };\n});\nprovide(\"app/ui/media/with_legacy_media\", function(a) {\n using(\"core/compose\", \"app/ui/media/types\", \"app/utils/sandboxed_ajax\", \"app/ui/media/with_legacy_icons\", \"app/ui/media/with_legacy_embeds\", \"app/ui/media/with_flag_action\", \"app/ui/media/with_hidden_display\", \"app/ui/media/legacy_embed\", function(b, c, d, e, f, g, h, i) {\n function j() {\n b.mixin(this, [e,f,g,h,]), this.defaultAttrs({\n linkSelector: \"p.js-tweet-text a.twitter-timeline-link\",\n generalTweetSelector: \".js-stream-tweet\",\n insideProxyTweet: \".proxy-tweet-container *\",\n wasAlreadyEmbedded: \"[data-pre-embedded=\\\"true\\\"]\",\n mediaContainerSelector: \".js-tweet-media-container\"\n }), this.matchLink = function(a, b, c) {\n var d = $(b), e = ((d.data(\"expanded-url\") || b.href)), f = this.matchUrl(e, c);\n if (f) {\n return f.a = b, f.embedIndex = d.index(), f;\n }\n ;\n ;\n ((c || this.trigger(b, \"uiWantsLinkResolution\", {\n url: e\n })));\n }, this.matchUrl = function(a, b) {\n if (this.alreadyMatched[a]) {\n return this.alreadyMatched[a];\n }\n ;\n ;\n var d = c.matchers;\n for (var e = 0, f = d.length; ((e < f)); e++) {\n var g = a.match(d[e][0]);\n if (((g && g.length))) {\n return this.alreadyMatched[a] = {\n url: a,\n slug: g[1],\n type: c.mediaTypes[d[e][1]],\n label: d[e][2]\n };\n }\n ;\n ;\n };\n ;\n }, this.resolveMedia = function(a, b, c, d) {\n if (!a.attr(\"data-url\")) {\n return b(!1, a);\n }\n ;\n ;\n if (a.attr(((\"data-resolved-url-\" + c)))) {\n return b(!0, a);\n }\n ;\n ;\n var e = this.matchUrl(a.attr(\"data-url\"));\n if (e) {\n var f = new i(e);\n ((((!f.getImageURL || ((d && ((f.type() != d)))))) ? b(!1, a) : f.getImageURL(c, function(d) {\n ((d ? (a.attr(((\"data-resolved-url-\" + c)), d), b(!0, a)) : b(!1, a)));\n })));\n }\n else b(!1, a);\n ;\n ;\n }, this.addIconsAndSaveMediaType = function(a, b) {\n var c = $(b.a).closest(this.attr.generalTweetSelector);\n if (((c.hasClass(\"has-cards\") || c.hasClass(\"simple-tweet\")))) {\n return;\n }\n ;\n ;\n this.addMediaIconsAndText(c, [b,]), this.saveRecordWithIndex(b, b.index, c.data(\"embeddedMedia\"));\n }, this.saveRecordWithIndex = function(a, b, c) {\n for (var d = 0; ((d < c.length)); d++) {\n if (((b < c[d].index))) {\n c.splice(d, 0, a);\n return;\n }\n ;\n ;\n };\n ;\n c.push(a);\n }, this.getMediaTypesAndIconsForTweet = function(a, b) {\n if ($(b).hasClass(\"has-cards\")) {\n return;\n }\n ;\n ;\n $(b).data(\"embeddedMedia\", []).JSBNG__find(this.attr.linkSelector).filter(function(a, b) {\n var c = $(b);\n return ((c.is(this.attr.insideProxyTweet) ? !1 : !c.is(this.attr.wasAlreadyEmbedded)));\n }.bind(this)).map(this.matchLink.bind(this)).map(this.addIconsAndSaveMediaType.bind(this)), this.trigger($(b), \"uiHasAddedLegacyMediaIcon\");\n }, this.handleResolvedUrl = function(a, b) {\n $(a.target).data(\"expanded-url\", b.url);\n var c = this.matchLink(null, a.target, !0);\n ((c && (this.addIconsAndSaveMediaType(null, c), this.trigger(a.target, \"uiHasAddedLegacyMediaIcon\"))));\n }, this.inlineLegacyMediaEmbedsForTweet = function(a) {\n var b = $(a.target);\n if (b.hasClass(\"has-cards\")) {\n return;\n }\n ;\n ;\n var c = b.JSBNG__find(this.attr.mediaContainerSelector), d = b.data(\"embeddedMedia\");\n ((d && this.buildEmbeddedMediaNodes(d, {\n maxwidth: c.width()\n }).forEach(function(a) {\n c.append(a);\n })));\n }, this.addMediaToTweetsInElement = function(a) {\n $(a.target).JSBNG__find(this.attr.generalTweetSelector).each(this.getMediaTypesAndIconsForTweet.bind(this));\n }, this.after(\"initialize\", function(a) {\n c.sandboxedAjax.send = function(b) {\n d.send(a.sandboxes.jsonp, b);\n }, this.alreadyMatched = {\n }, this.JSBNG__on(\"uiHasInjectedTimelineItem\", this.addMediaToTweetsInElement), this.JSBNG__on(\"uiWantsMediaForTweet\", this.inlineLegacyMediaEmbedsForTweet), this.JSBNG__on(\"dataDidResolveUrl\", this.handleResolvedUrl), this.addMediaToTweetsInElement({\n target: this.$node\n });\n });\n };\n ;\n a(j);\n });\n});\ndefine(\"app/utils/image/image_loader\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n var imageLoader = {\n load: function(a, b, c) {\n var d = $(\"\\u003Cimg/\\u003E\");\n d.JSBNG__on(\"load\", function(a) {\n b(d);\n }), d.JSBNG__on(\"error\", function(a) {\n c();\n }), d.attr(\"src\", a);\n }\n };\n module.exports = imageLoader;\n});\ndefine(\"app/ui/with_tweet_actions\", [\"module\",\"require\",\"exports\",\"core/compose\",\"app/ui/with_interaction_data\",\"app/utils/tweet_helper\",\"app/utils/cookie\",], function(module, require, exports) {\n function withTweetActions() {\n compose.mixin(this, [withInteractionData,]), this.defaultAttrs({\n permalinkTweetClass: \"permalink-tweet\",\n dismissedTweetClass: \"js-dismissed-promoted-tweet\",\n streamTweetItemSelector: \"li.js-stream-item\",\n tweetWithReplyDialog: \"div.simple-tweet,div.permalink-tweet,div.permalink-tweet div.proxy-tweet-container div.tweet,li.disco-stream-item div.tweet,div.slideshow-tweet div.proxy-tweet-container div.tweet,div.conversation-tweet\",\n proxyTweetSelector: \"div.proxy-tweet-container div.tweet\",\n tweetItemSelector: \"div.tweet\",\n conversationTweetItemSelector: \".conversation-module .simple-tweet\",\n tweetActionsSelector: \"div.tweet ul.js-actions\",\n toggleContainerSelector: \".js-toggle-state\",\n favoriteSelector: \"div.tweet ul.js-actions .js-toggle-fav a\",\n retweetSelector: \"div.tweet ul.js-actions .js-toggle-rt a\",\n replySelector: \"div.tweet ul.js-actions a.js-action-reply\",\n deleteSelector: \"div.tweet ul.js-actions a.js-action-del\",\n permalinkSelector: \"div.tweet .js-permalink\",\n anyLoggedInActionSelector: \"div.tweet .js-actions a:not(.js-embed-tweet):not(.dropdown-toggle)\",\n dismissTweetSelector: \"div.tweet .js-action-dismiss\",\n dismissedTweetSelector: \".js-dismissed-promoted-tweet\",\n promotedTweetStoreCookieName: \"h\",\n moreOptionsSelector: \"div.tweet ul.js-actions .action-more-container div.dropdown\",\n shareViaEmailSelector: \"div.tweet ul.js-actions ul.dropdown-menu a.js-share-via-email\",\n embedTweetSelector: \"div.tweet ul.js-actions ul.dropdown-menu a.js-embed-tweet\"\n }), this.toggleRetweet = function(a, b) {\n var c = this.findTweet(b.tweet_id);\n ((c.attr(\"data-my-retweet-id\") ? c.removeAttr(\"data-my-retweet-id\") : c.attr(\"data-my-retweet-id\", b.retweet_id))), a.preventDefault();\n }, this.handleTransition = function(a, b) {\n return function(c, d) {\n var e = ((d.id || d.sourceEventData.id)), f = this.findTweet(e), g = f[0], h = JSBNG__document.activeElement, i, j;\n ((((g && $.contains(g, h))) && (i = $(h).closest(this.attr.toggleContainerSelector)))), f[a](b), ((this.attr.proxyTweetSelector && (j = this.$node.JSBNG__find(((((((this.attr.proxyTweetSelector + \"[data-tweet-id=\")) + e)) + \"]\"))), j[a](b)))), ((i && i.JSBNG__find(\"a:visible\").JSBNG__focus())), c.preventDefault();\n };\n }, this.getTweetData = function(a, b) {\n var c;\n return ((b ? c = this.interactionDataWithCard(a) : c = this.interactionData(a))), c.id = c.tweetId, c.screenName = a.attr(\"data-screen-name\"), c.screenNames = tweetHelper.extractMentionsForReply(a, this.attr.screenName), c.isTweetProof = ((a.attr(\"data-is-tweet-proof\") === \"true\")), c;\n }, this.handleReply = function(a, b, c) {\n var d = this.$tweetForEvent(a, c), e = this.getTweetData(d, !0);\n e.replyLinkClick = !0, ((((((d.is(this.attr.tweetWithReplyDialog) || ((d.attr(\"data-use-reply-dialog\") === \"true\")))) || ((d.attr(\"data-is-tweet-proof\") === \"true\")))) ? this.trigger(d, \"uiOpenReplyDialog\", e) : this.trigger(d, \"expandTweetByReply\", e))), a.preventDefault(), a.stopPropagation();\n }, this.$tweetForEvent = function(a, b) {\n var c = ((b ? \"JSBNG__find\" : \"closest\")), d = $(a.target)[c](this.attr.tweetItemSelector);\n return ((((d.length === 0)) && (d = $(a.target)[c](this.attr.conversationTweetItemSelector)))), ((((d.JSBNG__find(this.attr.proxyTweetSelector).length == 1)) ? d.JSBNG__find(this.attr.proxyTweetSelector) : d));\n }, this.$containerTweet = function(a) {\n return $(a.target).closest(this.attr.tweetItemSelector);\n }, this.handleAction = function(a, b, c, d) {\n return function(e) {\n var f = this.$tweetForEvent(e, d), g = this.getTweetData(f, !0);\n ((((!a || f.hasClass(a))) ? this.trigger(f, b, g) : ((c && this.trigger(f, c, g))))), e.preventDefault(), e.stopPropagation();\n };\n }, this.handlePermalinkClick = function(a, b) {\n var c = this.$tweetForEvent(a), d = this.getTweetData(c);\n this.trigger(c, \"uiPermalinkClick\", d);\n }, this.handleTweetDelete = function(a, b) {\n var c = this.findTweet(b.sourceEventData.id);\n c.each(function(a, c) {\n var d = $(c);\n ((d.hasClass(this.attr.permalinkTweetClass) ? window.JSBNG__location.replace(\"/\") : ((d.is(this.attr.tweetWithReplyDialog) ? (d.closest(\"li\").remove(), this.trigger(\"uiTweetRemoved\", b)) : (d.closest(this.attr.streamTweetItemSelector).remove(), this.trigger(\"uiTweetRemoved\", b))))));\n }.bind(this)), ((this.select(\"tweetItemSelector\").length || ((this.$node.hasClass(\"replies-to\") ? this.$node.addClass(\"hidden\") : ((this.$node.hasClass(\"in-reply-to\") ? this.$node.remove() : this.select(\"timelineEndSelector\").removeClass(\"has-items\")))))));\n }, this.findTweet = function(a) {\n var b = this.attr.tweetItemSelector.split(\",\").map(function(b) {\n return ((((((b + \"[data-tweet-id=\")) + a)) + \"]\"));\n }).join(\",\");\n return this.$node.JSBNG__find(b);\n }, this.handleLoggedOutActionClick = function(a) {\n a.preventDefault(), a.stopPropagation(), this.trigger(\"uiOpenSigninOrSignupDialog\", {\n signUpOnly: !1,\n screenName: this.$tweetForEvent(a).attr(\"data-screen-name\")\n });\n }, this.dismissTweet = function(a) {\n var b = this.$tweetForEvent(a), c = b.closest(this.attr.streamTweetItemSelector), d = this.getTweetData(b);\n c.addClass(this.attr.dismissedTweetClass).fadeOut(200, function() {\n this.removeTweet(c);\n }.bind(this)), c.prev().removeClass(\"before-expanded\"), c.next().removeClass(\"after-expanded\"), this.trigger(\"uiTweetDismissed\", d), cookie(this.attr.promotedTweetStoreCookieName, null);\n }, this.removeTweet = function(a) {\n a.remove();\n }, this.removeAllDismissed = function() {\n this.select(\"dismissedTweetSelector\").JSBNG__stop(), this.removeTweet(this.select(\"dismissedTweetSelector\"));\n }, this.toggleDropdownDisplay = function(a) {\n $(a.target).closest(this.attr.moreOptionsSelector).toggleClass(\"open\"), a.preventDefault(), a.stopPropagation();\n }, this.closeAllDropdownSelectors = function(a) {\n $(\"div.tweet div.dropdown.open\").removeClass(\"open\");\n }, this.after(\"initialize\", function(a) {\n this.JSBNG__on(\"click\", {\n moreOptionsSelector: this.toggleDropdownDisplay,\n embedTweetSelector: this.handleAction(\"\", \"uiNeedsEmbedTweetDialog\")\n }), this.JSBNG__on(this.attr.tweetItemSelector, \"mouseleave\", this.closeAllDropdownSelectors);\n if (!this.attr.loggedIn) {\n this.JSBNG__on(\"click\", {\n anyLoggedInActionSelector: this.handleLoggedOutActionClick\n });\n return;\n }\n ;\n ;\n this.JSBNG__on(JSBNG__document, \"dataDidDeleteTweet\", this.handleTweetDelete), this.JSBNG__on(JSBNG__document, \"dataDidRetweet dataDidUnretweet\", this.toggleRetweet), this.JSBNG__on(JSBNG__document, \"uiDidFavoriteTweet dataFailedToUnfavoriteTweet\", this.handleTransition(\"addClass\", \"favorited\")), this.JSBNG__on(JSBNG__document, \"uiDidUnfavoriteTweet dataFailedToFavoriteTweet\", this.handleTransition(\"removeClass\", \"favorited\")), this.JSBNG__on(JSBNG__document, \"uiDidRetweet dataFailedToUnretweet\", this.handleTransition(\"addClass\", \"retweeted\")), this.JSBNG__on(JSBNG__document, \"uiDidUnretweet dataFailedToRetweet\", this.handleTransition(\"removeClass\", \"retweeted\")), this.JSBNG__on(\"click\", {\n favoriteSelector: this.handleAction(\"favorited\", \"uiDidUnfavoriteTweet\", \"uiDidFavoriteTweet\"),\n retweetSelector: this.handleAction(\"retweeted\", \"uiDidUnretweet\", \"uiOpenRetweetDialog\"),\n replySelector: this.handleReply,\n deleteSelector: this.handleAction(\"\", \"uiOpenDeleteDialog\"),\n permalinkSelector: this.handlePermalinkClick,\n dismissTweetSelector: this.dismissTweet,\n shareViaEmailSelector: this.handleAction(\"\", \"uiNeedsShareViaEmailDialog\")\n }), this.JSBNG__on(JSBNG__document, \"uiDidFavoriteTweetToggle\", this.handleAction(\"favorited\", \"uiDidUnfavoriteTweet\", \"uiDidFavoriteTweet\", !0)), this.JSBNG__on(JSBNG__document, \"uiDidRetweetTweetToggle\", this.handleAction(\"retweeted\", \"uiDidUnretweet\", \"uiOpenRetweetDialog\", !0)), this.JSBNG__on(JSBNG__document, \"uiDidReplyTweetToggle\", this.handleReply), this.JSBNG__on(JSBNG__document, \"uiBeforePageChanged\", this.removeAllDismissed);\n });\n };\n;\n var compose = require(\"core/compose\"), withInteractionData = require(\"app/ui/with_interaction_data\"), tweetHelper = require(\"app/utils/tweet_helper\"), cookie = require(\"app/utils/cookie\");\n module.exports = withTweetActions;\n});\ndefine(\"app/ui/gallery/gallery\", [\"module\",\"require\",\"exports\",\"core/component\",\"core/utils\",\"core/i18n\",\"app/ui/media/with_legacy_media\",\"app/utils/image/image_loader\",\"app/ui/with_scrollbar_width\",\"app/ui/with_item_actions\",\"app/ui/with_tweet_actions\",\"app/ui/media/with_flag_action\",], function(module, require, exports) {\n function gallery() {\n this.tweetHtml = {\n }, this.defaultAttrs({\n profileUser: !1,\n defaultGalleryTitle: _(\"Media Gallery\"),\n mediaSelector: \".media-thumbnail\",\n galleryMediaSelector: \".gallery-media\",\n galleryTweetSelector: \".gallery-tweet\",\n closeSelector: \".js-close, .gallery-close-target\",\n gridSelector: \".grid-action\",\n gallerySelector: \".swift-media-gallery\",\n galleryTitleSelector: \".modal-title\",\n imageSelector: \".media-image\",\n navSelector: \".gallery-nav\",\n prevSelector: \".nav-prev\",\n nextSelector: \".nav-next\",\n itemType: \"tweet\"\n }), this.resetMinSize = function() {\n this.galW = MINWIDTH, this.galH = MINHEIGHT;\n var a = this.select(\"gallerySelector\");\n a.width(this.galW), a.height(this.galH);\n }, this.isOpen = function() {\n return this.$node.is(\":visible\");\n }, this.open = function(a, b) {\n this.calculateScrollbarWidth(), this.fromGrid = ((b && !!b.fromGrid)), this.title = ((((b && b.title)) ? b.title : this.attr.defaultGalleryTitle)), this.select(\"galleryTitleSelector\").text(this.title), ((((((b && b.showGrid)) && b.profileUser)) ? (this.select(\"gallerySelector\").removeClass(\"no-grid\"), this.select(\"gridSelector\").attr(\"href\", ((((\"/\" + b.profileUser.screen_name)) + \"/media/grid\"))), this.select(\"gridSelector\").JSBNG__find(\".visuallyhidden\").text(b.profileUser.JSBNG__name), this.select(\"gridSelector\").addClass(\"js-nav\")) : (this.select(\"gallerySelector\").addClass(\"no-grid\"), this.select(\"gridSelector\").removeClass(\"js-nav\"))));\n var c = $(a.target).closest(this.attr.mediaSelector);\n if (((this.isOpen() || ((c.length == 0))))) {\n return;\n }\n ;\n ;\n this.resetMinSize(), this.render(c), $(\"body\").addClass(\"gallery-enabled\"), this.select(\"gallerySelector\").addClass(\"show-controls\"), this.JSBNG__on(window, \"resize\", utils.debounce(this.resizeCurrent.bind(this), 50)), this.JSBNG__on(\"mousemove\", function() {\n this.select(\"gallerySelector\").removeClass(\"show-controls\");\n }.bind(this)), this.trigger(\"uiGalleryOpened\");\n }, this.handleClose = function(a) {\n if (!this.isOpen()) {\n return;\n }\n ;\n ;\n ((this.fromGrid ? this.returnToGrid(!0) : this.closeGallery()));\n }, this.returnToGrid = function(a) {\n this.trigger(this.$current, \"uiOpenGrid\", {\n title: this.title,\n fromGallery: a\n }), this.closeGallery();\n }, this.closeGallery = function() {\n $(\"body\").removeClass(\"gallery-enabled\"), this.select(\"galleryMediaSelector\").empty(), this.hideNav(), this.enableNav(!1, !1), this.off(window, \"resize\"), this.off(\"mousemove\"), this.trigger(\"uiGalleryClosed\");\n }, this.render = function(a) {\n this.clearTweet(), this.$current = a, this.renderNav(), this.trigger(a, \"uiGalleryMediaLoad\"), this.resolveMedia(a, this.renderMedia.bind(this), \"large\");\n }, this.renderNav = function() {\n if (!this.$current) {\n return;\n }\n ;\n ;\n var a = this.$current.prevAll(this.attr.mediaSelector), b = this.$current.nextAll(this.attr.mediaSelector), c = ((b.length > 0)), d = ((a.length > 0));\n this.enableNav(c, d), ((((c || d)) ? this.showNav() : this.hideNav()));\n }, this.preloadNeighbors = function(a) {\n this.preloadRecursive(a, \"next\", 2), this.preloadRecursive(a, \"prev\", 2);\n }, this.clearTweet = function() {\n this.select(\"galleryTweetSelector\").empty();\n }, this.getTweet = function(a) {\n if (!a) {\n return;\n }\n ;\n ;\n ((this.tweetHtml[a] ? this.renderTweet(a, this.tweetHtml[a]) : this.trigger(\"uiGetTweet\", {\n id: a\n })));\n }, this.gotTweet = function(a, b) {\n ((((b.id && b.tweet_html)) && (this.tweetHtml[b.id] = b.tweet_html, this.renderTweet(b.id, b.tweet_html))));\n }, this.renderTweet = function(a, b) {\n ((((this.$current && ((this.getTweetId(this.$current) == a)))) && this.select(\"galleryTweetSelector\").empty().append(b)));\n }, this.getTweetId = function(a) {\n return ((a.attr(\"data-status-id\") ? a.attr(\"data-status-id\") : a.closest(\"[data-tweet-id]\").attr(\"data-tweet-id\")));\n }, this.preloadRecursive = function(a, b, c) {\n if (((c == 0))) {\n return;\n }\n ;\n ;\n var d = a[b](this.attr.mediaSelector);\n if (((!d || !d.length))) {\n return;\n }\n ;\n ;\n d.attr(\"data-preloading\", !0), this.resolveMedia(d, function(a, d) {\n if (!a) {\n d.remove(), this.preloadRecursive(d, b, c);\n return;\n }\n ;\n ;\n var a = function(a) {\n d.attr(\"data-preloaded\", !0), this.getTweet(this.getTweetId(d)), this.preloadRecursive(d, b, --c);\n }.bind(this), e = function() {\n d.remove(), this.preloadRecursive(d, b, c);\n }.bind(this);\n imageLoader.load(d.attr(\"data-resolved-url-large\"), a, e);\n }.bind(this), \"large\");\n }, this.renderMedia = function(a, b) {\n ((a ? (((b.attr(\"data-source-url\") ? this.loadVideo(b) : this.loadImage(b))), this.preloadNeighbors(b)) : (b.remove(), this.next())));\n }, this.loadImage = function(a) {\n var b = $(\"\\u003Cimg class=\\\"media-image\\\"/\\u003E\");\n b.JSBNG__on(\"load\", function(c) {\n a.attr(\"loaded\", !0), this.select(\"galleryMediaSelector\").empty().append(b), b.attr({\n \"data-height\": b[0].height,\n \"data-width\": b[0].width\n }), this.resizeMedia(b), this.$current = a, this.getTweet(this.getTweetId(a)), this.trigger(\"uiGalleryMediaLoaded\", {\n url: b.attr(\"src\"),\n id: a.attr(\"data-status-id\")\n });\n }.bind(this)), b.JSBNG__on(\"error\", function(c) {\n this.trigger(\"uiGalleryMediaFailed\", {\n url: b.attr(\"src\"),\n id: a.attr(\"data-status-id\")\n }), a.remove(), this.next();\n }.bind(this)), b.attr(\"src\", a.attr(\"data-resolved-url-large\")), this.select(\"gallerySelector\").removeClass(\"video\");\n }, this.loadVideo = function(a) {\n var b = $(\"\\u003Ciframe\\u003E\");\n b.height(((a.attr(\"data-height\") * 2))).width(((a.attr(\"data-width\") * 2))).attr(\"data-height\", ((a.attr(\"data-height\") * 2))).attr(\"data-width\", ((a.attr(\"data-width\") * 2))).attr(\"src\", a.attr(\"data-source-url\")), a.attr(\"loaded\", !0), this.resizeMedia(b, !0), this.select(\"galleryMediaSelector\").empty().append(b), this.$current = a, this.getTweet(a.attr(\"data-status-id\")), this.select(\"gallerySelector\").addClass(\"video\");\n }, this.resizeCurrent = function() {\n var a = this.select(\"imageSelector\");\n ((a.length && this.resizeMedia(a)));\n }, this.resizeMedia = function(a, b) {\n var c = (($(window).height() - ((2 * PADDING)))), d = (($(window).width() - ((2 * PADDING)))), e = this.galH, f = this.galW, g = ((c - HEADERHEIGHT)), h = d, i = parseInt(a.height()), j = parseInt(a.width()), k = this.select(\"gallerySelector\");\n ((b && (j += 130, i += 100))), ((((i > g)) && (a.height(g), a.width(((j * ((g / i))))), j *= ((g / i)), i = g))), ((((j > h)) && (a.width(h), a.height(((i * ((h / j))))), i *= ((h / j)), j = h))), ((((j > this.galW)) && (this.galW = j, k.width(this.galW)))), ((((((i + HEADERHEIGHT)) > this.galH)) ? (this.galH = ((i + HEADERHEIGHT)), k.height(this.galH), a.css(\"margin-top\", 0), a.addClass(\"bottom-corners\")) : (a.css(\"margin-top\", ((((((this.galH - HEADERHEIGHT)) - i)) / 2))), a.removeClass(\"bottom-corners\"))));\n }, this.prev = function() {\n this.gotoMedia(\"prev\"), this.trigger(\"uiGalleryNavigatePrev\");\n }, this.next = function() {\n this.gotoMedia(\"next\"), this.trigger(\"uiGalleryNavigateNext\");\n }, this.gotoMedia = function(a) {\n var b = this.$current[a](this.attr.mediaSelector);\n ((b.length && this.render(b)));\n }, this.showNav = function() {\n this.select(\"navSelector\").show();\n }, this.hideNav = function() {\n this.select(\"navSelector\").hide();\n }, this.enableNav = function(a, b) {\n ((a ? this.select(\"nextSelector\").addClass(\"enabled\") : this.select(\"nextSelector\").removeClass(\"enabled\"))), ((b ? this.select(\"prevSelector\").addClass(\"enabled\") : this.select(\"prevSelector\").removeClass(\"enabled\")));\n }, this.throttle = function(a, b, c) {\n var d = !1;\n return function() {\n ((d || (a.apply(c, arguments), d = !0, JSBNG__setTimeout(function() {\n d = !1;\n }, b))));\n };\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"dataGotMoreMediaTimelineItems\", this.renderNav), this.JSBNG__on(JSBNG__document, \"uiOpenGallery\", this.open), this.JSBNG__on(JSBNG__document, \"uiCloseGallery\", this.closeGallery), this.JSBNG__on(JSBNG__document, \"uiShortcutEsc\", this.handleClose), this.JSBNG__on(window, \"popstate\", this.closeGallery), this.JSBNG__on(JSBNG__document, \"uiShortcutLeft\", this.throttle(this.prev, 200, this)), this.JSBNG__on(JSBNG__document, \"uiShortcutRight\", this.throttle(this.next, 200, this)), this.JSBNG__on(JSBNG__document, \"dataGotTweet\", this.gotTweet), this.JSBNG__on(\"click\", {\n prevSelector: this.prev,\n nextSelector: this.next,\n closeSelector: this.handleClose,\n gridSelector: this.closeGallery\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), utils = require(\"core/utils\"), _ = require(\"core/i18n\"), withLegacyMedia = require(\"app/ui/media/with_legacy_media\"), imageLoader = require(\"app/utils/image/image_loader\"), withScrollbarWidth = require(\"app/ui/with_scrollbar_width\"), withItemActions = require(\"app/ui/with_item_actions\"), withTweetActions = require(\"app/ui/with_tweet_actions\"), withFlagAction = require(\"app/ui/media/with_flag_action\"), Gallery = defineComponent(gallery, withLegacyMedia, withItemActions, withTweetActions, withFlagAction, withScrollbarWidth), MINHEIGHT = 300, MINWIDTH = 520, PADDING = 30, HEADERHEIGHT = 38;\n module.exports = Gallery;\n});\ndefine(\"app/data/gallery_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function galleryScribe() {\n this.scribeGalleryOpened = function(a, b) {\n this.scribe({\n element: \"gallery\",\n action: \"open\"\n }, b);\n }, this.scribeGalleryClosed = function(a, b) {\n this.scribe({\n element: \"gallery\",\n action: \"close\"\n }, b);\n }, this.scribeGalleryMediaLoaded = function(a, b) {\n var c = {\n url: b.url,\n item_ids: [b.id,]\n };\n this.scribe({\n element: \"photo\",\n action: \"impression\"\n }, b, c);\n }, this.scribeGalleryMediaFailed = function(a, b) {\n var c = {\n url: b.url,\n item_ids: [b.id,]\n };\n this.scribe({\n element: \"photo\",\n action: \"error\"\n }, b, c);\n }, this.scribeGalleryNavigateNext = function(a, b) {\n this.scribe({\n element: \"next\",\n action: \"click\"\n }, b);\n }, this.scribeGalleryNavigatePrev = function(a, b) {\n this.scribe({\n element: \"prev\",\n action: \"click\"\n }, b);\n }, this.scribeGridPaged = function(a, b) {\n this.scribe({\n element: \"grid\",\n action: \"page\"\n }, b);\n }, this.scribeGridOpened = function(a, b) {\n this.scribe({\n element: \"grid\",\n action: \"impression\"\n }, b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiGalleryOpened\", this.scribeGalleryOpened), this.JSBNG__on(JSBNG__document, \"uiGalleryClosed\", this.scribeGalleryClosed), this.JSBNG__on(JSBNG__document, \"uiGalleryMediaLoaded\", this.scribeGalleryMediaLoaded), this.JSBNG__on(JSBNG__document, \"uiGalleryMediaFailed\", this.scribeGalleryMediaFailed), this.JSBNG__on(JSBNG__document, \"uiGalleryNavigateNext\", this.scribeGalleryNavigateNext), this.JSBNG__on(JSBNG__document, \"uiGalleryNavigatePrev\", this.scribeGalleryNavigatePrev), this.JSBNG__on(JSBNG__document, \"uiGridPaged\", this.scribeGridPaged), this.JSBNG__on(JSBNG__document, \"uiGridOpened\", this.scribeGridOpened);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(galleryScribe, withScribe);\n});\ndefine(\"app/data/share_via_email_dialog_data\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",], function(module, require, exports) {\n function shareViaEmailDialogData() {\n this.getDialogData = function(a, b) {\n var c = function(a) {\n this.trigger(\"dataShareViaEmailDialogSuccess\", {\n tweets: a.items_html,\n JSBNG__name: b.JSBNG__name\n });\n }, d = function() {\n this.trigger(\"dataShareViaEmailDialogError\");\n }, e = b.screenName, f = b.tweetId;\n this.get({\n url: ((((((\"/i/\" + e)) + \"/conversation/\")) + f)),\n success: c.bind(this),\n error: d.bind(this)\n });\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiNeedsShareViaDialogData\", this.getDialogData);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), ShareViaEmailDialogData = defineComponent(shareViaEmailDialogData, withData);\n module.exports = ShareViaEmailDialogData;\n});\ndefine(\"app/ui/dialogs/share_via_email_dialog\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_dialog\",\"app/ui/with_position\",\"app/data/with_data\",\"app/ui/dialogs/with_modal_tweet\",\"app/ui/forms/input_with_placeholder\",\"app/data/share_via_email_dialog_data\",\"core/i18n\",\"core/utils\",], function(module, require, exports) {\n function shareViaEmailDialog() {\n this.defaultAttrs({\n contentSelector: \".share-via-email-form .js-share-tweet-container\",\n buttonSelector: \".share-via-email-form .primary-btn\",\n emailSelector: \".share-via-email-form .js-share-tweet-emails\",\n commentSelector: \".share-via-email-form .js-share-comment\",\n replyToUserSelector: \".share-via-email-form .js-reply-to-user\",\n tweetSelector: \".share-via-email-form .tweet\",\n placeholdingInputSelector: \".share-via-email-form .share-tweet-to .placeholding-input\",\n placeholdingTextareaSelector: \".share-via-email-form .comment-box .placeholding-input\",\n placeholdingSelector: \".share-via-email-form .placeholding-input\",\n socialProofSelector: \".share-via-email-form .comment-box .social-proof\",\n modalTitleSelector: \".modal-title\"\n }), this.JSBNG__openDialog = function(a, b) {\n this.attr.sourceEventData = b, this.addTweet($(a.target).clone().removeClass(\"retweeted favorited\")), this.select(\"emailSelector\").val(\"\"), this.select(\"commentSelector\").val(\"\"), this.select(\"socialProofSelector\").html(\"\"), this.select(\"placeholdingSelector\").removeClass(\"hasome\"), this.open();\n var c = this.select(\"modalTitleSelector\").attr(\"data-experiment-bucket\");\n ((((c == \"experiment\")) && this.trigger(\"uiNeedsShareViaDialogData\", {\n tweetId: $(a.target).attr(\"data-tweet-id\"),\n screenName: $(a.target).attr(\"data-screen-name\"),\n JSBNG__name: $(a.target).attr(\"data-name\")\n }))), this.trigger(\"uiShareViaEmailDialogOpened\", utils.merge(b, {\n scribeContext: {\n component: \"share_via_email_dialog\"\n }\n }));\n }, this.fillDialog = function(a, b) {\n var c = $(b.tweets).JSBNG__find(\".tweet\"), d = b.JSBNG__name;\n this.select(\"socialProofSelector\").html(\"\");\n var e = [];\n $.each(c, function(a, b) {\n e.push($(b).attr(\"data-name\"));\n }), e = jQuery.unique(e), e = jQuery.grep(e, function(a) {\n return ((a != d));\n });\n var f = $(c[0]).attr(\"data-name\"), g = $(c[0]).attr(\"data-protected\"), h = $(c[((c.length - 1))]).attr(\"data-name\"), i = $(c[((c.length - 1))]).attr(\"data-protected\"), j = \"\", k = ((e.length - 2)), l = {\n inReplyToTweetAuthor: h,\n rootTweetAuthor: f,\n othersLeft: k\n };\n ((((((f != d)) && !g)) ? ((((((f != h)) && !i)) ? ((((e.length > 3)) ? j = _(\"In reply to {{rootTweetAuthor}}, {{inReplyToTweetAuthor}} and {{othersLeft}} others\", l) : ((((e.length > 0)) && (j = _(\"In reply to {{rootTweetAuthor}} and {{inReplyToTweetAuthor}}\", l)))))) : ((i || ((((e.length > 3)) ? j = _(\"In reply to {{rootTweetAuthor}} and {{othersLeft}} others)\", l) : ((((e.length > 0)) && (j = _(\"In reply to {{rootTweetAuthor}}\", l)))))))))) : ((((((h != d)) && !i)) && ((((e.length > 3)) ? j = _(\"In reply to {{inReplyToTweetAuthor}} and {{othersLeft}} others\", l) : ((((e.length > 0)) && (j = _(\"In reply to {{inReplyToTweetAuthor}}\", l)))))))))), this.select(\"socialProofSelector\").html(j);\n }, this.submitForm = function(a) {\n var b = {\n id: this.select(\"tweetSelector\").attr(\"data-tweet-id\"),\n emails: this.select(\"emailSelector\").val(),\n comment: this.select(\"commentSelector\").val(),\n reply_to_user: this.select(\"replyToUserSelector\").is(\":checked\")\n };\n this.post({\n url: \"/i/tweet/share_via_email\",\n data: b,\n eventData: null,\n success: \"dataShareViaEmailSuccess\",\n error: \"dataShareViaEmailError\"\n }), this.trigger(\"uiCloseDialog\"), a.preventDefault();\n }, this.shareSuccess = function(a, b) {\n this.trigger(\"uiShowMessage\", {\n message: b.message\n }), this.trigger(\"uiDidShareViaEmailSuccess\", this.attr.sourceEventData);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(JSBNG__document, \"uiNeedsShareViaEmailDialog\", this.JSBNG__openDialog), this.JSBNG__on(JSBNG__document, \"dataShareViaEmailDialogSuccess\", this.fillDialog), this.JSBNG__on(JSBNG__document, \"dataShareViaEmailSuccess\", this.shareSuccess), this.JSBNG__on(\"click\", {\n buttonSelector: this.submitForm\n }), InputWithPlaceholder.attachTo(this.attr.placeholdingInputSelector, {\n hidePlaceholderClassName: \"hasome\",\n placeholder: \".placeholder\",\n elementType: \"input\",\n noTeardown: !0\n }), InputWithPlaceholder.attachTo(this.attr.placeholdingTextareaSelector, {\n hidePlaceholderClassName: \"hasome\",\n placeholder: \".placeholder\",\n elementType: \"textarea\",\n noTeardown: !0\n }), DialogData.attachTo(this.$node, {\n noTeardown: !0\n });\n });\n };\n;\n var defineComponent = require(\"core/component\"), withDialog = require(\"app/ui/with_dialog\"), withPosition = require(\"app/ui/with_position\"), withData = require(\"app/data/with_data\"), withModalTweet = require(\"app/ui/dialogs/with_modal_tweet\"), InputWithPlaceholder = require(\"app/ui/forms/input_with_placeholder\"), DialogData = require(\"app/data/share_via_email_dialog_data\"), _ = require(\"core/i18n\"), utils = require(\"core/utils\"), ShareViaEmailDialog = defineComponent(shareViaEmailDialog, withDialog, withPosition, withData, withModalTweet);\n module.exports = ShareViaEmailDialog;\n});\ndefine(\"app/data/with_widgets\", [\"module\",\"require\",\"exports\",\"core/component\",], function(module, require, exports) {\n function withWidgets() {\n this.widgetsAreLoaded = function() {\n return ((!!this.widgets && !!this.widgets.init));\n }, this.widgetsProvidesNewEmbed = function() {\n return ((((!!this.widgetsAreLoaded() && !!this.widgets.widgets)) && ((typeof this.widgets.widgets.createTweetEmbed == \"function\"))));\n }, this.getWidgets = function() {\n ((window.twttr || this.asyncWidgetsLoader())), this.widgets = window.twttr, window.twttr.ready(this._widgetsReady.bind(this));\n }, this._widgetsReady = function(_) {\n ((this.widgetsReady && this.widgetsReady()));\n }, this.asyncWidgetsLoader = function() {\n window.twttr = function(a, b, c) {\n var d, e, f = a.getElementsByTagName(b)[0];\n if (a.getElementById(c)) {\n return;\n }\n ;\n ;\n return e = a.createElement(b), e.id = c, e.src = \"//platform.twitter.com/widgets.js\", f.parentNode.insertBefore(e, f), ((window.twttr || (d = {\n _e: [],\n ready: function(a) {\n d._e.push(a);\n }\n })));\n }(JSBNG__document, \"script\", \"twitter-wjs\");\n };\n };\n;\n var defineComponent = require(\"core/component\"), WithWidgets = defineComponent(withWidgets);\n module.exports = withWidgets;\n});\ndefine(\"app/ui/dialogs/embed_tweet\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_position\",\"app/ui/with_dialog\",\"app/data/with_card_metadata\",\"app/data/with_widgets\",], function(module, require, exports) {\n function embedTweetDialog() {\n this.defaultAttrs({\n dialogSelector: \"#embed-tweet-dialog\",\n dialogContentSelector: \"#embed-tweet-dialog .modal-content\",\n previewContainerSelector: \".embed-preview\",\n embedFrameSelector: \".embed-preview iframe\",\n visibleEmbedFrameSelector: \".embed-preview iframe:visible\",\n embedCodeDestinationSelector: \".embed-destination\",\n triggerSelector: \".js-embed-tweet\",\n overlaySelector: \".embed-overlay\",\n spinnerOverlaySelector: \".embed-overlay-spinner\",\n errorOverlaySelector: \".embed-overlay-error\",\n tryAgainSelector: \".embed-overlay-error a\",\n includeParentTweetContainerSelector: \".embed-include-parent-tweet\",\n includeParentTweetSelector: \".include-parent-tweet\",\n includeCardContainerSelector: \".embed-include-card\",\n includeCardSelector: \".include-card\",\n embedWidth: \"469px\",\n JSBNG__top: \"90px\"\n }), this.cacheKeyForOptions = function(a) {\n return ((JSON.stringify(a.data) + a.tweetId));\n }, this.cacheKeyChanged = function(a) {\n var b = this.cacheKeyForOptions(a);\n return ((b != this.cacheKeyForOptions(this.getOptions())));\n }, this.didReceiveEmbedCode = function(a, b) {\n if (this.cacheKeyChanged(b.options)) {\n return;\n }\n ;\n ;\n this.select(\"overlaySelector\").hide(), this.$embedCodeDestination.val(b.data.html).JSBNG__focus(), this.selectEmbedCode();\n }, this.retryEmbedCode = function(a, b) {\n if (this.cacheKeyChanged(b)) {\n return;\n }\n ;\n ;\n this.select(\"overlaySelector\").hide(), this.select(\"spinnerOverlaySelector\").show(), this.trigger(\"uiOembedError\", this.tweetData);\n }, this.failedToReceiveEmbedCode = function(a, b) {\n if (this.cacheKeyChanged(b)) {\n return;\n }\n ;\n ;\n this.select(\"overlaySelector\").hide(), this.select(\"embedCodeDestinationSelector\").hide(), this.select(\"errorOverlaySelector\").show(), this.clearOembed();\n }, this.updateEmbedCode = function() {\n this.select(\"embedCodeDestinationSelector\").show(), this.select(\"overlaySelector\").hide(), this.trigger(\"uiNeedsOembed\", this.getOptions());\n }, this.requestTweetEmbed = function() {\n if (!this.widgetsProvidesNewEmbed()) {\n return;\n }\n ;\n ;\n var a = this.getOptions(), b = this.cacheKeyForOptions(a);\n if (this.cachedTweetEmbeds[b]) {\n this.displayCachedTweetEmbed(b);\n return;\n }\n ;\n ;\n this.clearTweetEmbed(), this.widgets.widgets.createTweet(this.tweetId(), this.select(\"previewContainerSelector\")[0], this.receivedTweetEmbed.bind(this, b), {\n width: this.attr.embedWidth,\n conversation: ((a.data.hide_thread ? \"none\" : \"all\")),\n cards: ((a.data.hide_media ? \"hidden\" : \"shown\"))\n });\n }, this.clearTweetEmbed = function() {\n var a = this.select(\"visibleEmbedFrameSelector\");\n this.stopPlayer(), a.hide();\n }, this.clearOembed = function() {\n this.$embedCodeDestination.val(\"\");\n }, this.tearDown = function() {\n this.stopPlayer(), this.clearTweetEmbed(), this.clearOembed();\n }, this.stopPlayer = function() {\n var a = this.select(\"embedFrameSelector\");\n a.each(function(a, b) {\n var c = $(b.contentWindow.JSBNG__document), d = c.JSBNG__find(\"div.media iframe\")[0], e;\n if (((((!d || !d.src)) || ((d.src == JSBNG__document.JSBNG__location.href))))) {\n return;\n }\n ;\n ;\n e = d.src, d.setAttribute(\"src\", \"\"), d.setAttribute(\"src\", e);\n });\n }, this.displayCachedTweetEmbed = function(a) {\n this.clearTweetEmbed(), $(this.cachedTweetEmbeds[a]).show();\n }, this.receivedTweetEmbed = function(a, b) {\n ((b ? this.cachedTweetEmbeds[a] = b : this.trigger(\"uiEmbedRequestFailed\")));\n }, this.embedCodeCopied = function(a) {\n this.trigger(\"uiUserCopiedEmbedCode\");\n }, this.includeParentTweet = function() {\n return ((this.$includeParentTweet.attr(\"checked\") == \"checked\"));\n }, this.showCard = function() {\n return ((this.$includeCard.attr(\"checked\") == \"checked\"));\n }, this.getOptions = function() {\n return {\n data: {\n lang: this.lang,\n hide_thread: !this.includeParentTweet(),\n hide_media: !this.showCard()\n },\n retry: !0,\n tweetId: this.tweetId(),\n screenName: this.screenName()\n };\n }, this.selectEmbedCode = function() {\n this.$embedCode.select();\n }, this.setUpDialog = function(a, b) {\n this.position(), this.eventData = a, this.tweetData = b, this.toggleIncludeParent(), this.toggleShowCard(), this.resetIncludeParent(), this.resetShowCard(), this.updateEmbedCode(), this.requestTweetEmbed(), this.open(), this.fixPosition();\n }, this.fixPosition = function() {\n this.$dialog.css({\n position: \"relative\",\n JSBNG__top: this.attr.JSBNG__top\n });\n }, this.resetIncludeParent = function() {\n var a = this.cacheKeyForOptions(this.getOptions());\n if (this.cachedTweetEmbeds[a]) {\n return;\n }\n ;\n ;\n this.$includeParentTweet.attr(\"checked\", \"CHECKED\");\n }, this.resetShowCard = function() {\n var a = this.cacheKeyForOptions(this.getOptions());\n if (this.cachedTweetEmbeds[a]) {\n return;\n }\n ;\n ;\n this.$includeCard.attr(\"checked\", \"CHECKED\");\n }, this.toggleIncludeParent = function() {\n ((this.tweetHasParent() ? this.$includeParentCheckboxContainer.show() : this.$includeParentCheckboxContainer.hide()));\n }, this.toggleShowCard = function() {\n ((this.tweetHasCard() ? this.$includeCardCheckboxContainer.show() : this.$includeCardCheckboxContainer.hide()));\n }, this.tweetId = function() {\n return this.tweetData.tweetId;\n }, this.tweetHasParent = function() {\n return this.tweetData.hasParentTweet;\n }, this.tweetHasCard = function() {\n return this.getCardDataFromTweet($(this.eventData.target)).tweetHasCard;\n }, this.screenName = function() {\n return this.tweetData.screenName;\n }, this.widgetsReady = function() {\n ((((this.$dialogContainer && this.isOpen())) && this.requestTweetEmbed()));\n }, this.onOptionChange = function() {\n this.trigger(\"uiNeedsOembed\", this.getOptions()), this.requestTweetEmbed();\n }, this.after(\"initialize\", function() {\n this.getWidgets(), this.$includeParentTweet = this.select(\"includeParentTweetSelector\"), this.$embedCodeDestination = this.select(\"embedCodeDestinationSelector\"), this.$includeParentCheckboxContainer = this.select(\"includeParentTweetContainerSelector\"), this.$includeCard = this.select(\"includeCardSelector\"), this.$includeCardCheckboxContainer = this.select(\"includeCardContainerSelector\"), this.$embedCode = this.select(\"embedCodeDestinationSelector\"), this.JSBNG__on(JSBNG__document, \"uiNeedsEmbedTweetDialog\", this.setUpDialog), this.JSBNG__on(\"uiDialogCloseRequested\", this.tearDown), this.JSBNG__on(JSBNG__document, \"dataOembedSuccess\", this.didReceiveEmbedCode), this.JSBNG__on(JSBNG__document, \"dataOembedError\", this.failedToReceiveEmbedCode), this.JSBNG__on(JSBNG__document, \"dataOembedRetry\", this.retryEmbedCode), this.JSBNG__on(this.$embedCodeDestination, \"copy cut\", this.embedCodeCopied), this.JSBNG__on(this.$embedCode, \"click\", this.selectEmbedCode), this.JSBNG__on(\"click\", {\n tryAgainSelector: this.updateEmbedCode\n }), this.JSBNG__on(\"change\", {\n includeParentTweetSelector: this.onOptionChange,\n includeCardSelector: this.onOptionChange\n }), this.lang = JSBNG__document.documentElement.getAttribute(\"lang\"), this.cachedTweetEmbeds = {\n };\n });\n };\n;\n var defineComponent = require(\"core/component\"), withPosition = require(\"app/ui/with_position\"), withDialog = require(\"app/ui/with_dialog\"), withCardMetadata = require(\"app/data/with_card_metadata\"), withWidgets = require(\"app/data/with_widgets\"), EmbedTweetDialog = defineComponent(embedTweetDialog, withDialog, withPosition, withCardMetadata, withWidgets);\n module.exports = EmbedTweetDialog;\n});\ndefine(\"app/data/embed_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",\"app/data/with_interaction_data_scribe\",\"core/utils\",], function(module, require, exports) {\n function embedScribe() {\n this.scribeOpen = function(a, b) {\n this.scribeEmbedAction(\"open\", b);\n }, this.scribeOembedError = function(a, b) {\n this.scribeEmbedAction(\"request_failed\", b);\n }, this.scribeEmbedCopy = function(a, b) {\n this.scribeEmbedAction(\"copy\", b);\n }, this.scribeEmbedError = function(a, b) {\n this.scribeEmbedAction(\"embed_request_failed\");\n }, this.scribeEmbedAction = function(a, b) {\n this.scribeInteraction(a, utils.merge(b, {\n scribeContext: {\n component: \"embed_tweet_dialog\"\n }\n }));\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiEmbedRequestFailed\", this.scribeEmbedError), this.JSBNG__on(\"uiNeedsEmbedTweetDialog\", this.scribeOpen), this.JSBNG__on(\"uiOembedError\", this.scribeOembedError), this.JSBNG__on(\"uiUserCopiedEmbedCode\", this.scribeEmbedCopy);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\"), withInteractionScribe = require(\"app/data/with_interaction_data_scribe\"), utils = require(\"core/utils\");\n module.exports = defineComponent(embedScribe, withScribe, withInteractionScribe);\n});\ndefine(\"app/data/oembed\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",\"app/data/user_info\",], function(module, require, exports) {\n function OembedData() {\n this.requestEmbedCode = function(a, b) {\n var c = this.cacheKeyForOptions(b), d = this.cachedEmbedCodes[c], e = this.receivedEmbedCode.bind(this, b), f = this.failedToReceiveEmbedCode.bind(this, b);\n if (d) {\n this.receivedEmbedCode(b, d);\n return;\n }\n ;\n ;\n if (this.useMacawSyndication()) {\n this.get({\n dataType: \"jsonp\",\n url: this.embedCodeUrl(b.screenName, b.tweetId),\n data: {\n id: b.tweetId\n },\n eventData: {\n },\n success: e,\n error: f\n });\n return;\n }\n ;\n ;\n this.get({\n url: this.embedCodeUrl(b.screenName, b.tweetId),\n headers: {\n \"X-PHX\": 1\n },\n data: b.data,\n eventData: {\n },\n success: e,\n error: f\n });\n }, this.embedCodeUrl = function(a, b) {\n return ((this.useMacawSyndication() ? \"//api.twitter.com/1/statuses/oembed.json\" : [\"/\",a,\"/oembed/\",b,\".json\",].join(\"\")));\n }, this.receivedEmbedCode = function(a, b) {\n var c = this.cacheKeyForOptions(a);\n this.cachedEmbedCodes[c] = b, this.trigger(\"dataOembedSuccess\", {\n options: a,\n data: b\n });\n }, this.failedToReceiveEmbedCode = function(a) {\n ((a.retry ? (a.retry = !1, this.trigger(\"dataOembedRetry\", a), this.requestEmbedCode({\n }, a)) : this.trigger(\"dataOembedError\", a)));\n }, this.cacheKeyForOptions = function(a) {\n return ((JSON.stringify(a.data) + a.tweetId));\n }, this.useMacawSyndication = function() {\n return userInfo.getDecider(\"oembed_use_macaw_syndication\");\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiNeedsOembed\", this.requestEmbedCode), this.cachedEmbedCodes = {\n };\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), userInfo = require(\"app/data/user_info\");\n module.exports = defineComponent(OembedData, withData);\n});\ndefine(\"app/data/oembed_scribe\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_scribe\",], function(module, require, exports) {\n function oembedScribe() {\n this.scribeError = function(a, b) {\n this.scribe({\n component: \"oembed\",\n action: \"request_failed\"\n });\n }, this.scribeRetry = function(a, b) {\n this.scribe({\n component: \"oembed\",\n action: \"retry\"\n });\n }, this.scribeRequest = function(a, b) {\n this.scribe({\n component: \"oembed\",\n action: \"request\"\n }, b);\n }, this.scribeSuccess = function(a, b) {\n this.scribe({\n component: \"oembed\",\n action: \"success\"\n }, b);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"dataOembedError\", this.scribeError), this.JSBNG__on(\"dataOembedRetry\", this.scribeRetry), this.JSBNG__on(\"dataOembedRequest\", this.scribeRequest), this.JSBNG__on(\"dataOembedSuccess\", this.scribeSuccess);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withScribe = require(\"app/data/with_scribe\");\n module.exports = defineComponent(oembedScribe, withScribe);\n});\ndefine(\"app/ui/with_drag_events\", [\"module\",\"require\",\"exports\",\"app/utils/drag_drop_helper\",], function(module, require, exports) {\n function withDragEvents() {\n this.childHover = function(a) {\n (($.contains(this.$node.get(0), a.target) && (a.stopImmediatePropagation(), this.inChild = ((a.type === \"dragenter\")))));\n }, this.hover = function(a) {\n a.preventDefault();\n if (this.inChild) {\n return !1;\n }\n ;\n ;\n this.trigger(((((a.type === \"dragenter\")) ? \"uiDragEnter\" : \"uiDragLeave\")));\n }, this.finish = function(a) {\n a.stopImmediatePropagation(), this.inChild = !1, this.trigger(\"uiDragLeave\");\n }, this.preventDefault = function(a) {\n return a.preventDefault(), !1;\n }, this.detectDragEnd = function(a) {\n ((this.detectingEnd || (this.detectingEnd = !0, $(JSBNG__document.body).one(\"mousemove\", this.dragEnd.bind(this)))));\n }, this.dragEnd = function() {\n this.detectingEnd = !1, this.trigger(\"uiDragEnd\");\n }, this.outOfBounds = function(a) {\n var b = a.originalEvent.pageX, c = a.originalEvent.pageY, d = JSBNG__document.body.clientWidth, e = JSBNG__document.body.clientHeight;\n ((((((((((b <= 0)) || ((c <= 0)))) || ((c >= e)))) || ((b >= d)))) && this.dragEnd()));\n }, this.after(\"initialize\", function() {\n this.inChild = !1, this.JSBNG__on(JSBNG__document.body, \"dragenter dragover\", this.detectDragEnd), this.JSBNG__on(JSBNG__document.body, \"dragleave\", this.outOfBounds), this.JSBNG__on(\"dragenter dragleave\", dragDropHelper.onlyHandleEventsWithFiles(this.hover)), this.JSBNG__on(\"dragover drop\", dragDropHelper.onlyHandleEventsWithFiles(this.preventDefault)), this.JSBNG__on(\"dragenter dragleave\", dragDropHelper.onlyHandleEventsWithFiles(this.childHover)), this.JSBNG__on(JSBNG__document, \"uiDragEnd drop\", this.finish);\n });\n };\n;\n module.exports = withDragEvents;\n var dragDropHelper = require(\"app/utils/drag_drop_helper\");\n});\ndefine(\"app/ui/drag_state\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/ui/with_drag_events\",], function(module, require, exports) {\n function dragState() {\n this.defaultAttrs({\n draggingClass: \"currently-dragging\",\n supportsDraggingClass: \"supports-drag-and-drop\"\n }), this.dragEnter = function() {\n this.$node.addClass(this.attr.draggingClass);\n }, this.dragLeave = function() {\n this.$node.removeClass(this.attr.draggingClass);\n }, this.addSupportsDraggingClass = function() {\n this.$node.addClass(this.attr.supportsDraggingClass);\n }, this.hasSupport = function() {\n return ((((\"draggable\" in JSBNG__document.createElement(\"span\"))) && !$.browser.msie));\n }, this.after(\"initialize\", function() {\n ((this.hasSupport() && (this.addSupportsDraggingClass(), this.JSBNG__on(\"uiDragEnter\", this.dragEnter), this.JSBNG__on(\"uiDragLeave uiDrop\", this.dragLeave))));\n });\n };\n;\n var defineComponent = require(\"core/component\"), withDragEvents = require(\"app/ui/with_drag_events\");\n module.exports = defineComponent(dragState, withDragEvents);\n});\ndefine(\"app/data/notification_listener\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/utils/setup_polling_with_backoff\",\"app/data/notifications\",], function(module, require, exports) {\n function notificationListener() {\n this.pollForNotifications = function(a, b) {\n ((notifications.shouldPoll() && this.trigger(\"uiDMPoll\")));\n }, this.resetDMs = function(a, b) {\n notifications.resetDMState(a, b);\n }, this.notifications = notifications, this.after(\"initialize\", function() {\n notifications.init(this.attr), this.JSBNG__on(JSBNG__document, \"uiResetDMPoll\", this.resetDMs), this.JSBNG__on(JSBNG__document, \"uiPollForNotifications\", this.pollForNotifications), this.timer = setupPollingWithBackoff(\"uiPollForNotifications\");\n });\n };\n;\n var defineComponent = require(\"core/component\"), setupPollingWithBackoff = require(\"app/utils/setup_polling_with_backoff\"), notifications = require(\"app/data/notifications\"), NotificationListener = defineComponent(notificationListener);\n module.exports = NotificationListener;\n});\ndefine(\"app/data/dm_poll\", [\"module\",\"require\",\"exports\",\"core/component\",\"app/data/with_data\",\"app/data/with_auth_token\",\"app/data/notifications\",], function(module, require, exports) {\n function dmPoll() {\n this.defaultAttrs({\n noShowError: !0\n }), this.dispatch = function(a) {\n ((a && (notifications.updateNotificationState(a.note), this.trigger(\"dataNotificationsReceived\", a.note))));\n }, this.makeRequest = function(a, b, c) {\n this.get({\n url: \"/messages\",\n data: c,\n eventData: b,\n success: this.dispatch.bind(this),\n error: \"dataDMError\"\n });\n }, this.requestConversationList = function(a, b) {\n var c = {\n notifications: \"true\"\n };\n notifications.addDMData(c), this.makeRequest(a, b, c);\n }, this.after(\"initialize\", function() {\n this.JSBNG__on(\"uiDMPoll\", this.requestConversationList);\n });\n };\n;\n var defineComponent = require(\"core/component\"), withData = require(\"app/data/with_data\"), withAuthToken = require(\"app/data/with_auth_token\"), notifications = require(\"app/data/notifications\"), DMPoll = defineComponent(dmPoll, withData, withAuthToken);\n module.exports = DMPoll;\n});\ndefine(\"app/boot/app\", [\"module\",\"require\",\"exports\",\"app/boot/common\",\"app/boot/top_bar\",\"app/ui/keyboard_shortcuts\",\"app/ui/dialogs/keyboard_shortcuts_dialog\",\"app/ui/dialogs/retweet_dialog\",\"app/ui/dialogs/delete_tweet_dialog\",\"app/ui/dialogs/block_user_dialog\",\"app/ui/dialogs/confirm_dialog\",\"app/ui/dialogs/confirm_email_dialog\",\"app/ui/dialogs/list_membership_dialog\",\"app/ui/dialogs/list_operations_dialog\",\"app/boot/direct_messages\",\"app/boot/profile_popup\",\"app/data/typeahead/typeahead\",\"app/data/typeahead_scribe\",\"app/ui/dialogs/goto_user_dialog\",\"app/utils/setup_polling_with_backoff\",\"app/ui/page_title\",\"app/ui/navigation_links\",\"app/ui/feedback/feedback_dialog\",\"app/ui/feedback/feedback_report_link_handler\",\"app/data/feedback/feedback\",\"app/ui/search_query_source\",\"app/ui/banners/email_banner\",\"app/data/email_banner\",\"app/ui/gallery/gallery\",\"app/data/gallery_scribe\",\"app/ui/dialogs/share_via_email_dialog\",\"app/ui/dialogs/embed_tweet\",\"app/data/embed_scribe\",\"app/data/oembed\",\"app/data/oembed_scribe\",\"app/ui/drag_state\",\"app/data/notification_listener\",\"app/data/dm_poll\",], function(module, require, exports) {\n var bootCommon = require(\"app/boot/common\"), topBar = require(\"app/boot/top_bar\"), KeyboardShortcuts = require(\"app/ui/keyboard_shortcuts\"), KeyboardShortcutsDialog = require(\"app/ui/dialogs/keyboard_shortcuts_dialog\"), RetweetDialog = require(\"app/ui/dialogs/retweet_dialog\"), DeleteTweetDialog = require(\"app/ui/dialogs/delete_tweet_dialog\"), BlockUserDialog = require(\"app/ui/dialogs/block_user_dialog\"), ConfirmDialog = require(\"app/ui/dialogs/confirm_dialog\"), ConfirmEmailDialog = require(\"app/ui/dialogs/confirm_email_dialog\"), ListMembershipDialog = require(\"app/ui/dialogs/list_membership_dialog\"), ListOperationsDialog = require(\"app/ui/dialogs/list_operations_dialog\"), directMessages = require(\"app/boot/direct_messages\"), profilePopup = require(\"app/boot/profile_popup\"), TypeaheadData = require(\"app/data/typeahead/typeahead\"), TypeaheadScribe = require(\"app/data/typeahead_scribe\"), GotoUserDialog = require(\"app/ui/dialogs/goto_user_dialog\"), setupPollingWithBackoff = require(\"app/utils/setup_polling_with_backoff\"), PageTitle = require(\"app/ui/page_title\"), NavigationLinks = require(\"app/ui/navigation_links\"), FeedbackDialog = require(\"app/ui/feedback/feedback_dialog\"), FeedbackReportLinkHandler = require(\"app/ui/feedback/feedback_report_link_handler\"), Feedback = require(\"app/data/feedback/feedback\"), SearchQuerySource = require(\"app/ui/search_query_source\"), EmailBanner = require(\"app/ui/banners/email_banner\"), EmailBannerData = require(\"app/data/email_banner\"), Gallery = require(\"app/ui/gallery/gallery\"), GalleryScribe = require(\"app/data/gallery_scribe\"), ShareViaEmailDialog = require(\"app/ui/dialogs/share_via_email_dialog\"), EmbedTweetDialog = require(\"app/ui/dialogs/embed_tweet\"), EmbedScribe = require(\"app/data/embed_scribe\"), OembedData = require(\"app/data/oembed\"), OembedScribe = require(\"app/data/oembed_scribe\"), DragState = require(\"app/ui/drag_state\"), NotificationListener = require(\"app/data/notification_listener\"), DMPoll = require(\"app/data/dm_poll\");\n module.exports = function(b) {\n bootCommon(b), topBar(b), PageTitle.attachTo(JSBNG__document, {\n noTeardown: !0\n }), NotificationListener.attachTo(JSBNG__document, b, {\n noTeardown: !0\n }), DMPoll.attachTo(JSBNG__document, b, {\n noTeardown: !0\n }), ((b.dragAndDropPhotoUpload && DragState.attachTo(\"body\"))), SearchQuerySource.attachTo(\"body\", {\n noTeardown: !0\n }), ConfirmDialog.attachTo(\"#confirm_dialog\", {\n noTeardown: !0\n }), ((b.loggedIn && (ListMembershipDialog.attachTo(\"#list-membership-dialog\", b, {\n noTeardown: !0\n }), ListOperationsDialog.attachTo(\"#list-operations-dialog\", b, {\n noTeardown: !0\n }), directMessages(b), ((b.hasUserCompletionModule ? ConfirmEmailDialog.attachTo(\"#confirm-email-dialog\", {\n noTeardown: !0\n }) : EmailBanner.attachTo(JSBNG__document, {\n noTeardown: !0\n }))), EmailBannerData.attachTo(JSBNG__document, {\n noTeardown: !0\n })))), TypeaheadScribe.attachTo(JSBNG__document, {\n noTeardown: !0\n }), TypeaheadData.attachTo(JSBNG__document, b.typeaheadData, {\n noTeardown: !0\n }), GotoUserDialog.attachTo(\"#goto-user-dialog\", b), profilePopup({\n deviceEnabled: b.deviceEnabled,\n deviceVerified: b.deviceVerified,\n formAuthenticityToken: b.formAuthenticityToken,\n loggedIn: b.loggedIn,\n asyncSocialProof: b.asyncSocialProof\n }), GalleryScribe.attachTo(JSBNG__document, {\n noTeardown: !0\n }), Gallery.attachTo(\".gallery-container\", b, {\n noTeardown: !0,\n sandboxes: b.sandboxes,\n loggedIn: b.loggedIn,\n eventData: {\n scribeContext: {\n component: \"gallery\"\n }\n }\n }), OembedScribe.attachTo(JSBNG__document, {\n noTeardown: !0\n }), OembedData.attachTo(JSBNG__document, b), KeyboardShortcutsDialog.attachTo(\"#keyboard-shortcut-dialog\", b, {\n noTeardown: !0\n }), RetweetDialog.attachTo(\"#retweet-tweet-dialog\", b, {\n noTeardown: !0\n }), DeleteTweetDialog.attachTo(\"#delete-tweet-dialog\", b, {\n noTeardown: !0\n }), BlockUserDialog.attachTo(\"#block-user-dialog\", b, {\n noTeardown: !0\n }), KeyboardShortcuts.attachTo(JSBNG__document, {\n routes: b.routes,\n noTeardown: !0\n }), ShareViaEmailDialog.attachTo(\"#share-via-email-dialog\", b, {\n noTeardown: !0\n }), EmbedScribe.attachTo(JSBNG__document, {\n noTeardown: !0\n }), EmbedTweetDialog.attachTo(\"#embed-tweet-dialog\", b, {\n noTeardown: !0\n }), setupPollingWithBackoff(\"uiWantsToRefreshTimestamps\"), NavigationLinks.attachTo(\".dashboard\", {\n eventData: {\n scribeContext: {\n component: \"dashboard_nav\"\n }\n }\n }), FeedbackDialog.attachTo(\"#feedback_dialog\", b.debugData, {\n noTeardown: !0\n }), Feedback.attachTo(JSBNG__document, b.debugData, {\n noTeardown: !0\n }), FeedbackReportLinkHandler.attachTo(JSBNG__document, b.debugData, {\n noTeardown: !0\n });\n };\n});\ndefine(\"lib/twitter_cldr\", [\"module\",\"require\",\"exports\",], function(module, require, exports) {\n (function() {\n var a, b, c, d;\n a = {\n }, a.is_rtl = !1, a.Utilities = function() {\n function a() {\n \n };\n ;\n return a.from_char_code = function(a) {\n return ((((a > 65535)) ? (a -= 65536, String.fromCharCode(((55296 + ((a >> 10)))), ((56320 + ((a & 1023)))))) : String.fromCharCode(a)));\n }, a.char_code_at = function(a, b) {\n var c, d, e, f, g, h;\n a += \"\", d = a.length, h = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g;\n while (((h.exec(a) !== null))) {\n f = h.lastIndex;\n if (!((((f - 2)) < b))) {\n break;\n }\n ;\n ;\n b += 1;\n };\n ;\n return ((((((b >= d)) || ((b < 0)))) ? NaN : (c = a.charCodeAt(b), ((((((55296 <= c)) && ((c <= 56319)))) ? (e = c, g = a.charCodeAt(((b + 1))), ((((((((e - 55296)) * 1024)) + ((g - 56320)))) + 65536))) : c)))));\n }, a.unpack_string = function(a) {\n var b, c, d, e, f;\n d = [];\n for (c = e = 0, f = a.length; ((((0 <= f)) ? ((e < f)) : ((e > f)))); c = ((((0 <= f)) ? ++e : --e))) {\n b = this.char_code_at(a, c);\n if (!b) {\n break;\n }\n ;\n ;\n d.push(b);\n };\n ;\n return d;\n }, a.pack_array = function(a) {\n var b;\n return function() {\n var c, d, e;\n e = [];\n for (c = 0, d = a.length; ((c < d)); c++) {\n b = a[c], e.push(this.from_char_code(b));\n ;\n };\n ;\n return e;\n }.call(this).join(\"\");\n }, a.arraycopy = function(a, b, c, d, e) {\n var f, g, h, i, j;\n j = a.slice(b, ((b + e)));\n for (f = h = 0, i = j.length; ((h < i)); f = ++h) {\n g = j[f], c[((d + f))] = g;\n ;\n };\n ;\n }, a.max = function(a) {\n var b, c, d, e, f, g, h, i;\n d = null;\n for (e = f = 0, h = a.length; ((f < h)); e = ++f) {\n b = a[e];\n if (((b != null))) {\n d = b;\n break;\n }\n ;\n ;\n };\n ;\n for (c = g = e, i = a.length; ((((e <= i)) ? ((g <= i)) : ((g >= i)))); c = ((((e <= i)) ? ++g : --g))) {\n ((((a[c] > d)) && (d = a[c])));\n ;\n };\n ;\n return d;\n }, a.min = function(a) {\n var b, c, d, e, f, g, h, i;\n d = null;\n for (e = f = 0, h = a.length; ((f < h)); e = ++f) {\n b = a[e];\n if (((b != null))) {\n d = b;\n break;\n }\n ;\n ;\n };\n ;\n for (c = g = e, i = a.length; ((((e <= i)) ? ((g <= i)) : ((g >= i)))); c = ((((e <= i)) ? ++g : --g))) {\n ((((a[c] < d)) && (d = a[c])));\n ;\n };\n ;\n return d;\n }, a.is_even = function(a) {\n return ((((a % 2)) === 0));\n }, a.is_odd = function(a) {\n return ((((a % 2)) === 1));\n }, a;\n }(), a.PluralRules = function() {\n function a() {\n \n };\n ;\n return a.rules = {\n keys: [\"one\",\"other\",],\n rule: function(a) {\n return function() {\n return ((((a == 1)) ? \"one\" : \"other\"));\n }();\n }\n }, a.all = function() {\n return this.rules.keys;\n }, a.rule_for = function(a) {\n try {\n return this.rules.rule(a);\n } catch (b) {\n return \"other\";\n };\n ;\n }, a;\n }(), a.TimespanFormatter = function() {\n function b() {\n this.approximate_multiplier = 332506, this.default_type = \"default\", this.tokens = {\n ago: {\n second: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" second ago\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" seconds ago\",\n type: \"plaintext\"\n },]\n }\n },\n minute: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" minute ago\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" minutes ago\",\n type: \"plaintext\"\n },]\n }\n },\n hour: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" hour ago\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" hours ago\",\n type: \"plaintext\"\n },]\n }\n },\n day: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" day ago\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" days ago\",\n type: \"plaintext\"\n },]\n }\n },\n week: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" week ago\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" weeks ago\",\n type: \"plaintext\"\n },]\n }\n },\n month: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" month ago\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" months ago\",\n type: \"plaintext\"\n },]\n }\n },\n year: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" year ago\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" years ago\",\n type: \"plaintext\"\n },]\n }\n }\n },\n until: {\n second: {\n \"default\": {\n one: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" second\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" seconds\",\n type: \"plaintext\"\n },]\n }\n },\n minute: {\n \"default\": {\n one: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" minute\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" minutes\",\n type: \"plaintext\"\n },]\n }\n },\n hour: {\n \"default\": {\n one: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" hour\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" hours\",\n type: \"plaintext\"\n },]\n }\n },\n day: {\n \"default\": {\n one: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" day\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" days\",\n type: \"plaintext\"\n },]\n }\n },\n week: {\n \"default\": {\n one: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" week\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" weeks\",\n type: \"plaintext\"\n },]\n }\n },\n month: {\n \"default\": {\n one: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" month\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" months\",\n type: \"plaintext\"\n },]\n }\n },\n year: {\n \"default\": {\n one: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" year\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"In \",\n type: \"plaintext\"\n },{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" years\",\n type: \"plaintext\"\n },]\n }\n }\n },\n none: {\n second: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" second\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" seconds\",\n type: \"plaintext\"\n },]\n },\n short: {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" sec\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" secs\",\n type: \"plaintext\"\n },]\n },\n abbreviated: {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \"s\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \"s\",\n type: \"plaintext\"\n },]\n }\n },\n minute: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" minute\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" minutes\",\n type: \"plaintext\"\n },]\n },\n short: {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" min\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" mins\",\n type: \"plaintext\"\n },]\n },\n abbreviated: {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \"m\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \"m\",\n type: \"plaintext\"\n },]\n }\n },\n hour: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" hour\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" hours\",\n type: \"plaintext\"\n },]\n },\n short: {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" hr\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" hrs\",\n type: \"plaintext\"\n },]\n },\n abbreviated: {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \"h\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \"h\",\n type: \"plaintext\"\n },]\n }\n },\n day: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" day\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" days\",\n type: \"plaintext\"\n },]\n },\n short: {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" day\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" days\",\n type: \"plaintext\"\n },]\n },\n abbreviated: {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \"d\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \"d\",\n type: \"plaintext\"\n },]\n }\n },\n week: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" week\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" weeks\",\n type: \"plaintext\"\n },]\n },\n short: {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" wk\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" wks\",\n type: \"plaintext\"\n },]\n }\n },\n month: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" month\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" months\",\n type: \"plaintext\"\n },]\n },\n short: {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" mth\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" mths\",\n type: \"plaintext\"\n },]\n }\n },\n year: {\n \"default\": {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" year\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" years\",\n type: \"plaintext\"\n },]\n },\n short: {\n one: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" yr\",\n type: \"plaintext\"\n },],\n other: [{\n value: \"{0}\",\n type: \"placeholder\"\n },{\n value: \" yrs\",\n type: \"plaintext\"\n },]\n }\n }\n }\n }, this.time_in_seconds = {\n second: 1,\n minute: 60,\n hour: 3600,\n day: 86400,\n week: 604800,\n month: 2629743.83,\n year: 31556926\n };\n };\n ;\n return b.prototype.format = function(b, c) {\n var d, e, f, g, h, i;\n ((((c == null)) && (c = {\n }))), g = {\n };\n {\n var fin79keys = ((window.top.JSBNG_Replay.forInKeys)((c))), fin79i = (0);\n (0);\n for (; (fin79i < fin79keys.length); (fin79i++)) {\n ((d) = (fin79keys[fin79i]));\n {\n f = c[d], g[d] = f;\n ;\n };\n };\n };\n ;\n ((g.direction || (g.direction = ((((b < 0)) ? \"ago\" : \"until\")))));\n if (((((g.unit === null)) || ((g.unit === void 0))))) {\n g.unit = this.calculate_unit(Math.abs(b), g);\n }\n ;\n ;\n return ((g.type || (g.type = this.default_type))), g.number = this.calculate_time(Math.abs(b), g.unit), e = this.calculate_time(Math.abs(b), g.unit), g.rule = a.PluralRules.rule_for(e), h = function() {\n var a, b, c, d;\n c = this.tokens[g.direction][g.unit][g.type][g.rule], d = [];\n for (a = 0, b = c.length; ((a < b)); a++) {\n i = c[a], d.push(i.value);\n ;\n };\n ;\n return d;\n }.call(this), h.join(\"\").replace(/\\{[0-9]\\}/, e.toString());\n }, b.prototype.calculate_unit = function(a, b) {\n var c, d, e, f;\n ((((b == null)) && (b = {\n }))), f = {\n };\n {\n var fin80keys = ((window.top.JSBNG_Replay.forInKeys)((b))), fin80i = (0);\n (0);\n for (; (fin80i < fin80keys.length); (fin80i++)) {\n ((c) = (fin80keys[fin80i]));\n {\n e = b[c], f[c] = e;\n ;\n };\n };\n };\n ;\n return ((((f.approximate == null)) && (f.approximate = !1))), d = ((f.approximate ? this.approximate_multiplier : 1)), ((((a < ((this.time_in_seconds.minute * d)))) ? \"second\" : ((((a < ((this.time_in_seconds.hour * d)))) ? \"minute\" : ((((a < ((this.time_in_seconds.day * d)))) ? \"hour\" : ((((a < ((this.time_in_seconds.week * d)))) ? \"day\" : ((((a < ((this.time_in_seconds.month * d)))) ? \"week\" : ((((a < ((this.time_in_seconds.year * d)))) ? \"month\" : \"year\"))))))))))));\n }, b.prototype.calculate_time = function(a, b) {\n return Math.round(((a / this.time_in_seconds[b])));\n }, b;\n }(), a.DateTimeFormatter = function() {\n function b() {\n this.tokens = {\n date_time: {\n \"default\": [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },{\n value: \",\",\n type: \"plaintext\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n full: [{\n value: \"EEEE\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"MMMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"'\",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"plaintext\"\n },{\n value: \"t\",\n type: \"plaintext\"\n },{\n value: \"'\",\n type: \"plaintext\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"zzzz\",\n type: \"pattern\"\n },],\n long: [{\n value: \"MMMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"'\",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"plaintext\"\n },{\n value: \"t\",\n type: \"plaintext\"\n },{\n value: \"'\",\n type: \"plaintext\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"z\",\n type: \"pattern\"\n },],\n medium: [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },{\n value: \",\",\n type: \"plaintext\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n short: [{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"yy\",\n type: \"pattern\"\n },{\n value: \",\",\n type: \"plaintext\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n additional: {\n EHm: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"HH\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },],\n EHms: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"HH\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },],\n Ed: [{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"E\",\n type: \"pattern\"\n },],\n Ehm: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n Ehms: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n Gy: [{\n value: \"y\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"G\",\n type: \"pattern\"\n },],\n H: [{\n value: \"HH\",\n type: \"pattern\"\n },],\n Hm: [{\n value: \"HH\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },],\n Hms: [{\n value: \"HH\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },],\n M: [{\n value: \"L\",\n type: \"pattern\"\n },],\n MEd: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },],\n MMM: [{\n value: \"LLL\",\n type: \"pattern\"\n },],\n MMMEd: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },],\n MMMd: [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },],\n Md: [{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },],\n d: [{\n value: \"d\",\n type: \"pattern\"\n },],\n h: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n hm: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n hms: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n ms: [{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },],\n y: [{\n value: \"y\",\n type: \"pattern\"\n },],\n yM: [{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMEd: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMMM: [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMMMEd: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMMMd: [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMd: [{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yQQQ: [{\n value: \"QQQ\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yQQQQ: [{\n value: \"QQQQ\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },]\n }\n },\n time: {\n \"default\": [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n full: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"zzzz\",\n type: \"pattern\"\n },],\n long: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"z\",\n type: \"pattern\"\n },],\n medium: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n short: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n additional: {\n EHm: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"HH\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },],\n EHms: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"HH\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },],\n Ed: [{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"E\",\n type: \"pattern\"\n },],\n Ehm: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n Ehms: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n Gy: [{\n value: \"y\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"G\",\n type: \"pattern\"\n },],\n H: [{\n value: \"HH\",\n type: \"pattern\"\n },],\n Hm: [{\n value: \"HH\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },],\n Hms: [{\n value: \"HH\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },],\n M: [{\n value: \"L\",\n type: \"pattern\"\n },],\n MEd: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },],\n MMM: [{\n value: \"LLL\",\n type: \"pattern\"\n },],\n MMMEd: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },],\n MMMd: [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },],\n Md: [{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },],\n d: [{\n value: \"d\",\n type: \"pattern\"\n },],\n h: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n hm: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n hms: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n ms: [{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },],\n y: [{\n value: \"y\",\n type: \"pattern\"\n },],\n yM: [{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMEd: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMMM: [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMMMEd: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMMMd: [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMd: [{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yQQQ: [{\n value: \"QQQ\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yQQQQ: [{\n value: \"QQQQ\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },]\n }\n },\n date: {\n \"default\": [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n full: [{\n value: \"EEEE\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"MMMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n long: [{\n value: \"MMMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n medium: [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n short: [{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"yy\",\n type: \"pattern\"\n },],\n additional: {\n EHm: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"HH\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },],\n EHms: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"HH\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },],\n Ed: [{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"E\",\n type: \"pattern\"\n },],\n Ehm: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n Ehms: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n Gy: [{\n value: \"y\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"G\",\n type: \"pattern\"\n },],\n H: [{\n value: \"HH\",\n type: \"pattern\"\n },],\n Hm: [{\n value: \"HH\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },],\n Hms: [{\n value: \"HH\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },],\n M: [{\n value: \"L\",\n type: \"pattern\"\n },],\n MEd: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },],\n MMM: [{\n value: \"LLL\",\n type: \"pattern\"\n },],\n MMMEd: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },],\n MMMd: [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },],\n Md: [{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },],\n d: [{\n value: \"d\",\n type: \"pattern\"\n },],\n h: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n hm: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n hms: [{\n value: \"h\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"a\",\n type: \"pattern\"\n },],\n ms: [{\n value: \"mm\",\n type: \"pattern\"\n },{\n value: \":\",\n type: \"plaintext\"\n },{\n value: \"ss\",\n type: \"pattern\"\n },],\n y: [{\n value: \"y\",\n type: \"pattern\"\n },],\n yM: [{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMEd: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMMM: [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMMMEd: [{\n value: \"E\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMMMd: [{\n value: \"MMM\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \", \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yMd: [{\n value: \"M\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"d\",\n type: \"pattern\"\n },{\n value: \"/\",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yQQQ: [{\n value: \"QQQ\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },],\n yQQQQ: [{\n value: \"QQQQ\",\n type: \"pattern\"\n },{\n value: \" \",\n type: \"plaintext\"\n },{\n value: \"y\",\n type: \"pattern\"\n },]\n }\n }\n }, this.weekday_keys = [\"sun\",\"mon\",\"tue\",\"wed\",\"thu\",\"fri\",\"sat\",], this.methods = {\n G: \"era\",\n y: \"year\",\n Y: \"year_of_week_of_year\",\n Q: \"quarter\",\n q: \"quarter_stand_alone\",\n M: \"month\",\n L: \"month_stand_alone\",\n w: \"week_of_year\",\n W: \"week_of_month\",\n d: \"day\",\n D: \"day_of_month\",\n F: \"day_of_week_in_month\",\n E: \"weekday\",\n e: \"weekday_local\",\n c: \"weekday_local_stand_alone\",\n a: \"period\",\n h: \"hour\",\n H: \"hour\",\n K: \"hour\",\n k: \"hour\",\n m: \"minute\",\n s: \"second\",\n S: \"second_fraction\",\n z: \"timezone\",\n Z: \"timezone\",\n v: \"timezone_generic_non_location\",\n V: \"timezone_metazone\"\n };\n };\n ;\n return b.prototype.format = function(a, b) {\n var c, d, e, f = this;\n return c = function(b) {\n var c;\n c = \"\";\n switch (b.type) {\n case \"pattern\":\n return f.result_for_token(b, a);\n default:\n return ((((((((b.value.length > 0)) && ((b.value[0] === \"'\")))) && ((b.value[((b.value.length - 1))] === \"'\")))) ? b.value.substring(1, ((b.value.length - 1))) : b.value));\n };\n ;\n }, e = this.get_tokens(a, b), function() {\n var a, b, f;\n f = [];\n for (a = 0, b = e.length; ((a < b)); a++) {\n d = e[a], f.push(c(d));\n ;\n };\n ;\n return f;\n }().join(\"\");\n }, b.prototype.get_tokens = function(a, b) {\n var c, d;\n return c = ((b.format || \"date_time\")), d = ((b.type || \"default\")), ((((c === \"additional\")) ? this.tokens.date_time[c][this.additional_format_selector().find_closest(b.type)] : this.tokens[c][d]));\n }, b.prototype.result_for_token = function(a, b) {\n return this[this.methods[a.value[0]]](b, a.value, a.value.length);\n }, b.prototype.additional_format_selector = function() {\n return new a.AdditionalDateFormatSelector(this.tokens.date_time.additional);\n }, b.additional_formats = function() {\n return (new a.DateTimeFormatter).additional_format_selector().patterns();\n }, b.prototype.era = function(b, c, d) {\n var e, f, g;\n switch (d) {\n case 0:\n e = [\"\",\"\",];\n break;\n case 1:\n \n case 2:\n \n case 3:\n e = a.Calendar.calendar.eras.abbr;\n break;\n default:\n e = a.Calendar.calendar.eras.JSBNG__name;\n };\n ;\n return f = ((((b.getFullYear() < 0)) ? 0 : 1)), g = e[f], ((((g != null)) ? g : this.era(b, c.slice(0, -1), ((d - 1)))));\n }, b.prototype.year = function(a, b, c) {\n var d;\n return d = a.getFullYear().toString(), ((((((c === 2)) && ((d.length !== 1)))) && (d = d.slice(-2)))), ((((c > 1)) && (d = ((\"0000\" + d)).slice(-c)))), d;\n }, b.prototype.year_of_week_of_year = function(a, b, c) {\n throw \"not implemented\";\n }, b.prototype.day_of_week_in_month = function(a, b, c) {\n throw \"not implemented\";\n }, b.prototype.quarter = function(b, c, d) {\n var e;\n e = ((((((b.getMonth() / 3)) | 0)) + 1));\n switch (d) {\n case 1:\n return e.toString();\n case 2:\n return ((\"0000\" + e.toString())).slice(-d);\n case 3:\n return a.Calendar.calendar.quarters.format.abbreviated[e];\n case 4:\n return a.Calendar.calendar.quarters.format.wide[e];\n };\n ;\n }, b.prototype.quarter_stand_alone = function(b, c, d) {\n var e;\n e = ((((((b.getMonth() - 1)) / 3)) + 1));\n switch (d) {\n case 1:\n return e.toString();\n case 2:\n return ((\"0000\" + e.toString())).slice(-d);\n case 3:\n throw \"not yet implemented (requires cldr's \\\"multiple inheritance\\\")\";\n case 4:\n throw \"not yet implemented (requires cldr's \\\"multiple inheritance\\\")\";\n case 5:\n return a.Calendar.calendar.quarters[\"stand-alone\"].narrow[e];\n };\n ;\n }, b.prototype.month = function(b, c, d) {\n var e;\n e = ((b.getMonth() + 1)).toString();\n switch (d) {\n case 1:\n return e;\n case 2:\n return ((\"0000\" + e)).slice(-d);\n case 3:\n return a.Calendar.calendar.months.format.abbreviated[e];\n case 4:\n return a.Calendar.calendar.months.format.wide[e];\n case 5:\n throw \"not yet implemented (requires cldr's \\\"multiple inheritance\\\")\";\n default:\n throw \"Unknown date format\";\n };\n ;\n }, b.prototype.month_stand_alone = function(b, c, d) {\n var e;\n e = ((b.getMonth() + 1)).toString();\n switch (d) {\n case 1:\n return e;\n case 2:\n return ((\"0000\" + e)).slice(-d);\n case 3:\n return a.Calendar.calendar.months[\"stand-alone\"].abbreviated[e];\n case 4:\n return a.Calendar.calendar.months[\"stand-alone\"].wide[e];\n case 5:\n return a.Calendar.calendar.months[\"stand-alone\"].narrow[e];\n default:\n throw \"Unknown date format\";\n };\n ;\n }, b.prototype.day = function(a, b, c) {\n switch (c) {\n case 1:\n return a.getDate().toString();\n case 2:\n return ((\"0000\" + a.getDate().toString())).slice(-c);\n };\n ;\n }, b.prototype.weekday = function(b, c, d) {\n var e;\n e = this.weekday_keys[b.getDay()];\n switch (d) {\n case 1:\n \n case 2:\n \n case 3:\n return a.Calendar.calendar.days.format.abbreviated[e];\n case 4:\n return a.Calendar.calendar.days.format.wide[e];\n case 5:\n return a.Calendar.calendar.days[\"stand-alone\"].narrow[e];\n };\n ;\n }, b.prototype.weekday_local = function(a, b, c) {\n var d;\n switch (c) {\n case 1:\n \n case 2:\n return d = a.getDay(), ((((d === 0)) ? \"7\" : d.toString()));\n default:\n return this.weekday(a, b, c);\n };\n ;\n }, b.prototype.weekday_local_stand_alone = function(a, b, c) {\n switch (c) {\n case 1:\n return this.weekday_local(a, b, c);\n default:\n return this.weekday(a, b, c);\n };\n ;\n }, b.prototype.period = function(b, c, d) {\n return ((((b.getHours() > 11)) ? a.Calendar.calendar.periods.format.wide.pm : a.Calendar.calendar.periods.format.wide.am));\n }, b.prototype.hour = function(a, b, c) {\n var d;\n d = a.getHours();\n switch (b[0]) {\n case \"h\":\n ((((d > 12)) ? d -= 12 : ((((d === 0)) && (d = 12)))));\n break;\n case \"K\":\n ((((d > 11)) && (d -= 12)));\n break;\n case \"k\":\n ((((d === 0)) && (d = 24)));\n };\n ;\n return ((((c === 1)) ? d.toString() : ((\"000000\" + d.toString())).slice(-c)));\n }, b.prototype.minute = function(a, b, c) {\n return ((((c === 1)) ? a.getMinutes().toString() : ((\"000000\" + a.getMinutes().toString())).slice(-c)));\n }, b.prototype.second = function(a, b, c) {\n return ((((c === 1)) ? a.getSeconds().toString() : ((\"000000\" + a.getSeconds().toString())).slice(-c)));\n }, b.prototype.second_fraction = function(a, b, c) {\n if (((c > 6))) {\n throw \"can not use the S format with more than 6 digits\";\n }\n ;\n ;\n return ((\"000000\" + Math.round(Math.pow(((a.getMilliseconds() * 100)), ((6 - c)))).toString())).slice(-c);\n }, b.prototype.timezone = function(a, b, c) {\n var d, e, f, g, h;\n f = a.getTimezoneOffset(), d = ((\"00\" + ((Math.abs(f) / 60)).toString())).slice(-2), e = ((\"00\" + ((Math.abs(f) % 60)).toString())).slice(-2), h = ((((f > 0)) ? \"-\" : \"+\")), g = ((((((h + d)) + \":\")) + e));\n switch (c) {\n case 1:\n \n case 2:\n \n case 3:\n return g;\n default:\n return ((\"UTC\" + g));\n };\n ;\n }, b.prototype.timezone_generic_non_location = function(a, b, c) {\n throw \"not yet implemented (requires timezone translation data\\\")\";\n }, b;\n }(), a.AdditionalDateFormatSelector = function() {\n function a(a) {\n this.pattern_hash = a;\n };\n ;\n return a.prototype.find_closest = function(a) {\n var b, c, d, e, f;\n if (((((a == null)) || ((a.trim().length === 0))))) {\n return null;\n }\n ;\n ;\n f = this.rank(a), d = 100, c = null;\n {\n var fin81keys = ((window.top.JSBNG_Replay.forInKeys)((f))), fin81i = (0);\n (0);\n for (; (fin81i < fin81keys.length); (fin81i++)) {\n ((b) = (fin81keys[fin81i]));\n {\n e = f[b], ((((e < d)) && (d = e, c = b)));\n ;\n };\n };\n };\n ;\n return c;\n }, a.prototype.patterns = function() {\n var a, b;\n b = [];\n {\n var fin82keys = ((window.top.JSBNG_Replay.forInKeys)((this.pattern_hash))), fin82i = (0);\n (0);\n for (; (fin82i < fin82keys.length); (fin82i++)) {\n ((a) = (fin82keys[fin82i]));\n {\n b.push(a);\n ;\n };\n };\n };\n ;\n return b;\n }, a.prototype.separate = function(a) {\n var b, c, d, e, f;\n c = \"\", d = [];\n for (e = 0, f = a.length; ((e < f)); e++) {\n b = a[e], ((((b === c)) ? d[((d.length - 1))] += b : d.push(b))), c = b;\n ;\n };\n ;\n return d;\n }, a.prototype.all_separated_patterns = function() {\n var a, b;\n b = [];\n {\n var fin83keys = ((window.top.JSBNG_Replay.forInKeys)((this.pattern_hash))), fin83i = (0);\n (0);\n for (; (fin83i < fin83keys.length); (fin83i++)) {\n ((a) = (fin83keys[fin83i]));\n {\n b.push(this.separate(a));\n ;\n };\n };\n };\n ;\n return b;\n }, a.prototype.score = function(a, b) {\n var c;\n return c = ((this.exist_score(a, b) * 2)), c += this.position_score(a, b), ((c + this.count_score(a, b)));\n }, a.prototype.position_score = function(a, b) {\n var c, d, e, f;\n f = 0;\n {\n var fin84keys = ((window.top.JSBNG_Replay.forInKeys)((b))), fin84i = (0);\n (0);\n for (; (fin84i < fin84keys.length); (fin84i++)) {\n ((e) = (fin84keys[fin84i]));\n {\n d = b[e], c = a.indexOf(d), ((((c > -1)) && (f += Math.abs(((c - e))))));\n ;\n };\n };\n };\n ;\n return f;\n }, a.prototype.exist_score = function(a, b) {\n var c, d, e, f, g;\n c = 0;\n for (f = 0, g = b.length; ((f < g)); f++) {\n e = b[f], ((((function() {\n var b, c, f;\n f = [];\n for (b = 0, c = a.length; ((b < c)); b++) {\n d = a[b], ((((d[0] === e[0])) && f.push(d)));\n ;\n };\n ;\n return f;\n }().length > 0)) || (c += 1)));\n ;\n };\n ;\n return c;\n }, a.prototype.count_score = function(a, b) {\n var c, d, e, f, g, h;\n f = 0;\n for (g = 0, h = b.length; ((g < h)); g++) {\n e = b[g], d = function() {\n var b, d, f;\n f = [];\n for (b = 0, d = a.length; ((b < d)); b++) {\n c = a[b], ((((c[0] === e[0])) && f.push(c)));\n ;\n };\n ;\n return f;\n }()[0], ((((d != null)) && (f += Math.abs(((d.length - e.length))))));\n ;\n };\n ;\n return f;\n }, a.prototype.rank = function(a) {\n var b, c, d, e, f, g;\n c = this.separate(a), b = {\n }, g = this.all_separated_patterns();\n for (e = 0, f = g.length; ((e < f)); e++) {\n d = g[e], b[d.join(\"\")] = this.score(d, c);\n ;\n };\n ;\n return b;\n }, a;\n }(), a.Calendar = function() {\n function a() {\n \n };\n ;\n return a.calendar = {\n additional_formats: {\n EHm: \"E HH:mm\",\n EHms: \"E HH:mm:ss\",\n Ed: \"d E\",\n Ehm: \"E h:mm a\",\n Ehms: \"E h:mm:ss a\",\n Gy: \"y G\",\n H: \"HH\",\n Hm: \"HH:mm\",\n Hms: \"HH:mm:ss\",\n M: \"L\",\n MEd: \"E, M/d\",\n MMM: \"LLL\",\n MMMEd: \"E, MMM d\",\n MMMd: \"MMM d\",\n Md: \"M/d\",\n d: \"d\",\n h: \"h a\",\n hm: \"h:mm a\",\n hms: \"h:mm:ss a\",\n ms: \"mm:ss\",\n y: \"y\",\n yM: \"M/y\",\n yMEd: \"E, M/d/y\",\n yMMM: \"MMM y\",\n yMMMEd: \"E, MMM d, y\",\n yMMMd: \"MMM d, y\",\n yMd: \"M/d/y\",\n yQQQ: \"QQQ y\",\n yQQQQ: \"QQQQ y\"\n },\n days: {\n format: {\n abbreviated: {\n fri: \"Fri\",\n mon: \"Mon\",\n sat: \"Sat\",\n sun: \"Sun\",\n thu: \"Thu\",\n tue: \"Tue\",\n wed: \"Wed\"\n },\n narrow: {\n fri: \"F\",\n mon: \"M\",\n sat: \"S\",\n sun: \"S\",\n thu: \"T\",\n tue: \"T\",\n wed: \"W\"\n },\n short: {\n fri: \"Fr\",\n mon: \"Mo\",\n sat: \"Sa\",\n sun: \"Su\",\n thu: \"Th\",\n tue: \"Tu\",\n wed: \"We\"\n },\n wide: {\n fri: \"Friday\",\n mon: \"Monday\",\n sat: \"Saturday\",\n sun: \"Sunday\",\n thu: \"Thursday\",\n tue: \"Tuesday\",\n wed: \"Wednesday\"\n }\n },\n \"stand-alone\": {\n abbreviated: {\n fri: \"Fri\",\n mon: \"Mon\",\n sat: \"Sat\",\n sun: \"Sun\",\n thu: \"Thu\",\n tue: \"Tue\",\n wed: \"Wed\"\n },\n narrow: {\n fri: \"F\",\n mon: \"M\",\n sat: \"S\",\n sun: \"S\",\n thu: \"T\",\n tue: \"T\",\n wed: \"W\"\n },\n short: {\n fri: \"Fr\",\n mon: \"Mo\",\n sat: \"Sa\",\n sun: \"Su\",\n thu: \"Th\",\n tue: \"Tu\",\n wed: \"We\"\n },\n wide: {\n fri: \"Friday\",\n mon: \"Monday\",\n sat: \"Saturday\",\n sun: \"Sunday\",\n thu: \"Thursday\",\n tue: \"Tuesday\",\n wed: \"Wednesday\"\n }\n }\n },\n eras: {\n abbr: {\n 0: \"BC\",\n 1: \"AD\"\n },\n JSBNG__name: {\n 0: \"Before Christ\",\n 1: \"Anno Domini\"\n },\n narrow: {\n 0: \"B\",\n 1: \"A\"\n }\n },\n fields: {\n day: \"Day\",\n dayperiod: \"AM/PM\",\n era: \"Era\",\n hour: \"Hour\",\n minute: \"Minute\",\n month: \"Month\",\n second: \"Second\",\n week: \"Week\",\n weekday: \"Day of the Week\",\n year: \"Year\",\n zone: \"Time Zone\"\n },\n formats: {\n date: {\n \"default\": {\n pattern: \"MMM d, y\"\n },\n full: {\n pattern: \"EEEE, MMMM d, y\"\n },\n long: {\n pattern: \"MMMM d, y\"\n },\n medium: {\n pattern: \"MMM d, y\"\n },\n short: {\n pattern: \"M/d/yy\"\n }\n },\n datetime: {\n \"default\": {\n pattern: \"{{date}}, {{time}}\"\n },\n full: {\n pattern: \"{{date}} 'at' {{time}}\"\n },\n long: {\n pattern: \"{{date}} 'at' {{time}}\"\n },\n medium: {\n pattern: \"{{date}}, {{time}}\"\n },\n short: {\n pattern: \"{{date}}, {{time}}\"\n }\n },\n time: {\n \"default\": {\n pattern: \"h:mm:ss a\"\n },\n full: {\n pattern: \"h:mm:ss a zzzz\"\n },\n long: {\n pattern: \"h:mm:ss a z\"\n },\n medium: {\n pattern: \"h:mm:ss a\"\n },\n short: {\n pattern: \"h:mm a\"\n }\n }\n },\n months: {\n format: {\n abbreviated: {\n 1: \"Jan\",\n 10: \"Oct\",\n 11: \"Nov\",\n 12: \"Dec\",\n 2: \"Feb\",\n 3: \"Mar\",\n 4: \"Apr\",\n 5: \"May\",\n 6: \"Jun\",\n 7: \"Jul\",\n 8: \"Aug\",\n 9: \"Sep\"\n },\n narrow: {\n 1: \"J\",\n 10: \"O\",\n 11: \"N\",\n 12: \"D\",\n 2: \"F\",\n 3: \"M\",\n 4: \"A\",\n 5: \"M\",\n 6: \"J\",\n 7: \"J\",\n 8: \"A\",\n 9: \"S\"\n },\n wide: {\n 1: \"January\",\n 10: \"October\",\n 11: \"November\",\n 12: \"December\",\n 2: \"February\",\n 3: \"March\",\n 4: \"April\",\n 5: \"May\",\n 6: \"June\",\n 7: \"July\",\n 8: \"August\",\n 9: \"September\"\n }\n },\n \"stand-alone\": {\n abbreviated: {\n 1: \"Jan\",\n 10: \"Oct\",\n 11: \"Nov\",\n 12: \"Dec\",\n 2: \"Feb\",\n 3: \"Mar\",\n 4: \"Apr\",\n 5: \"May\",\n 6: \"Jun\",\n 7: \"Jul\",\n 8: \"Aug\",\n 9: \"Sep\"\n },\n narrow: {\n 1: \"J\",\n 10: \"O\",\n 11: \"N\",\n 12: \"D\",\n 2: \"F\",\n 3: \"M\",\n 4: \"A\",\n 5: \"M\",\n 6: \"J\",\n 7: \"J\",\n 8: \"A\",\n 9: \"S\"\n },\n wide: {\n 1: \"January\",\n 10: \"October\",\n 11: \"November\",\n 12: \"December\",\n 2: \"February\",\n 3: \"March\",\n 4: \"April\",\n 5: \"May\",\n 6: \"June\",\n 7: \"July\",\n 8: \"August\",\n 9: \"September\"\n }\n }\n },\n periods: {\n format: {\n abbreviated: null,\n narrow: {\n am: \"a\",\n noon: \"n\",\n pm: \"p\"\n },\n wide: {\n am: \"a.m.\",\n noon: \"noon\",\n pm: \"p.m.\"\n }\n },\n \"stand-alone\": {\n }\n },\n quarters: {\n format: {\n abbreviated: {\n 1: \"Q1\",\n 2: \"Q2\",\n 3: \"Q3\",\n 4: \"Q4\"\n },\n narrow: {\n 1: 1,\n 2: 2,\n 3: 3,\n 4: 4\n },\n wide: {\n 1: \"1st quarter\",\n 2: \"2nd quarter\",\n 3: \"3rd quarter\",\n 4: \"4th quarter\"\n }\n },\n \"stand-alone\": {\n abbreviated: {\n 1: \"Q1\",\n 2: \"Q2\",\n 3: \"Q3\",\n 4: \"Q4\"\n },\n narrow: {\n 1: 1,\n 2: 2,\n 3: 3,\n 4: 4\n },\n wide: {\n 1: \"1st quarter\",\n 2: \"2nd quarter\",\n 3: \"3rd quarter\",\n 4: \"4th quarter\"\n }\n }\n }\n }, a.months = function(a) {\n var b, c, d, e;\n ((((a == null)) && (a = {\n }))), d = this.get_root(\"months\", a), c = [];\n {\n var fin85keys = ((window.top.JSBNG_Replay.forInKeys)((d))), fin85i = (0);\n (0);\n for (; (fin85i < fin85keys.length); (fin85i++)) {\n ((b) = (fin85keys[fin85i]));\n {\n e = d[b], c[((parseInt(b) - 1))] = e;\n ;\n };\n };\n };\n ;\n return c;\n }, a.weekdays = function(a) {\n return ((((a == null)) && (a = {\n }))), this.get_root(\"days\", a);\n }, a.get_root = function(a, b) {\n var c, d, e, f;\n return ((((b == null)) && (b = {\n }))), e = this.calendar[a], d = ((b.names_form || \"wide\")), c = ((b.format || ((((((((e != null)) ? (((((f = e[\"stand-alone\"]) != null)) ? f[d] : void 0)) : void 0)) != null)) ? \"stand-alone\" : \"format\")))), e[c][d];\n }, a;\n }(), d = ((((((typeof exports != \"undefined\")) && ((exports !== null)))) ? exports : (this.TwitterCldr = {\n }, this.TwitterCldr)));\n {\n var fin86keys = ((window.top.JSBNG_Replay.forInKeys)((a))), fin86i = (0);\n (0);\n for (; (fin86i < fin86keys.length); (fin86i++)) {\n ((b) = (fin86keys[fin86i]));\n {\n c = a[b], d[b] = c;\n ;\n };\n };\n };\n ;\n }).call(this);\n});");
// 14004
cb(); return null; }
finalize(); })();