blob: e3f3643b71680914afa298dee56b11046408f68c [file] [log] [blame]
/* 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(); })();